diff --git a/static/docs/reference/generated/kubectl/navData.js b/static/docs/reference/generated/kubectl/navData.js
index ef5fac86de..ba025ba968 100644
--- a/static/docs/reference/generated/kubectl/navData.js
+++ b/static/docs/reference/generated/kubectl/navData.js
@@ -1 +1 @@
-(function(){navData = {"toc":[{"section":"rolling-update","subsections":[]},{"section":"-strong-deprecated-commands-strong-","subsections":[]},{"section":"version","subsections":[]},{"section":"plugin","subsections":[{"section":"-em-list-em-"}]},{"section":"options","subsections":[]},{"section":"kustomize","subsections":[]},{"section":"explain","subsections":[]},{"section":"config","subsections":[{"section":"-em-view-em-"},{"section":"-em-use-context-em-"},{"section":"-em-unset-em-"},{"section":"-em-set-credentials-em-"},{"section":"-em-set-context-em-"},{"section":"-em-set-cluster-em-"},{"section":"-em-set-em-"},{"section":"-em-rename-context-em-"},{"section":"-em-get-contexts-em-"},{"section":"-em-get-clusters-em-"},{"section":"-em-delete-context-em-"},{"section":"-em-delete-cluster-em-"},{"section":"-em-current-context-em-"}]},{"section":"completion","subsections":[]},{"section":"api-resources","subsections":[]},{"section":"alpha","subsections":[]},{"section":"-strong-kubectl-settings-and-usage-strong-","subsections":[]},{"section":"uncordon","subsections":[]},{"section":"taint","subsections":[]},{"section":"drain","subsections":[]},{"section":"cordon","subsections":[]},{"section":"cluster-info","subsections":[{"section":"-em-dump-em-"}]},{"section":"certificate","subsections":[{"section":"-em-deny-em-"},{"section":"-em-approve-em-"}]},{"section":"api-versions","subsections":[]},{"section":"-strong-cluster-management-strong-","subsections":[]},{"section":"top","subsections":[{"section":"-em-pod-em-"},{"section":"-em-node-em-"}]},{"section":"proxy","subsections":[]},{"section":"port-forward","subsections":[]},{"section":"logs","subsections":[]},{"section":"exec","subsections":[]},{"section":"describe","subsections":[]},{"section":"cp","subsections":[]},{"section":"auth","subsections":[{"section":"-em-reconcile-em-"},{"section":"-em-can-i-em-"}]},{"section":"attach","subsections":[]},{"section":"-strong-working-with-apps-strong-","subsections":[]},{"section":"wait","subsections":[]},{"section":"set","subsections":[{"section":"-em-subject-em-"},{"section":"-em-serviceaccount-em--1"},{"section":"-em-selector-em-"},{"section":"-em-resources-em-"},{"section":"-em-image-em-"},{"section":"-em-env-em-"}]},{"section":"scale","subsections":[]},{"section":"rollout","subsections":[{"section":"-em-undo-em-"},{"section":"-em-status-em-"},{"section":"-em-resume-em-"},{"section":"-em-restart-em-"},{"section":"-em-pause-em-"},{"section":"-em-history-em-"}]},{"section":"replace","subsections":[]},{"section":"patch","subsections":[]},{"section":"label","subsections":[]},{"section":"edit","subsections":[]},{"section":"diff","subsections":[]},{"section":"convert","subsections":[]},{"section":"autoscale","subsections":[]},{"section":"annotate","subsections":[]},{"section":"apply","subsections":[{"section":"-em-view-last-applied-em-"},{"section":"-em-set-last-applied-em-"},{"section":"-em-edit-last-applied-em-"}]},{"section":"-strong-app-management-strong-","subsections":[]},{"section":"delete","subsections":[]},{"section":"expose","subsections":[]},{"section":"run","subsections":[]},{"section":"get","subsections":[]},{"section":"create","subsections":[{"section":"-em-serviceaccount-em-"},{"section":"-em-service-nodeport-em-"},{"section":"-em-service-loadbalancer-em-"},{"section":"-em-service-externalname-em-"},{"section":"-em-service-clusterip-em-"},{"section":"-em-service-em-"},{"section":"-em-secret-tls-em-"},{"section":"-em-secret-generic-em-"},{"section":"-em-secret-docker-registry-em-"},{"section":"-em-secret-em-"},{"section":"-em-rolebinding-em-"},{"section":"-em-role-em-"},{"section":"-em-quota-em-"},{"section":"-em-priorityclass-em-"},{"section":"-em-poddisruptionbudget-em-"},{"section":"-em-namespace-em-"},{"section":"-em-job-em-"},{"section":"-em-deployment-em-"},{"section":"-em-cronjob-em-"},{"section":"-em-configmap-em-"},{"section":"-em-clusterrolebinding-em-"},{"section":"-em-clusterrole-em-"}]},{"section":"-strong-getting-started-strong-","subsections":[]}],"flatToc":["rolling-update","-strong-deprecated-commands-strong-","version","-em-list-em-","plugin","options","kustomize","explain","-em-view-em-","-em-use-context-em-","-em-unset-em-","-em-set-credentials-em-","-em-set-context-em-","-em-set-cluster-em-","-em-set-em-","-em-rename-context-em-","-em-get-contexts-em-","-em-get-clusters-em-","-em-delete-context-em-","-em-delete-cluster-em-","-em-current-context-em-","config","completion","api-resources","alpha","-strong-kubectl-settings-and-usage-strong-","uncordon","taint","drain","cordon","-em-dump-em-","cluster-info","-em-deny-em-","-em-approve-em-","certificate","api-versions","-strong-cluster-management-strong-","-em-pod-em-","-em-node-em-","top","proxy","port-forward","logs","exec","describe","cp","-em-reconcile-em-","-em-can-i-em-","auth","attach","-strong-working-with-apps-strong-","wait","-em-subject-em-","-em-serviceaccount-em--1","-em-selector-em-","-em-resources-em-","-em-image-em-","-em-env-em-","set","scale","-em-undo-em-","-em-status-em-","-em-resume-em-","-em-restart-em-","-em-pause-em-","-em-history-em-","rollout","replace","patch","label","edit","diff","convert","autoscale","annotate","-em-view-last-applied-em-","-em-set-last-applied-em-","-em-edit-last-applied-em-","apply","-strong-app-management-strong-","delete","expose","run","get","-em-serviceaccount-em-","-em-service-nodeport-em-","-em-service-loadbalancer-em-","-em-service-externalname-em-","-em-service-clusterip-em-","-em-service-em-","-em-secret-tls-em-","-em-secret-generic-em-","-em-secret-docker-registry-em-","-em-secret-em-","-em-rolebinding-em-","-em-role-em-","-em-quota-em-","-em-priorityclass-em-","-em-poddisruptionbudget-em-","-em-namespace-em-","-em-job-em-","-em-deployment-em-","-em-cronjob-em-","-em-configmap-em-","-em-clusterrolebinding-em-","-em-clusterrole-em-","create","-strong-getting-started-strong-"]};})();
\ No newline at end of file
+(function(){navData = {"toc":[{"section":"rolling-update","subsections":[]},{"section":"-strong-deprecated-commands-strong-","subsections":[]},{"section":"version","subsections":[]},{"section":"plugin","subsections":[{"section":"-em-list-em-"}]},{"section":"options","subsections":[]},{"section":"explain","subsections":[]},{"section":"config","subsections":[{"section":"-em-view-em-"},{"section":"-em-use-context-em-"},{"section":"-em-unset-em-"},{"section":"-em-set-credentials-em-"},{"section":"-em-set-context-em-"},{"section":"-em-set-cluster-em-"},{"section":"-em-set-em-"},{"section":"-em-rename-context-em-"},{"section":"-em-get-contexts-em-"},{"section":"-em-get-clusters-em-"},{"section":"-em-delete-context-em-"},{"section":"-em-delete-cluster-em-"},{"section":"-em-current-context-em-"}]},{"section":"completion","subsections":[]},{"section":"api-resources","subsections":[]},{"section":"alpha","subsections":[]},{"section":"-strong-kubectl-settings-and-usage-strong-","subsections":[]},{"section":"uncordon","subsections":[]},{"section":"taint","subsections":[]},{"section":"drain","subsections":[]},{"section":"cordon","subsections":[]},{"section":"cluster-info","subsections":[{"section":"-em-dump-em-"}]},{"section":"certificate","subsections":[{"section":"-em-deny-em-"},{"section":"-em-approve-em-"}]},{"section":"api-versions","subsections":[]},{"section":"-strong-cluster-management-strong-","subsections":[]},{"section":"top","subsections":[{"section":"-em-pod-em-"},{"section":"-em-node-em-"}]},{"section":"proxy","subsections":[]},{"section":"port-forward","subsections":[]},{"section":"logs","subsections":[]},{"section":"exec","subsections":[]},{"section":"describe","subsections":[]},{"section":"cp","subsections":[]},{"section":"auth","subsections":[{"section":"-em-reconcile-em-"},{"section":"-em-can-i-em-"}]},{"section":"attach","subsections":[]},{"section":"-strong-working-with-apps-strong-","subsections":[]},{"section":"wait","subsections":[]},{"section":"set","subsections":[{"section":"-em-subject-em-"},{"section":"-em-serviceaccount-em--1"},{"section":"-em-selector-em-"},{"section":"-em-resources-em-"},{"section":"-em-image-em-"},{"section":"-em-env-em-"}]},{"section":"scale","subsections":[]},{"section":"rollout","subsections":[{"section":"-em-undo-em-"},{"section":"-em-status-em-"},{"section":"-em-resume-em-"},{"section":"-em-restart-em-"},{"section":"-em-pause-em-"},{"section":"-em-history-em-"}]},{"section":"replace","subsections":[]},{"section":"patch","subsections":[]},{"section":"label","subsections":[]},{"section":"kustomize","subsections":[]},{"section":"edit","subsections":[]},{"section":"diff","subsections":[]},{"section":"convert","subsections":[]},{"section":"autoscale","subsections":[]},{"section":"annotate","subsections":[]},{"section":"apply","subsections":[{"section":"-em-view-last-applied-em-"},{"section":"-em-set-last-applied-em-"},{"section":"-em-edit-last-applied-em-"}]},{"section":"-strong-app-management-strong-","subsections":[]},{"section":"delete","subsections":[]},{"section":"expose","subsections":[]},{"section":"run","subsections":[]},{"section":"get","subsections":[]},{"section":"create","subsections":[{"section":"-em-serviceaccount-em-"},{"section":"-em-service-nodeport-em-"},{"section":"-em-service-loadbalancer-em-"},{"section":"-em-service-externalname-em-"},{"section":"-em-service-clusterip-em-"},{"section":"-em-service-em-"},{"section":"-em-secret-tls-em-"},{"section":"-em-secret-generic-em-"},{"section":"-em-secret-docker-registry-em-"},{"section":"-em-secret-em-"},{"section":"-em-rolebinding-em-"},{"section":"-em-role-em-"},{"section":"-em-quota-em-"},{"section":"-em-priorityclass-em-"},{"section":"-em-poddisruptionbudget-em-"},{"section":"-em-namespace-em-"},{"section":"-em-job-em-"},{"section":"-em-deployment-em-"},{"section":"-em-cronjob-em-"},{"section":"-em-configmap-em-"},{"section":"-em-clusterrolebinding-em-"},{"section":"-em-clusterrole-em-"}]},{"section":"-strong-getting-started-strong-","subsections":[]}],"flatToc":["rolling-update","-strong-deprecated-commands-strong-","version","-em-list-em-","plugin","options","explain","-em-view-em-","-em-use-context-em-","-em-unset-em-","-em-set-credentials-em-","-em-set-context-em-","-em-set-cluster-em-","-em-set-em-","-em-rename-context-em-","-em-get-contexts-em-","-em-get-clusters-em-","-em-delete-context-em-","-em-delete-cluster-em-","-em-current-context-em-","config","completion","api-resources","alpha","-strong-kubectl-settings-and-usage-strong-","uncordon","taint","drain","cordon","-em-dump-em-","cluster-info","-em-deny-em-","-em-approve-em-","certificate","api-versions","-strong-cluster-management-strong-","-em-pod-em-","-em-node-em-","top","proxy","port-forward","logs","exec","describe","cp","-em-reconcile-em-","-em-can-i-em-","auth","attach","-strong-working-with-apps-strong-","wait","-em-subject-em-","-em-serviceaccount-em--1","-em-selector-em-","-em-resources-em-","-em-image-em-","-em-env-em-","set","scale","-em-undo-em-","-em-status-em-","-em-resume-em-","-em-restart-em-","-em-pause-em-","-em-history-em-","rollout","replace","patch","label","kustomize","edit","diff","convert","autoscale","annotate","-em-view-last-applied-em-","-em-set-last-applied-em-","-em-edit-last-applied-em-","apply","-strong-app-management-strong-","delete","expose","run","get","-em-serviceaccount-em-","-em-service-nodeport-em-","-em-service-loadbalancer-em-","-em-service-externalname-em-","-em-service-clusterip-em-","-em-service-em-","-em-secret-tls-em-","-em-secret-generic-em-","-em-secret-docker-registry-em-","-em-secret-em-","-em-rolebinding-em-","-em-role-em-","-em-quota-em-","-em-priorityclass-em-","-em-poddisruptionbudget-em-","-em-namespace-em-","-em-job-em-","-em-deployment-em-","-em-cronjob-em-","-em-configmap-em-","-em-clusterrolebinding-em-","-em-clusterrole-em-","create","-strong-getting-started-strong-"]};})();
\ No newline at end of file
diff --git a/static/docs/reference/generated/kubernetes-api/v1.17/index.html b/static/docs/reference/generated/kubernetes-api/v1.17/index.html
index e3888d9ca9..c033496420 100644
--- a/static/docs/reference/generated/kubernetes-api/v1.17/index.html
+++ b/static/docs/reference/generated/kubernetes-api/v1.17/index.html
@@ -3889,8 +3889,8 @@
Copyright 2016-2020 The Kubernetes Authors.
-
Generated at: 2020-01-06 18:11:33 (EST)
-
+
Generated at: 2020-01-16 09:07:15 (EST)
+
API OVERVIEW
@@ -6146,8 +6146,8 @@ deployment "deployment-example" replaced
Delete
@@ -6235,8 +6235,8 @@ deployment "deployment-example" deleted
Delete Collection
@@ -7631,9 +7631,9 @@ job "example-job" created
Code | Description |
-202 Job | Accepted |
200 Job | OK |
201 Job | Created |
+202 Job | Accepted |
Patch
@@ -7704,8 +7704,8 @@ job "example-job" created
Code | Description |
-201 Job | Created |
200 Job | OK |
+201 Job | Created |
Delete
@@ -8812,9 +8812,9 @@ spec:
Patch
@@ -10454,9 +10454,9 @@ spec:
Patch
@@ -11172,8 +11172,8 @@ spec:
Delete
@@ -11714,9 +11714,9 @@ Workloads can be accessed via proxy through the api master using the kubec
Patch
@@ -12549,9 +12549,9 @@ Workloads can be accessed via proxy through the api master using the kubec
Patch
@@ -12622,8 +12622,8 @@ Workloads can be accessed via proxy through the api master using the kubec
Delete
@@ -12660,8 +12660,8 @@ Workloads can be accessed via proxy through the api master using the kubec
Delete Collection
@@ -12984,8 +12984,8 @@ Workloads can be accessed via proxy through the api master using the kubec
Service v1 core
@@ -13512,8 +13512,8 @@ service "deployment-example" replaced
Delete
@@ -16067,8 +16067,8 @@ $ curl -X GET 'http://127.0.0.1:8001/api/v1/watch/namespaces/default/services/de
Delete
@@ -16498,9 +16498,9 @@ $ curl -X GET 'http://127.0.0.1:8001/api/v1/watch/namespaces/default/services/de
Patch
@@ -16569,8 +16569,8 @@ $ curl -X GET 'http://127.0.0.1:8001/api/v1/watch/namespaces/default/services/de
Delete
@@ -17334,9 +17334,9 @@ $ curl -X GET 'http://127.0.0.1:8001/api/v1/watch/namespaces/default/services/de
Patch
@@ -17407,8 +17407,8 @@ $ curl -X GET 'http://127.0.0.1:8001/api/v1/watch/namespaces/default/services/de
Delete
@@ -17765,9 +17765,9 @@ $ curl -X GET 'http://127.0.0.1:8001/api/v1/watch/namespaces/default/services/de
Patch
@@ -18202,9 +18202,9 @@ $ curl -X GET 'http://127.0.0.1:8001/api/v1/watch/namespaces/default/services/de
Patch
@@ -18617,9 +18617,9 @@ $ curl -X GET 'http://127.0.0.1:8001/api/v1/watch/namespaces/default/services/de
Patch
@@ -19056,9 +19056,9 @@ $ curl -X GET 'http://127.0.0.1:8001/api/v1/watch/namespaces/default/services/de
Patch
@@ -20228,9 +20228,9 @@ $ curl -X GET 'http://127.0.0.1:8001/api/v1/watch/namespaces/default/services/de
Patch
@@ -22403,8 +22403,8 @@ $ curl -X GET 'http://127.0.0.1:8001/api/v1/watch/namespaces/default/services/de
Delete Collection
@@ -22649,8 +22649,8 @@ $ curl -X GET 'http://127.0.0.1:8001/api/v1/watch/namespaces/default/services/de
AuditSink v1alpha1 auditregistration.k8s.io
@@ -23032,9 +23032,9 @@ $ curl -X GET 'http://127.0.0.1:8001/api/v1/watch/namespaces/default/services/de
CertificateSigningRequest v1beta1 certificates.k8s.io
@@ -23124,9 +23124,9 @@ $ curl -X GET 'http://127.0.0.1:8001/api/v1/watch/namespaces/default/services/de
Patch
@@ -23478,8 +23478,8 @@ $ curl -X GET 'http://127.0.0.1:8001/api/v1/watch/namespaces/default/services/de
ClusterRole v1 rbac.authorization.k8s.io
@@ -23543,9 +23543,9 @@ $ curl -X GET 'http://127.0.0.1:8001/api/v1/watch/namespaces/default/services/de
Patch
@@ -23864,9 +23864,9 @@ $ curl -X GET 'http://127.0.0.1:8001/api/v1/watch/namespaces/default/services/de
Patch
@@ -23972,8 +23972,8 @@ $ curl -X GET 'http://127.0.0.1:8001/api/v1/watch/namespaces/default/services/de
Delete Collection
@@ -24291,9 +24291,9 @@ $ curl -X GET 'http://127.0.0.1:8001/api/v1/watch/namespaces/default/services/de
Patch
@@ -25123,9 +25123,9 @@ $ curl -X GET 'http://127.0.0.1:8001/api/v1/watch/namespaces/default/services/de
Namespace v1 core
@@ -25210,9 +25210,9 @@ $ curl -X GET 'http://127.0.0.1:8001/api/v1/watch/namespaces/default/services/de
Patch
@@ -25628,9 +25628,9 @@ $ curl -X GET 'http://127.0.0.1:8001/api/v1/watch/namespaces/default/services/de
Patch
@@ -26358,9 +26358,9 @@ $ curl -X GET 'http://127.0.0.1:8001/api/v1/watch/namespaces/default/services/de
Patch
@@ -27247,9 +27247,9 @@ $ curl -X GET 'http://127.0.0.1:8001/api/v1/watch/namespaces/default/services/de
Patch
@@ -27358,8 +27358,8 @@ $ curl -X GET 'http://127.0.0.1:8001/api/v1/watch/namespaces/default/services/de
Delete Collection
@@ -28232,8 +28232,8 @@ $ curl -X GET 'http://127.0.0.1:8001/api/v1/watch/namespaces/default/services/de
Delete
@@ -28270,8 +28270,8 @@ $ curl -X GET 'http://127.0.0.1:8001/api/v1/watch/namespaces/default/services/de
Delete Collection
@@ -28558,9 +28558,9 @@ $ curl -X GET 'http://127.0.0.1:8001/api/v1/watch/namespaces/default/services/de
Patch
@@ -28878,9 +28878,9 @@ $ curl -X GET 'http://127.0.0.1:8001/api/v1/watch/namespaces/default/services/de
SelfSubjectRulesReview v1 authorization.k8s.io
@@ -29010,9 +29010,9 @@ $ curl -X GET 'http://127.0.0.1:8001/api/v1/watch/namespaces/default/services/de
Patch
@@ -37806,9 +37806,9 @@ The contents of the target Secret's Data field will be presented in a volume
Patch
@@ -37877,8 +37877,8 @@ The contents of the target Secret's Data field will be presented in a volume
Delete
@@ -38127,9 +38127,9 @@ The contents of the target Secret's Data field will be presented in a volume
Patch
@@ -38235,8 +38235,8 @@ The contents of the target Secret's Data field will be presented in a volume
Delete Collection
@@ -39301,9 +39301,9 @@ The contents of the target Secret's Data field will be presented in a volume
Patch
@@ -39412,8 +39412,8 @@ The contents of the target Secret's Data field will be presented in a volume
Delete Collection
@@ -40727,9 +40727,9 @@ daemonset "daemonset-example" created
Patch
@@ -40800,8 +40800,8 @@ daemonset "daemonset-example" created
Delete
@@ -41505,9 +41505,9 @@ daemonset "daemonset-example" created
Patch
@@ -42391,9 +42391,9 @@ deployment "deployment-example" created
Patch
@@ -43894,8 +43894,8 @@ $ curl -X GET 'http://127.0.0.1:8001/apis/apps/v1beta2/watch/namespaces/default/
Patch Scale
@@ -45662,8 +45662,8 @@ $ curl -X GET 'http://127.0.0.1:8001/apis/apps/v1beta1/watch/namespaces/default/
Misc Operations
@@ -46090,9 +46090,9 @@ deployment "deployment-example" created
Patch
@@ -47966,8 +47966,8 @@ $ curl -X GET 'http://127.0.0.1:8001/apis/extensions/v1beta1/watch/namespaces/de
Delete Collection
@@ -48444,9 +48444,9 @@ $ curl -X GET 'http://127.0.0.1:8001/apis/extensions/v1beta1/watch/namespaces/de
Patch
@@ -49056,8 +49056,8 @@ $ curl -X GET 'http://127.0.0.1:8001/apis/extensions/v1beta1/watch/namespaces/de
Delete
@@ -49673,8 +49673,8 @@ $ curl -X GET 'http://127.0.0.1:8001/apis/extensions/v1beta1/watch/namespaces/de
Delete
@@ -50325,9 +50325,9 @@ $ curl -X GET 'http://127.0.0.1:8001/apis/extensions/v1beta1/watch/namespaces/de
Patch
@@ -50398,8 +50398,8 @@ $ curl -X GET 'http://127.0.0.1:8001/apis/extensions/v1beta1/watch/namespaces/de
Delete
@@ -50717,9 +50717,9 @@ $ curl -X GET 'http://127.0.0.1:8001/apis/extensions/v1beta1/watch/namespaces/de
MetricSpec v2beta1 autoscaling
@@ -51843,9 +51843,9 @@ $ curl -X GET 'http://127.0.0.1:8001/apis/extensions/v1beta1/watch/namespaces/de
Patch
@@ -51951,8 +51951,8 @@ $ curl -X GET 'http://127.0.0.1:8001/apis/extensions/v1beta1/watch/namespaces/de
Delete Collection
@@ -52268,9 +52268,9 @@ $ curl -X GET 'http://127.0.0.1:8001/apis/extensions/v1beta1/watch/namespaces/de
Patch
@@ -52593,9 +52593,9 @@ $ curl -X GET 'http://127.0.0.1:8001/apis/extensions/v1beta1/watch/namespaces/de
Patch
@@ -53066,8 +53066,8 @@ $ curl -X GET 'http://127.0.0.1:8001/apis/extensions/v1beta1/watch/namespaces/de
Delete Collection
@@ -54028,8 +54028,8 @@ $ curl -X GET 'http://127.0.0.1:8001/apis/extensions/v1beta1/watch/namespaces/de
Misc Operations
@@ -54348,9 +54348,9 @@ $ curl -X GET 'http://127.0.0.1:8001/apis/extensions/v1beta1/watch/namespaces/de
Patch
@@ -55270,8 +55270,8 @@ $ curl -X GET 'http://127.0.0.1:8001/apis/extensions/v1beta1/watch/namespaces/de
Delete Collection
@@ -56224,8 +56224,8 @@ $ curl -X GET 'http://127.0.0.1:8001/apis/extensions/v1beta1/watch/namespaces/de
Delete
@@ -56674,9 +56674,9 @@ $ curl -X GET 'http://127.0.0.1:8001/apis/extensions/v1beta1/watch/namespaces/de
SelfSubjectRulesReview v1beta1 authorization.k8s.io
@@ -56736,9 +56736,9 @@ $ curl -X GET 'http://127.0.0.1:8001/apis/extensions/v1beta1/watch/namespaces/de
ServiceReference v1 apiextensions.k8s.io
@@ -57655,9 +57655,9 @@ $ curl -X GET 'http://127.0.0.1:8001/apis/extensions/v1beta1/watch/namespaces/de
Patch
@@ -58356,9 +58356,9 @@ $ curl -X GET 'http://127.0.0.1:8001/apis/extensions/v1beta1/watch/namespaces/de
Patch
@@ -58778,9 +58778,9 @@ $ curl -X GET 'http://127.0.0.1:8001/apis/extensions/v1beta1/watch/namespaces/de
SubjectRulesReviewStatus v1beta1 authorization.k8s.io
@@ -58899,9 +58899,9 @@ $ curl -X GET 'http://127.0.0.1:8001/apis/extensions/v1beta1/watch/namespaces/de
UserInfo v1beta1 authentication.k8s.io
diff --git a/update-imported-docs/Makefile_temp b/update-imported-docs/Makefile_temp
deleted file mode 100644
index da32dfd4b2..0000000000
--- a/update-imported-docs/Makefile_temp
+++ /dev/null
@@ -1,128 +0,0 @@
-WEBROOT=${K8S_WEBROOT}
-K8SROOT=${K8S_ROOT}
-K8SRELEASE=${K8S_RELEASE}
-
-# change . to _
-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
-CLISRCFONT=$(CLISRC)/node_modules/font-awesome
-CLIDSTFONT=$(CLIDST)/node_modules/font-awesome
-
-default:
- @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:
- sudo rm -f main
- sudo rm -rf $(shell pwd)/gen-kubectldocs/generators/includes
- sudo rm -rf $(shell pwd)/gen-kubectldocs/generators/build
- sudo rm -rf $(shell pwd)/gen-kubectldocs/generators/manifest.json
-
-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
-
-copycli: cli
- cp gen-kubectldocs/generators/build/index.html $(WEBROOT)/static/docs/reference/generated/kubectl/kubectl-commands.html
- cp gen-kubectldocs/generators/build/navData.js $(WEBROOT)/static/docs/reference/generated/kubectl/navData.js
- cp $(CLISRC)/scroll.js $(CLIDST)/scroll.js
- cp $(CLISRC)/stylesheet.css $(CLIDST)/stylesheet.css
- cp $(CLISRC)/tabvisibility.js $(CLIDST)/tabvisibility.js
- cp $(CLISRC)/node_modules/bootstrap/dist/css/bootstrap.min.css $(CLIDST)/node_modules/bootstrap/dist/css/bootstrap.min.css
- cp $(CLISRC)/node_modules/highlight.js/styles/default.css $(CLIDST)/node_modules/highlight.js/styles/default.css
- cp $(CLISRC)/node_modules/jquery.scrollto/jquery.scrollTo.min.js $(CLIDST)/node_modules/jquery.scrollto/jquery.scrollTo.min.js
- 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,tool docs
-cleancomp:
- rm -rf $(shell pwd)/gen-compdocs/build
-
-comp: cleancomp
- mkdir -p gen-compdocs/build
- go run gen-compdocs/main.go gen-compdocs/build kube-apiserver
- go run gen-compdocs/main.go gen-compdocs/build kube-controller-manager
- go run gen-compdocs/main.go gen-compdocs/build cloud-controller-manager
- go run gen-compdocs/main.go gen-compdocs/build kube-scheduler
- go run gen-compdocs/main.go gen-compdocs/build kubelet
- go run gen-compdocs/main.go gen-compdocs/build kube-proxy
- go run gen-compdocs/main.go gen-compdocs/build kubeadm
- go run gen-compdocs/main.go gen-compdocs/build kubectl
-
-# Build api docs
-updateapispec:
- cp $(K8SROOT)/api/openapi-spec/swagger.json gen-apidocs/config/swagger.json
-
-api: cleanapi stageapifiles
- go run gen-apidocs/main.go --work-dir=gen-apidocs --munge-groups=false
-
-cleanapi:
- rm -rf $(shell pwd)/gen-apidocs/build
-
-copyapi: api
- mkdir -p $(APIDST)
- cp $(APISRC)/build/index.html $(APIDST)/index.html
- # 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/css/* $(APIDST)/css/
- # copy fonts data
- mkdir -p $(APIDST)/fonts
- cp $(APISRC)/static/fonts/* $(APIDST)/fonts/
diff --git a/update-imported-docs/reference.yml b/update-imported-docs/reference.yml
index 9d6459983c..5e6035b6e5 100644
--- a/update-imported-docs/reference.yml
+++ b/update-imported-docs/reference.yml
@@ -8,7 +8,8 @@ repos:
cd $GOPATH
git clone https://github.com/kubernetes/kubernetes.git src/k8s.io/kubernetes
cd src/k8s.io/kubernetes
- git checkout release-${K8S_RELEASE}
+ # set the branch, ex: v1.17.0
+ git checkout v${K8S_RELEASE}.0
make generated_files
cp -L -R vendor $GOPATH/src
rm -r vendor/github.com/spf13/cobra
@@ -21,12 +22,10 @@ repos:
cd $GOPATH
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
+ # create versioned dirs if needed and fetch v${K8S_RELEASE}.0:swagger.json
+ make updateapispec
# generate kubectl cmd reference
make copycli
- #
# generate api reference
cd $GOPATH
rm -rf src/vendor
diff --git a/update-imported-docs/update-imported-docs.py b/update-imported-docs/update-imported-docs.py
index 83f4f353a3..dbbc408f4e 100755
--- a/update-imported-docs/update-imported-docs.py
+++ b/update-imported-docs/update-imported-docs.py
@@ -37,7 +37,7 @@ import tempfile
error_msgs = []
# pip should be installed when Python is installed, but just in case...
-if not shutil.which('pip'):
+if not (shutil.which('pip') or shutil.which('pip3')):
error_msgs.append("Install pip so you can install PyYAML. https://pip.pypa.io/en/stable/installing")
reqs = subprocess.check_output([sys.executable, '-m', 'pip', 'freeze'])
@@ -184,9 +184,9 @@ def main():
# second parse input argument
k8s_release = in_args.k8s_release
- print("ks8_release is {}".format(k8s_release))
+ print("k8s_release is {}".format(k8s_release))
- curr_dir = os.path.dirname(__file__)
+ curr_dir = os.path.dirname(os.path.abspath(__file__))
print("curr_dir {}".format(curr_dir))
root_dir = os.path.realpath(os.path.join(curr_dir, '..'))
print("root_dir {}".format(root_dir))