Common generator scripts for all client libraries
To generate a client, first make sure the client generator exists. For any language other than
go, check openapi/
folder for a script with ${CLIENT_LANGUAGE}.sh
and run this command:
${CLIENT_LANGUAGE}.sh OUTPUT_DIR SETTING_FILE
SETTING_FILE
is a bash script exporting required setting to generate a client. These
are normally:
KUBERNETES_BRANCH
: The kubernetes branch to get OpenAPI spec from. e.g. "master"CLIENT_VERSION
: Client version string. e.g. "1.0.0b1"PACKAGE_NAME
: Package name for the generated client. e.g. "kubernetes"
Example settings file for python-client:
export KUBERNETES_BRANCH="master" export CLIENT_VERSION="8.0.0b1" export PACKAGE_NAME="client"
Note: For generating the client for any language, the PACKAGE_NAME should be "client". You can use the latest version for the CLIENT_VERSION. It's displayed here for the python-client ( https://github.com/kubernetes-client/python ), and similarly for other language clients.
Recommended structure is to generate client in a folder called kubernetes
at the root of
the client repo and put all settings in a file named settings
at the root of the repo.
If you followed these recommendations, you can simply run autoupdate script anywhere inside
the client repo:
cd ${CLIENT_ROOT}/...
${GEN_REPO_ROOT}/openapi/autoupdate.sh
Please see CONTRIBUTING.md for instructions on how to contribute.