Common generator scripts for all client libraries
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.

README.md

gen

Common generator scripts for all client libraries

Badges

Client Support Level

Client Support Level

Client Support Level

Generating a client

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

Contributing

Please see CONTRIBUTING.md for instructions on how to contribute.