mirror of
https://github.com/kubernetes/sample-controller.git
synced 2025-01-20 16:42:51 +08:00
ac45ff67c5
Automatic merge from submit-queue (batch tested with PRs 60011, 59256, 59293, 60328, 60367). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>. Serve OpenAPI spec with single /openapi/v2 endpoint **What this PR does / why we need it**: We are deprecating format-separated endpoints (`/swagger.json`, `/swagger-2.0.0.json`, `/swagger-2.0.0.pb-v1`, `/swagger-2.0.0.pb-v1.gz`) for OpenAPI spec, and switching to a single `/openapi/v2` endpoint in Kubernetes 1.10. The design doc and deprecation process are tracked at: https://docs.google.com/document/d/19lEqE9lc4yHJ3WJAJxS_G7TcORIJXGHyq3wpwcH28nU Requested format is specified by setting HTTP headers header | possible values -- | -- Accept | `application/json`, `application/com.github.proto-openapi.spec.v2@v1.0+protobuf` Accept-Encoding | `gzip` This PR changes dynamic_client (and kubectl as a result) to use the new endpoint. The old endpoints will remain in 1.10 and 1.11, and get removed in 1.12. **Which issue(s) this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close the issue(s) when PR gets merged)*: Fixes # **Special notes for your reviewer**: **Release note**: ```release-note action required: Deprecate format-separated endpoints for OpenAPI spec. Please use single `/openapi/v2` endpoint instead. ``` /sig api-machinery Kubernetes-commit: d6153194d929ad6c036d5bbbf67a6f892e75feb5
39 lines
1.3 KiB
Python
39 lines
1.3 KiB
Python
# Copyright 2017 The Kubernetes Authors.
|
|
#
|
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
# you may not use this file except in compliance with the License.
|
|
# You may obtain a copy of the License at
|
|
#
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
#
|
|
# Unless required by applicable law or agreed to in writing, software
|
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
# See the License for the specific language governing permissions and
|
|
# limitations under the License.
|
|
|
|
# Implements hack/lib/version.sh's kube::version::ldflags() for Bazel.
|
|
def version_x_defs():
|
|
# This should match the list of packages in kube::version::ldflag
|
|
stamp_pkgs = [
|
|
"k8s.io/kubernetes/pkg/version",
|
|
# In hack/lib/version.sh, this has a vendor/ prefix. That isn't needed here?
|
|
"k8s.io/client-go/pkg/version",
|
|
]
|
|
# This should match the list of vars in kube::version::ldflags
|
|
# It should also match the list of vars set in hack/print-workspace-status.sh.
|
|
stamp_vars = [
|
|
"buildDate",
|
|
"gitCommit",
|
|
"gitMajor",
|
|
"gitMinor",
|
|
"gitTreeState",
|
|
"gitVersion",
|
|
]
|
|
# Generate the cross-product.
|
|
x_defs = {}
|
|
for pkg in stamp_pkgs:
|
|
for var in stamp_vars:
|
|
x_defs["%s.%s" % (pkg, var)] = "{%s}" % var
|
|
return x_defs
|