Skip to content

Common generator scripts for all k8s client libraries

License

Notifications You must be signed in to change notification settings

daimg/kubernetes-client-gen

 
 

Repository files navigation

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.

About

Common generator scripts for all k8s client libraries

Resources

License

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Shell 69.3%
  • Python 28.4%
  • Dockerfile 2.3%