updated assets, regen refs (#18466)

* updated assets, regenerated refs

* update version checks

* rebuilt api ref, versioning updates
This commit is contained in:
Karen Bradshaw
2020-01-06 19:50:18 -05:00
committed by Kubernetes Prow Robot
parent 32fe4b4d81
commit 59a42b1165
10 changed files with 371 additions and 260 deletions
+72 -44
View File
@@ -1,11 +1,27 @@
WEBROOT=${K8S_WEBROOT}
K8SROOT=${K8S_ROOT}
MINOR_VERSION=${K8S_RELEASE}
K8SRELEASE=${K8S_RELEASE}
APISRC=gen-apidocs/generators
APIDST=$(WEBROOT)/static/docs/reference/generated/kubernetes-api/v1.$(MINOR_VERSION)
APISRCFONT=$(APISRC)/build/node_modules/font-awesome
APIDSTFONT=$(APIDST)/node_modules/font-awesome
# change <major>.<minor> to <major>_<minor>
getversion:
echo $(K8SRELEASE) | sed "s/\./_/g" > b.tmp
K8SVERDIR=$(shell cat b.tmp)
sepversion: getversion
echo $(K8SVERDIR) | sed "s/[0-9]_//g" > minor.tmp
echo $(K8SVERDIR) | sed "s/_[0-9]*//g" > major.tmp
MINOR_VERSION := $(shell cat minor.tmp)
MAJOR_VERSION := $(shell cat major.tmp)
ONE := 1
PREV_MINOR_VERSION := $(shell echo $$(( $(MINOR_VERSION) - $(ONE) )))
cleantmp:
rm minor.tmp; rm major.tmp; rm b.tmp
APISRC=gen-apidocs
APIDST=$(WEBROOT)/static/docs/reference/generated/kubernetes-api/v$(K8SRELEASE)
CLISRC=gen-kubectldocs/generators/build
CLIDST=$(WEBROOT)/static/docs/reference/generated/kubectl
@@ -13,7 +29,41 @@ CLISRCFONT=$(CLISRC)/node_modules/font-awesome
CLIDSTFONT=$(CLIDST)/node_modules/font-awesome
default:
@echo "Support commands:\ncli api comp copycli copyapi copycomp updateapispec"
@echo "Support commands:\ncli api comp copycli copyapi updateapispec"
# Set up versioned directories for new release
# kubectl-command static-includes, toc.yaml
createkubectldir: sepversion
@echo version $(K8SVERDIR)
mkdir -p $(shell pwd)/gen-kubectldocs/generators/v$(K8SVERDIR)
if ! [ -f "$(shell pwd)/gen-kubectldocs/generators/v1_$(PREV_MINOR_VERSION)/config.yaml" ]; then \
cp -r $(shell pwd)/gen-kubectldocs/generators/v1_15/* $(shell pwd)/gen-kubectldocs/generators/v$(K8SVERDIR)/; \
else \
cp -r $(shell pwd)/gen-kubectldocs/generators/v1_$(PREV_MINOR_VERSION)/* $(shell pwd)/gen-kubectldocs/generators/v$(K8SVERDIR)/; \
fi
# api-ref versioned dir, swagger.json, config.yaml
createapidir: sepversion
@echo version $(K8SVERDIR)
mkdir -p $(shell pwd)/gen-apidocs/config/v$(K8SVERDIR)
# config.yaml
if ! [ -f "$(APISRC)/config/v1_$(MINOR_VERSION)/config.yaml" ]; then \
if [ -f "$(shell pwd)/gen-apidocs/config/v1_$(PREV_MINOR_VERSION)/config.yaml" ]; then \
cp $(shell pwd)/gen-apidocs/config/v1_$(PREV_MINOR_VERSION)/config.yaml $(APISRC)/config/v1_$(MINOR_VERSION)/config.yaml; \
echo "Using config file: $(shell pwd)/gen-apidocs/config/v1_$(PREV_MINOR_VERSION)/config.yaml"; \
else \
cp $(APISRC)/config/config.yaml $(APISRC)/config/v1_$(MINOR_VERSION)/config.yaml; \
fi \
fi
# swagger.json
if ! [ -f "$(APISRC)/config/v1_$(MINOR_VERSION)/swagger.json" ]; then \
cp $(K8SROOT)/api/openapi-spec/swagger.json $(APISRC)/config/v1_$(MINOR_VERSION)/swagger.json; \
fi
# copy versioned files to the base config dir before generating api ref
stageapifiles: createapidir
cp $(APISRC)/config/v1_$(MINOR_VERSION)/config.yaml $(APISRC)/config/config.yaml
cp $(APISRC)/config/v1_$(MINOR_VERSION)/swagger.json $(APISRC)/config/swagger.json
# Build kubectl docs
cleancli:
@@ -22,9 +72,7 @@ cleancli:
sudo rm -rf $(shell pwd)/gen-kubectldocs/generators/build
sudo rm -rf $(shell pwd)/gen-kubectldocs/generators/manifest.json
cli: cleancli
mkdir -p $(shell pwd)/gen-kubectldocs/generators/v1_$(MINOR_VERSION)
cp -r $(shell pwd)/gen-kubectldocs/generators/v1_15/* $(shell pwd)/gen-kubectldocs/generators/v1_$(MINOR_VERSION)
cli: createkubectldir cleancli
go run gen-kubectldocs/main.go --kubernetes-version v1_$(MINOR_VERSION)
docker run -v $(shell pwd)/gen-kubectldocs/generators/includes:/source -v $(shell pwd)/gen-kubectldocs/generators/build:/build -v $(shell pwd)/gen-kubectldocs/generators/:/manifest pwittrock/brodocs
@@ -40,7 +88,7 @@ copycli: cli
cp $(CLISRC)/node_modules/jquery/dist/jquery.min.js $(CLIDST)/node_modules/jquery/dist/jquery.min.js
cp $(CLISRCFONT)/css/font-awesome.min.css $(CLIDSTFONT)/css/font-awesome.min.css
# Build kube component docs
# Build kube component,tool docs
cleancomp:
rm -rf $(shell pwd)/gen-compdocs/build
@@ -55,46 +103,26 @@ comp: cleancomp
go run gen-compdocs/main.go gen-compdocs/build kubeadm
go run gen-compdocs/main.go gen-compdocs/build kubectl
copycomp:
cp $(shell pwd)/gen-compdocs/build/* $(WEBROOT)/docs/reference/generated/
# Build api docs
updateapispec:
cp $(K8SROOT)/api/openapi-spec/swagger.json gen-apidocs/generators/openapi-spec/swagger.json
cp $(K8SROOT)/api/openapi-spec/swagger.json gen-apidocs/config/swagger.json
api: cleanapi
go run gen-apidocs/main.go --config-dir=gen-apidocs/generators --munge-groups=false
api: cleanapi stageapifiles
go run gen-apidocs/main.go --work-dir=gen-apidocs --munge-groups=false
# NOTE: The following "sudo" may go away when we remove docker based api doc generator
cleanapi:
sudo rm -rf $(shell pwd)/gen-apidocs/generators/build
sudo rm -rf $(shell pwd)/gen-apidocs/generators/includes
rm -rf $(shell pwd)/gen-apidocs/build
copyapi:
copyapi: api
mkdir -p $(APIDST)
cp $(APISRC)/build/index.html $(APIDST)/index.html
cp $(APISRC)/build/navData.js $(APIDST)/navData.js
cp $(APISRC)/static/scroll.js $(APIDST)/scroll.js
# copy scroll.js, jquery.scrollTo.min.js and the new navData.js
mkdir -p $(APIDST)/js
cp $(APISRC)/build/navData.js $(APIDST)/js/
cp $(APISRC)/static/js/* $(APIDST)/js/
# copy stylesheet.css, bootstrap.min.css, font-awesome.min.css
mkdir -p $(APIDST)/css
cp $(APISRC)/static/stylesheet.css $(APIDST)/css/stylesheet.css
cp $(APISRC)/static/bootstrap.min.css $(APIDST)/css/bootstrap.min.css
cp $(APISRC)/static/jquery.scrollTo.min.js $(APIDST)/jquery.scrollTo.min.js
cp $(APISRC)/static/font-awesome.min.css $(APIDST)/css/font-awesome.min.css
cp $(APISRC)/static/css/* $(APIDST)/css/
# copy fonts data
mkdir -p $(APIDST)/fonts
cp $(APISRC)/static/FontAwesome.otf $(APIDST)/fonts/FontAwesome.otf
cp $(APISRC)/static/fontawesome-webfont.eot $(APIDST)/fonts/fontawesome-webfont.eot
cp $(APISRC)/static/fontawesome-webfont.svg $(APIDST)/fonts/fontawesome-webfont.svg
cp $(APISRC)/static/fontawesome-webfont.ttf $(APIDST)/fonts/fontawesome-webfont.ttf
cp $(APISRC)/static/fontawesome-webfont.woff $(APIDST)/fonts/fontawesome-webfont.woff
cp $(APISRC)/static/fontawesome-webfont.woff2 $(APIDST)/fonts/fontawesome-webfont.woff2
# Build resource docs
resource: cleanapi
go run gen-apidocs/main.go --build-operations=false --munge-groups=false --config-dir=gen-apidocs/generators
docker run -v $(shell pwd)/gen-apidocs/generators/includes:/source -v $(shell pwd)/gen-apidocs/generators/build:/build -v $(shell pwd)/gen-apidocs/generators/:/manifest pwittrock/brodocs
copyresource: resource
rm -rf gen-apidocs/generators/build/documents/
rm -rf gen-apidocs/generators/build/runbrodocs.sh
rm -rf gen-apidocs/generators/build/manifest.json
rm -rf $(WEBROOT)/docs/resources-reference/v1.$(MINOR_VERSION)/*
cp -r gen-apidocs/generators/build/* $(WEBROOT)/docs/resources-reference/v1.$(MINOR_VERSION)/
cp $(APISRC)/static/fonts/* $(APIDST)/fonts/
+9 -2
View File
@@ -1,5 +1,12 @@
# Update imported docs
### Update Kubernetes reference docs
This tool updates the reference docs generated from the Kubernetes repository.
This `update-imported-docs.py` script generates the Kubernetes reference docs (component/tool pages, kubectl-command, Kubernetes API reference).
<!-- TODO: Update this information -->
[Generating Reference Pages for Kubernetes Components and Tools](https://kubernetes.io/docs/contribute/generate-ref-docs/kubernetes-components/) contains detailed instructions for using this tool.
### General Usage
```shell
python3 update-imported-docs.py <config_file> <k8s_release>
```
+4 -5
View File
@@ -8,7 +8,7 @@ repos:
cd $GOPATH
git clone https://github.com/kubernetes/kubernetes.git src/k8s.io/kubernetes
cd src/k8s.io/kubernetes
git checkout release-1.${K8S_RELEASE}
git checkout release-${K8S_RELEASE}
make generated_files
cp -L -R vendor $GOPATH/src
rm -r vendor/github.com/spf13/cobra
@@ -22,6 +22,8 @@ repos:
go get -v github.com/kubernetes-sigs/reference-docs/gen-kubectldocs
cd src/github.com/kubernetes-sigs/reference-docs/
cp ${K8S_WEBROOT}/update-imported-docs/Makefile_temp ./Makefile
# testing
make sepversion
# generate kubectl cmd reference
make copycli
#
@@ -32,11 +34,8 @@ repos:
go get -u github.com/go-openapi/spec
go get -v github.com/kubernetes-sigs/reference-docs/gen-apidocs
cd src/github.com/kubernetes-sigs/reference-docs/
make updateapispec
make api
make copyapi
files:
- src: gen-compdocs/build/cloud-controller-manager.md
dst: content/en/docs/reference/command-line-tools-reference/
@@ -46,7 +45,7 @@ repos:
dst: content/en/docs/reference/command-line-tools-reference/
# We have problems generating docs for kubelet, it is done manually now
# - src: gen-compdocs/build/kubelet.md
# dst: content/en/docs/reference/command-line-tools-reference/
# dst: content/en/docs/reference/command-line-tools-reference/
- src: gen-compdocs/build/kube-proxy.md
dst: content/en/docs/reference/command-line-tools-reference/
- src: gen-compdocs/build/kube-scheduler.md
+3 -4
View File
@@ -22,7 +22,7 @@
# Config files:
# reference.yml use this to update the reference docs
# release.yml use this to auto-generate/import release notes
# K8S_RELEASE: provide the minor release version such as, 17
# K8S_RELEASE: provide the release version such as, 1.17
##
import argparse
@@ -157,8 +157,7 @@ def parse_input_args():
Parse command line argument
'config_file' is the first argument; it should be one of the YAML
files in this same directory
'k8s_release' is the second argument; provide the release minor
version
'k8s_release' is the second argument; provide the release version
:return: parsed argument
"""
parser = argparse.ArgumentParser()
@@ -166,7 +165,7 @@ def parse_input_args():
help="reference.yml to generate reference docs; "
"release.yml to generate release notes")
parser.add_argument('k8s_release', type=str,
help="k8s release minor version, ex: 17"
help="k8s release version, ex: 1.17"
)
return parser.parse_args()