You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
As an alternative, the schema could be partially refined. Meaning some fields may still be intentionally left flexible using type: object if an OpenAPI specification is not possible or too complex.
Additional context
On a tangent, having a schema would support the use of the official Terraform Kubernetes provider. Without a schema, the provider tries to replace TridentBackendConfigs on every Terraform apply operation, even if nothing has changed. Such a replacement does does not terminate (unless there are no PersistentVolumes on the TridentBackend), forcing the user to abort the apply operation, which leaves the TridentBackendConfig in state "Deleting" – clearly undesired. For more details about this symptom, see hashicorp/terraform-provider-kubernetes#1382.
Thanks for working on NetApp Trident.
Currently, the CustomResourceDefinition for kind TridentBackendConfig has no actual schema:
As I understand, this is to accommodate for the variety of backend storage platforms.
However, it should be possible to express this variety in OpenAPI, using constructs such as
anyOf
,array
,enum
, etc.The benefits would be a precise documentation of the config (addressing #861) and automatic validation, promoting the Kubernetes integration.
Describe the solution you'd like
A CustomResourceDefinition with a schema along these lines (obviously not ready but you get the idea):
Describe alternatives you've considered
As an alternative, the schema could be partially refined. Meaning some fields may still be intentionally left flexible using
type: object
if an OpenAPI specification is not possible or too complex.Additional context
On a tangent, having a schema would support the use of the official Terraform Kubernetes provider. Without a schema, the provider tries to replace TridentBackendConfigs on every Terraform apply operation, even if nothing has changed. Such a replacement does does not terminate (unless there are no PersistentVolumes on the TridentBackend), forcing the user to abort the apply operation, which leaves the TridentBackendConfig in state "Deleting" – clearly undesired. For more details about this symptom, see hashicorp/terraform-provider-kubernetes#1382.
More about CustomResourceDefinition.
The text was updated successfully, but these errors were encountered: