kubernetes-client
kubernetes-client copied to clipboard
CRD-Generator v2: Gradle Plugin
Is your enhancement related to a problem? Please describe
Because the CRD-Generator annotation processor is now deprecated, we need a replacement. (see https://github.com/fabric8io/kubernetes-client/discussions/5942)
Describe the solution you'd like
A CRD-Generator gradle plugin could search for a top level annotation (or interface) and generate the CRDs using the CRD-Generator api.
Describe alternatives you've considered
No response
Additional context
- Jandex could be used to find and index the relevant annotations/classes.
- The following options should be supported:
- Enable / disable parallel generation
- CRD versions (v1, v1beta1)
(TBD: There are thoughts to drop v1beta1 which makes this option irrelevant) - outputPath
- header in output files
- Allow to add additional labels
- Allow to add additional annotations
- Enable debug output
The also planned CRD-Generator maven plugin (#5944) should support the same options.
As suggested by @manusa we can just start with a clone of https://github.com/fabric8io/kubernetes-client/tree/main/java-generator/gradle-plugin
This issue has been automatically marked as stale because it has not had any activity since 90 days. It will be closed if no further activity occurs within 7 days. Thank you for your contributions!