Generate openapi v3 static files
This commit is contained in:
@@ -96,10 +96,21 @@ if ! kube::util::wait_for_url "https://${API_HOST}:${API_PORT}/healthz" "apiserv
|
||||
exit 1
|
||||
fi
|
||||
|
||||
kube::log::status "Updating " "${OPENAPI_ROOT_DIR}"
|
||||
kube::log::status "Updating " "${OPENAPI_ROOT_DIR} for OpenAPI v2"
|
||||
|
||||
curl -w "\n" -kfsS -H 'Authorization: Bearer dummy_token' "https://${API_HOST}:${API_PORT}/openapi/v2" | jq -S '.info.version="unversioned"' > "${OPENAPI_ROOT_DIR}/swagger.json"
|
||||
|
||||
kube::log::status "Updating " "${OPENAPI_ROOT_DIR}/v3 for OpenAPI v3"
|
||||
|
||||
mkdir -p "${OPENAPI_ROOT_DIR}/v3"
|
||||
curl -w "\n" -kfsS -H 'Authorization: Bearer dummy_token' "https://${API_HOST}:${API_PORT}/openapi/v3" | jq '.Paths' | jq -r '.[]' | while read -r group; do
|
||||
kube::log::status "Updating OpenAPI spec for group ${group}"
|
||||
OPENAPI_FILENAME="${group}_openapi.json"
|
||||
OPENAPI_FILENAME_ESCAPED="${OPENAPI_FILENAME//\//__}"
|
||||
OPENAPI_PATH="${OPENAPI_ROOT_DIR}/v3/${OPENAPI_FILENAME_ESCAPED}"
|
||||
curl -w "\n" -kfsS -H 'Authorization: Bearer dummy_token' "https://${API_HOST}:${API_PORT}/openapi/v3/{$group}" | jq . > "$OPENAPI_PATH"
|
||||
done
|
||||
|
||||
kube::log::status "SUCCESS"
|
||||
|
||||
# ex: ts=2 sw=2 et filetype=sh
|
||||
|
@@ -32,13 +32,15 @@ kube::etcd::install
|
||||
make -C "${KUBE_ROOT}" WHAT=cmd/kube-apiserver
|
||||
|
||||
SPECROOT="${KUBE_ROOT}/api/openapi-spec"
|
||||
SPECV3PATH="${SPECROOT}/v3"
|
||||
TMP_SPECROOT="${KUBE_ROOT}/_tmp/openapi-spec"
|
||||
_tmp="${KUBE_ROOT}/_tmp"
|
||||
|
||||
mkdir -p "${_tmp}"
|
||||
cp -a "${SPECROOT}" "${TMP_SPECROOT}"
|
||||
trap 'cp -a ${TMP_SPECROOT} ${SPECROOT}/..; rm -rf ${_tmp}' EXIT SIGINT
|
||||
rm "${SPECROOT}"/*
|
||||
rm -r "${SPECROOT:?}"/*
|
||||
mkdir -p "${SPECV3PATH}"
|
||||
cp "${TMP_SPECROOT}/README.md" "${SPECROOT}/README.md"
|
||||
|
||||
"${KUBE_ROOT}/hack/update-openapi-spec.sh"
|
||||
|
Reference in New Issue
Block a user