Interface CRDConfiguration
public interface CRDConfiguration
-
Field Summary
Fields -
Method Summary
Modifier and TypeMethodDescriptionapply()Whether the extension should automatically apply updated CRDs when they change.A comma-separated list of fully-qualified class names implementingCustomResourceto exclude from the CRD generation process.A comma-separated list of paths where external CRDs that need to be referenced for non-generated custom resources.generate()Whether the extension should automatically generate the CRD based onCustomResourceimplementations.Whether the extension should generate all CRDs for Custom Resource implementations known to the application even if some are not tied to a Reconciler.Whether the CRDs should be generated in parallel.The directory where the CRDs will be generated, defaults to thekubernetesdirectory of the project's output directory.Deprecated, for removal: This API element is subject to removal in a future version.using this method should be reserved for blocking situations, please open an issue reporting the problem you're facing with the v2 generator before reverting to use the v1 versionvalidate()Whether the operator should check that the CRD is properly deployed and that the associatedCustomResourceimplementation matches its information before registering the associated controller.versions()Comma-separated list of which CRD versions should be generated.
-
Field Details
-
DEFAULT_OUTPUT_DIRECTORY
- See Also:
-
DEFAULT_VALIDATE
- See Also:
-
DEFAULT_VERSIONS
- See Also:
-
DEFAULT_USE_V1_CRD_GENERATOR
- See Also:
-
-
Method Details
-
validate
Whether the operator should check that the CRD is properly deployed and that the associatedCustomResourceimplementation matches its information before registering the associated controller. -
generate
Whether the extension should automatically generate the CRD based onCustomResourceimplementations. -
apply
Whether the extension should automatically apply updated CRDs when they change.NOTE that this option is only considered when *not* in production mode as applying the CRD to a production cluster could be dangerous if done automatically.
-
versions
Comma-separated list of which CRD versions should be generated. -
outputDirectory
The directory where the CRDs will be generated, defaults to thekubernetesdirectory of the project's output directory. -
generateAll
Whether the extension should generate all CRDs for Custom Resource implementations known to the application even if some are not tied to a Reconciler. -
generateInParallel
Whether the CRDs should be generated in parallel. -
excludeResources
A comma-separated list of fully-qualified class names implementingCustomResourceto exclude from the CRD generation process. -
externalCRDLocations
A comma-separated list of paths where external CRDs that need to be referenced for non-generated custom resources. Typical use cases where this might be needed include when custom resource implementations are located in a different module than the controller implementation or when the CRDs are not generated at all (e.g. in integration cases where your operator needs to deal with 3rd party custom resources).Paths can be either absolute or relative, in which case they will be resolved from the current module root directory.
- Since:
- 6.8.4
-
useV1CRDGenerator
@Deprecated(forRemoval=true) @WithDefault("false") @WithName("use-deprecated-v1-crd-generator") Boolean useV1CRDGenerator()Deprecated, for removal: This API element is subject to removal in a future version.using this method should be reserved for blocking situations, please open an issue reporting the problem you're facing with the v2 generator before reverting to use the v1 versionWhether or not to use the v1 version of the CRD generator. Note that this should only be used if a compatibility issue is found with the v2 generator, which is the default one and the one that is actively maintained.- Returns:
trueif the v1 version of the CRD generator should be used- Since:
- 6.8.5
-