Skip to content

janfonas/strimzi-client-go

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

22 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

strimzi-client-go

Strimzi client-go package for use with kubernetes controllers.

This is a work in progress and hopefully the generation of this package will be fully automated soon.

At the moment, the partially-automated process is:

  1. Download the strimzi CRD yaml
  2. Edit the openAPI schemas to remove any 'oneOf' statements, since the GoLang type generator we use does not handle those.
  3. Use crd-codegen to generate types from the CRD YAML.
  4. Edit the top-level type definitions so that they implement the runtime.Object interfaces and add kubebuilder annotations. You may also see some of the "misc properties" type attributes defined as type <name> map[string]interface{} -- these must be changed to type apiextensions.JSON (example). The python script convert.py can be used to help with this.
  5. Convert int types to int32: sed -i 's/int `json/int32 `json'/g *
  6. Finally run controller-gen object paths=./... is run to generate DeepCopy implementations

About

Strimzi client-go package generated using crd-codegen

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Go 99.9%
  • Python 0.1%