diff --git a/operators/dell-csm-operator/1.7.0/manifests/containerstoragemodules.storage.dell.com.crd.yaml b/operators/dell-csm-operator/1.7.0/manifests/containerstoragemodules.storage.dell.com.crd.yaml index 4bdd4d379ac..368394c94d6 100644 --- a/operators/dell-csm-operator/1.7.0/manifests/containerstoragemodules.storage.dell.com.crd.yaml +++ b/operators/dell-csm-operator/1.7.0/manifests/containerstoragemodules.storage.dell.com.crd.yaml @@ -12,65 +12,897 @@ spec: listKind: ContainerStorageModuleList plural: containerstoragemodules shortNames: - - csm + - csm singular: containerstoragemodule scope: Namespaced versions: - - additionalPrinterColumns: - - jsonPath: .metadata.creationTimestamp - name: CreationTime - type: date - - description: Type of CSIDriver - jsonPath: .spec.driver.csiDriverType - name: CSIDriverType - type: string - - description: Version of CSIDriver - jsonPath: .spec.driver.configVersion - name: ConfigVersion - type: string - - description: State of Installation - jsonPath: .status.state - name: State - type: string - name: v1 - schema: - openAPIV3Schema: - description: - ContainerStorageModule is the Schema for the containerstoragemodules - API - properties: - apiVersion: - description: |- - APIVersion defines the versioned schema of this representation of an object. - Servers should convert recognized schemas to the latest internal value, and - may reject unrecognized values. - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources - type: string - kind: - description: |- - Kind is a string value representing the REST resource this object represents. - Servers may infer this from the endpoint the client submits requests to. - Cannot be updated. - In CamelCase. - More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds - type: string - metadata: - type: object - spec: - description: ContainerStorageModuleSpec defines the desired state of ContainerStorageModule - properties: - driver: - description: Driver is a CSI Drivers for Dell Technologies - properties: - authSecret: - description: - AuthSecret is the name of the credentials secret - for the driver - type: string - common: - description: - Common is the common specification for both controller - and node plugins + - additionalPrinterColumns: + - jsonPath: .metadata.creationTimestamp + name: CreationTime + type: date + - description: Type of CSIDriver + jsonPath: .spec.driver.csiDriverType + name: CSIDriverType + type: string + - description: Version of CSIDriver + jsonPath: .spec.driver.configVersion + name: ConfigVersion + type: string + - description: State of Installation + jsonPath: .status.state + name: State + type: string + name: v1 + schema: + openAPIV3Schema: + description: ContainerStorageModule is the Schema for the containerstoragemodules + API + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + description: ContainerStorageModuleSpec defines the desired state of ContainerStorageModule + properties: + driver: + description: Driver is a CSI Drivers for Dell Technologies + properties: + authSecret: + description: AuthSecret is the name of the credentials secret + for the driver + type: string + common: + description: Common is the common specification for both controller + and node plugins + properties: + args: + description: Args is the set of arguments for the container + items: + type: string + type: array + authorizationController: + description: AuthorizationController is the image tag for + the container + type: string + authorizationControllerReplicas: + description: AuthorizationControllerReplicas is the number + of replicas for the authorization controller deployment + type: integer + certificate: + description: Certificate is a certificate used for a certificate/private-key + pair + type: string + certificateAuthority: + description: CertificateAuthority is a certificate authority + used to validate a certificate + type: string + commander: + description: Commander is the image tag for the Container + type: string + controllerReconcileInterval: + description: The interval which the reconcile of each controller + is run + type: string + credentials: + description: ComponentCred is to store the velero credential + contents + items: + description: Credential struct + properties: + createWithInstall: + description: CreateWithInstall is used to indicate wether + or not to create a secret for objectstore + type: boolean + name: + description: Name is the name of secret which contains + credentials to access objectstore + type: string + secretContents: + description: SecretContents contains credentials to + access objectstore + properties: + aws_access_key_id: + description: AccessKeyID is a name of key ID to + access objectstore + type: string + aws_secret_access_key: + description: AccessKey contains the key to access + objectstore + type: string + type: object + type: object + type: array + deployNodeAgent: + description: DeployNodeAgent is to enable/disable node-agent + services + type: boolean + enabled: + description: Enabled is used to indicate wether or not to + deploy a module + type: boolean + envs: + description: Envs is the set of environment variables for + the container + items: + description: EnvVar represents an environment variable present + in a Container. + properties: + name: + description: Name of the environment variable. Must + be a C_IDENTIFIER. + type: string + value: + description: |- + Variable references $(VAR_NAME) are expanded + using the previously defined environment variables in the container and + any service environment variables. If a variable cannot be resolved, + the reference in the input string will be unchanged. Double $$ are reduced + to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. + "$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)". + Escaped references will never be expanded, regardless of whether the variable + exists or not. + Defaults to "". + type: string + valueFrom: + description: Source for the environment variable's value. + Cannot be used if value is not empty. + properties: + configMapKeyRef: + description: Selects a key of a ConfigMap. + properties: + key: + description: The key to select. + type: string + name: + default: "" + description: |- + Name of the referent. + This field is effectively required, but due to backwards compatibility is + allowed to be empty. Instances of this type with an empty value here are + almost certainly wrong. + TODO: Add other useful fields. apiVersion, kind, uid? + More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896. + type: string + optional: + description: Specify whether the ConfigMap or + its key must be defined + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + fieldRef: + description: |- + Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`, + spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs. + properties: + apiVersion: + description: Version of the schema the FieldPath + is written in terms of, defaults to "v1". + type: string + fieldPath: + description: Path of the field to select in + the specified API version. + type: string + required: + - fieldPath + type: object + x-kubernetes-map-type: atomic + resourceFieldRef: + description: |- + Selects a resource of the container: only resources limits and requests + (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported. + properties: + containerName: + description: 'Container name: required for volumes, + optional for env vars' + type: string + divisor: + anyOf: + - type: integer + - type: string + description: Specifies the output format of + the exposed resources, defaults to "1" + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + resource: + description: 'Required: resource to select' + type: string + required: + - resource + type: object + x-kubernetes-map-type: atomic + secretKeyRef: + description: Selects a key of a secret in the pod's + namespace + properties: + key: + description: The key of the secret to select + from. Must be a valid secret key. + type: string + name: + default: "" + description: |- + Name of the referent. + This field is effectively required, but due to backwards compatibility is + allowed to be empty. Instances of this type with an empty value here are + almost certainly wrong. + TODO: Add other useful fields. apiVersion, kind, uid? + More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896. + type: string + optional: + description: Specify whether the Secret or its + key must be defined + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + required: + - name + type: object + type: array + hostname: + description: Hostname is the authorization proxy server hostname + type: string + image: + description: Image is the image tag for the Container + type: string + imagePullPolicy: + description: ImagePullPolicy is the image pull policy for + the image + type: string + kvEnginePath: + description: kvEnginePath is the Authorization vault secret + path + type: string + leaderElection: + description: LeaderElection is boolean flag to enable leader + election + type: boolean + licenseName: + description: LicenseName is the name of the license for app-mobility + type: string + name: + description: Name is the name of Container + type: string + nodeSelector: + additionalProperties: + type: string + description: |- + NodeSelector is a selector which must be true for the pod to fit on a node. + Selector which must match a node's labels for the pod to be scheduled on that node. + type: object + objectStoreSecretName: + description: ObjectStoreSecretName is the name of the secret + for the object store for app-mobility + type: string + opa: + description: Opa is the image tag for the Container + type: string + opaKubeMgmt: + description: OpaKubeMgmt is the image tag for the Container + type: string + openTelemetryCollectorAddress: + description: OpenTelemetryCollectorAddress is the address + of the OTLP receiving endpoint using gRPC + type: string + privateKey: + description: PrivateKey is a private key used for a certificate/private-key + pair + type: string + proxyServerIngress: + description: ProxyServerIngress is the authorization proxy + server ingress configuration + items: + description: ProxyServerIngress is the authorization ingress + configuration struct + properties: + annotations: + additionalProperties: + type: string + description: Annotations is an unstructured key value + map that stores additional annotations for the ingress + type: object + hosts: + description: Hosts is the hosts rules for the ingress + items: + type: string + type: array + ingressClassName: + description: IngressClassName is the ingressClassName + type: string + type: object + type: array + proxyService: + description: ProxyService is the image tag for the Container + type: string + proxyServiceReplicas: + description: ProxyServiceReplicas is the number of replicas + for the proxy service deployment + type: integer + redis: + description: Redis is the image tag for the Container + type: string + redisCommander: + description: RedisCommander is the name of the redis deployment + type: string + redisName: + description: RedisName is the name of the redis statefulset + type: string + redisReplicas: + description: RedisReplicas is the number of replicas for the + redis deployment + type: integer + replicaCount: + description: ReplicaCount is the replica count for app mobility + type: string + roleService: + description: RoleService is the image tag for the Container + type: string + roleServiceReplicas: + description: RoleServiceReplicas is the number of replicas + for the role service deployment + type: integer + sentinel: + description: Sentinel is the name of the sentinel statefulSet + type: string + skipCertificateValidation: + description: skipCertificateValidation is the flag to skip + certificate validation + type: boolean + storageService: + description: StorageService is the image tag for the Container + type: string + storageServiceReplicas: + description: StorageServiceReplicas is the number of replicas + for storage service deployment + type: integer + storageclass: + description: RedisStorageClass is the authorization proxy + server redis storage class for persistence + type: string + tenantService: + description: TenantService is the image tag for the Container + type: string + tenantServiceReplicas: + description: TenantServiceReplicas is the number of replicas + for the tenant service deployment + type: integer + tolerations: + description: Tolerations is the list of tolerations for the + driver pods + items: + description: |- + The pod this Toleration is attached to tolerates any taint that matches + the triple using the matching operator . + properties: + effect: + description: |- + Effect indicates the taint effect to match. Empty means match all taint effects. + When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute. + type: string + key: + description: |- + Key is the taint key that the toleration applies to. Empty means match all taint keys. + If the key is empty, operator must be Exists; this combination means to match all values and all keys. + type: string + operator: + description: |- + Operator represents a key's relationship to the value. + Valid operators are Exists and Equal. Defaults to Equal. + Exists is equivalent to wildcard for value, so that a pod can + tolerate all taints of a particular category. + type: string + tolerationSeconds: + description: |- + TolerationSeconds represents the period of time the toleration (which must be + of effect NoExecute, otherwise this field is ignored) tolerates the taint. By default, + it is not set, which means tolerate the taint forever (do not evict). Zero and + negative values will be treated as 0 (evict immediately) by the system. + format: int64 + type: integer + value: + description: |- + Value is the taint value the toleration matches to. + If the operator is Exists, the value should be empty, otherwise just a regular string. + type: string + type: object + type: array + useVolumeSnapshot: + description: UseSnapshot is to check whether volume snapshot + is enabled under velero component + type: boolean + vaultConfigurations: + description: Vaults are the vault configurations + items: + description: Vault is the configuration for a vault instance + struct + properties: + address: + description: Address is the address for this vault + type: string + certificateAuthority: + description: CertificateAuthority is the base64-encoded + certificate authority for validaitng the vault certificate + type: string + clientCertificate: + description: ClientCertificate is the base64-encoded + certificate for connecting to vault + type: string + clientKey: + description: ClientKey validates is the base64-encoded + certificate key for connecting to vault + type: string + identifier: + description: Identifier is the identifier for this vault + type: string + role: + description: Role is the role for this vault + type: string + skipCertificateValidation: + description: SkipCertificateValidation validates the + vault server certificate or not + type: boolean + type: object + type: array + veleroNamespace: + description: VeleroNamespace is the namespace that Velero + is installed in + type: string + type: object + configVersion: + description: ConfigVersion is the configuration version of the + driver + type: string + controller: + description: Controller is the specification for Controller plugin + only + properties: + args: + description: Args is the set of arguments for the container + items: + type: string + type: array + authorizationController: + description: AuthorizationController is the image tag for + the container + type: string + authorizationControllerReplicas: + description: AuthorizationControllerReplicas is the number + of replicas for the authorization controller deployment + type: integer + certificate: + description: Certificate is a certificate used for a certificate/private-key + pair + type: string + certificateAuthority: + description: CertificateAuthority is a certificate authority + used to validate a certificate + type: string + commander: + description: Commander is the image tag for the Container + type: string + controllerReconcileInterval: + description: The interval which the reconcile of each controller + is run + type: string + credentials: + description: ComponentCred is to store the velero credential + contents + items: + description: Credential struct + properties: + createWithInstall: + description: CreateWithInstall is used to indicate wether + or not to create a secret for objectstore + type: boolean + name: + description: Name is the name of secret which contains + credentials to access objectstore + type: string + secretContents: + description: SecretContents contains credentials to + access objectstore + properties: + aws_access_key_id: + description: AccessKeyID is a name of key ID to + access objectstore + type: string + aws_secret_access_key: + description: AccessKey contains the key to access + objectstore + type: string + type: object + type: object + type: array + deployNodeAgent: + description: DeployNodeAgent is to enable/disable node-agent + services + type: boolean + enabled: + description: Enabled is used to indicate wether or not to + deploy a module + type: boolean + envs: + description: Envs is the set of environment variables for + the container + items: + description: EnvVar represents an environment variable present + in a Container. + properties: + name: + description: Name of the environment variable. Must + be a C_IDENTIFIER. + type: string + value: + description: |- + Variable references $(VAR_NAME) are expanded + using the previously defined environment variables in the container and + any service environment variables. If a variable cannot be resolved, + the reference in the input string will be unchanged. Double $$ are reduced + to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. + "$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)". + Escaped references will never be expanded, regardless of whether the variable + exists or not. + Defaults to "". + type: string + valueFrom: + description: Source for the environment variable's value. + Cannot be used if value is not empty. + properties: + configMapKeyRef: + description: Selects a key of a ConfigMap. + properties: + key: + description: The key to select. + type: string + name: + default: "" + description: |- + Name of the referent. + This field is effectively required, but due to backwards compatibility is + allowed to be empty. Instances of this type with an empty value here are + almost certainly wrong. + TODO: Add other useful fields. apiVersion, kind, uid? + More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896. + type: string + optional: + description: Specify whether the ConfigMap or + its key must be defined + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + fieldRef: + description: |- + Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`, + spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs. + properties: + apiVersion: + description: Version of the schema the FieldPath + is written in terms of, defaults to "v1". + type: string + fieldPath: + description: Path of the field to select in + the specified API version. + type: string + required: + - fieldPath + type: object + x-kubernetes-map-type: atomic + resourceFieldRef: + description: |- + Selects a resource of the container: only resources limits and requests + (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported. + properties: + containerName: + description: 'Container name: required for volumes, + optional for env vars' + type: string + divisor: + anyOf: + - type: integer + - type: string + description: Specifies the output format of + the exposed resources, defaults to "1" + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + resource: + description: 'Required: resource to select' + type: string + required: + - resource + type: object + x-kubernetes-map-type: atomic + secretKeyRef: + description: Selects a key of a secret in the pod's + namespace + properties: + key: + description: The key of the secret to select + from. Must be a valid secret key. + type: string + name: + default: "" + description: |- + Name of the referent. + This field is effectively required, but due to backwards compatibility is + allowed to be empty. Instances of this type with an empty value here are + almost certainly wrong. + TODO: Add other useful fields. apiVersion, kind, uid? + More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896. + type: string + optional: + description: Specify whether the Secret or its + key must be defined + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + required: + - name + type: object + type: array + hostname: + description: Hostname is the authorization proxy server hostname + type: string + image: + description: Image is the image tag for the Container + type: string + imagePullPolicy: + description: ImagePullPolicy is the image pull policy for + the image + type: string + kvEnginePath: + description: kvEnginePath is the Authorization vault secret + path + type: string + leaderElection: + description: LeaderElection is boolean flag to enable leader + election + type: boolean + licenseName: + description: LicenseName is the name of the license for app-mobility + type: string + name: + description: Name is the name of Container + type: string + nodeSelector: + additionalProperties: + type: string + description: |- + NodeSelector is a selector which must be true for the pod to fit on a node. + Selector which must match a node's labels for the pod to be scheduled on that node. + type: object + objectStoreSecretName: + description: ObjectStoreSecretName is the name of the secret + for the object store for app-mobility + type: string + opa: + description: Opa is the image tag for the Container + type: string + opaKubeMgmt: + description: OpaKubeMgmt is the image tag for the Container + type: string + openTelemetryCollectorAddress: + description: OpenTelemetryCollectorAddress is the address + of the OTLP receiving endpoint using gRPC + type: string + privateKey: + description: PrivateKey is a private key used for a certificate/private-key + pair + type: string + proxyServerIngress: + description: ProxyServerIngress is the authorization proxy + server ingress configuration + items: + description: ProxyServerIngress is the authorization ingress + configuration struct + properties: + annotations: + additionalProperties: + type: string + description: Annotations is an unstructured key value + map that stores additional annotations for the ingress + type: object + hosts: + description: Hosts is the hosts rules for the ingress + items: + type: string + type: array + ingressClassName: + description: IngressClassName is the ingressClassName + type: string + type: object + type: array + proxyService: + description: ProxyService is the image tag for the Container + type: string + proxyServiceReplicas: + description: ProxyServiceReplicas is the number of replicas + for the proxy service deployment + type: integer + redis: + description: Redis is the image tag for the Container + type: string + redisCommander: + description: RedisCommander is the name of the redis deployment + type: string + redisName: + description: RedisName is the name of the redis statefulset + type: string + redisReplicas: + description: RedisReplicas is the number of replicas for the + redis deployment + type: integer + replicaCount: + description: ReplicaCount is the replica count for app mobility + type: string + roleService: + description: RoleService is the image tag for the Container + type: string + roleServiceReplicas: + description: RoleServiceReplicas is the number of replicas + for the role service deployment + type: integer + sentinel: + description: Sentinel is the name of the sentinel statefulSet + type: string + skipCertificateValidation: + description: skipCertificateValidation is the flag to skip + certificate validation + type: boolean + storageService: + description: StorageService is the image tag for the Container + type: string + storageServiceReplicas: + description: StorageServiceReplicas is the number of replicas + for storage service deployment + type: integer + storageclass: + description: RedisStorageClass is the authorization proxy + server redis storage class for persistence + type: string + tenantService: + description: TenantService is the image tag for the Container + type: string + tenantServiceReplicas: + description: TenantServiceReplicas is the number of replicas + for the tenant service deployment + type: integer + tolerations: + description: Tolerations is the list of tolerations for the + driver pods + items: + description: |- + The pod this Toleration is attached to tolerates any taint that matches + the triple using the matching operator . + properties: + effect: + description: |- + Effect indicates the taint effect to match. Empty means match all taint effects. + When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute. + type: string + key: + description: |- + Key is the taint key that the toleration applies to. Empty means match all taint keys. + If the key is empty, operator must be Exists; this combination means to match all values and all keys. + type: string + operator: + description: |- + Operator represents a key's relationship to the value. + Valid operators are Exists and Equal. Defaults to Equal. + Exists is equivalent to wildcard for value, so that a pod can + tolerate all taints of a particular category. + type: string + tolerationSeconds: + description: |- + TolerationSeconds represents the period of time the toleration (which must be + of effect NoExecute, otherwise this field is ignored) tolerates the taint. By default, + it is not set, which means tolerate the taint forever (do not evict). Zero and + negative values will be treated as 0 (evict immediately) by the system. + format: int64 + type: integer + value: + description: |- + Value is the taint value the toleration matches to. + If the operator is Exists, the value should be empty, otherwise just a regular string. + type: string + type: object + type: array + useVolumeSnapshot: + description: UseSnapshot is to check whether volume snapshot + is enabled under velero component + type: boolean + vaultConfigurations: + description: Vaults are the vault configurations + items: + description: Vault is the configuration for a vault instance + struct + properties: + address: + description: Address is the address for this vault + type: string + certificateAuthority: + description: CertificateAuthority is the base64-encoded + certificate authority for validaitng the vault certificate + type: string + clientCertificate: + description: ClientCertificate is the base64-encoded + certificate for connecting to vault + type: string + clientKey: + description: ClientKey validates is the base64-encoded + certificate key for connecting to vault + type: string + identifier: + description: Identifier is the identifier for this vault + type: string + role: + description: Role is the role for this vault + type: string + skipCertificateValidation: + description: SkipCertificateValidation validates the + vault server certificate or not + type: boolean + type: object + type: array + veleroNamespace: + description: VeleroNamespace is the namespace that Velero + is installed in + type: string + type: object + csiDriverSpec: + description: CSIDriverSpec is the specification for CSIDriver + properties: + fSGroupPolicy: + type: string + storageCapacity: + type: boolean + type: object + csiDriverType: + description: CSIDriverType is the CSI Driver type for Dell Technologies + - e.g, powermax, powerflex,... + type: string + dnsPolicy: + description: DNSPolicy is the dnsPolicy of the daemonset for Node + plugin + type: string + forceRemoveDriver: + description: ForceRemoveDriver is the boolean flag used to remove + driver deployment when CR is deleted + type: boolean + forceUpdate: + description: ForceUpdate is the boolean flag used to force an + update of the driver instance + type: boolean + initContainers: + description: InitContainers is the specification for Driver InitContainers + items: + description: ContainerTemplate template properties: args: description: Args is the set of arguments for the container @@ -78,90 +910,74 @@ spec: type: string type: array authorizationController: - description: - AuthorizationController is the image tag for + description: AuthorizationController is the image tag for the container type: string authorizationControllerReplicas: - description: - AuthorizationControllerReplicas is the number + description: AuthorizationControllerReplicas is the number of replicas for the authorization controller deployment type: integer certificate: - description: - Certificate is a certificate used for a certificate/private-key + description: Certificate is a certificate used for a certificate/private-key pair type: string certificateAuthority: - description: - CertificateAuthority is a certificate authority + description: CertificateAuthority is a certificate authority used to validate a certificate type: string commander: description: Commander is the image tag for the Container type: string controllerReconcileInterval: - description: - The interval which the reconcile of each controller + description: The interval which the reconcile of each controller is run type: string credentials: - description: - ComponentCred is to store the velero credential + description: ComponentCred is to store the velero credential contents items: description: Credential struct properties: createWithInstall: - description: - CreateWithInstall is used to indicate wether - or not to create a secret for objectstore + description: CreateWithInstall is used to indicate + wether or not to create a secret for objectstore type: boolean name: - description: - Name is the name of secret which contains + description: Name is the name of secret which contains credentials to access objectstore type: string secretContents: - description: - SecretContents contains credentials to + description: SecretContents contains credentials to access objectstore properties: aws_access_key_id: - description: - AccessKeyID is a name of key ID to + description: AccessKeyID is a name of key ID to access objectstore type: string aws_secret_access_key: - description: - AccessKey contains the key to access + description: AccessKey contains the key to access objectstore type: string type: object type: object type: array deployNodeAgent: - description: - DeployNodeAgent is to enable/disable node-agent + description: DeployNodeAgent is to enable/disable node-agent services type: boolean enabled: - description: - Enabled is used to indicate wether or not to + description: Enabled is used to indicate wether or not to deploy a module type: boolean envs: - description: - Envs is the set of environment variables for + description: Envs is the set of environment variables for the container items: - description: - EnvVar represents an environment variable present - in a Container. + description: EnvVar represents an environment variable + present in a Container. properties: name: - description: - Name of the environment variable. Must + description: Name of the environment variable. Must be a C_IDENTIFIER. type: string value: @@ -177,9 +993,8 @@ spec: Defaults to "". type: string valueFrom: - description: - Source for the environment variable's value. - Cannot be used if value is not empty. + description: Source for the environment variable's + value. Cannot be used if value is not empty. properties: configMapKeyRef: description: Selects a key of a ConfigMap. @@ -199,12 +1014,11 @@ spec: TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896. type: string optional: - description: - Specify whether the ConfigMap or - its key must be defined + description: Specify whether the ConfigMap + or its key must be defined type: boolean required: - - key + - key type: object x-kubernetes-map-type: atomic fieldRef: @@ -213,17 +1027,15 @@ spec: spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs. properties: apiVersion: - description: - Version of the schema the FieldPath + description: Version of the schema the FieldPath is written in terms of, defaults to "v1". type: string fieldPath: - description: - Path of the field to select in + description: Path of the field to select in the specified API version. type: string required: - - fieldPath + - fieldPath type: object x-kubernetes-map-type: atomic resourceFieldRef: @@ -232,34 +1044,30 @@ spec: (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported. properties: containerName: - description: - "Container name: required for volumes, - optional for env vars" + description: 'Container name: required for + volumes, optional for env vars' type: string divisor: anyOf: - - type: integer - - type: string - description: - Specifies the output format of + - type: integer + - type: string + description: Specifies the output format of the exposed resources, defaults to "1" pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ x-kubernetes-int-or-string: true resource: - description: "Required: resource to select" + description: 'Required: resource to select' type: string required: - - resource + - resource type: object x-kubernetes-map-type: atomic secretKeyRef: - description: - Selects a key of a secret in the pod's - namespace + description: Selects a key of a secret in the + pod's namespace properties: key: - description: - The key of the secret to select + description: The key of the secret to select from. Must be a valid secret key. type: string name: @@ -274,28 +1082,27 @@ spec: TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896. type: string optional: - description: - Specify whether the Secret or its - key must be defined + description: Specify whether the Secret or + its key must be defined type: boolean required: - - key + - key type: object x-kubernetes-map-type: atomic type: object required: - - name + - name type: object type: array hostname: - description: Hostname is the authorization proxy server hostname + description: Hostname is the authorization proxy server + hostname type: string image: description: Image is the image tag for the Container type: string imagePullPolicy: - description: - ImagePullPolicy is the image pull policy for + description: ImagePullPolicy is the image pull policy for the image type: string kvEnginePath: @@ -303,12 +1110,12 @@ spec: path type: string leaderElection: - description: - LeaderElection is boolean flag to enable leader + description: LeaderElection is boolean flag to enable leader election type: boolean licenseName: - description: LicenseName is the name of the license for app-mobility + description: LicenseName is the name of the license for + app-mobility type: string name: description: Name is the name of Container @@ -321,8 +1128,7 @@ spec: Selector which must match a node's labels for the pod to be scheduled on that node. type: object objectStoreSecretName: - description: - ObjectStoreSecretName is the name of the secret + description: ObjectStoreSecretName is the name of the secret for the object store for app-mobility type: string opa: @@ -332,29 +1138,24 @@ spec: description: OpaKubeMgmt is the image tag for the Container type: string openTelemetryCollectorAddress: - description: - OpenTelemetryCollectorAddress is the address + description: OpenTelemetryCollectorAddress is the address of the OTLP receiving endpoint using gRPC type: string privateKey: - description: - PrivateKey is a private key used for a certificate/private-key + description: PrivateKey is a private key used for a certificate/private-key pair type: string proxyServerIngress: - description: - ProxyServerIngress is the authorization proxy + description: ProxyServerIngress is the authorization proxy server ingress configuration items: - description: - ProxyServerIngress is the authorization ingress + description: ProxyServerIngress is the authorization ingress configuration struct properties: annotations: additionalProperties: type: string - description: - Annotations is an unstructured key value + description: Annotations is an unstructured key value map that stores additional annotations for the ingress type: object hosts: @@ -371,8 +1172,7 @@ spec: description: ProxyService is the image tag for the Container type: string proxyServiceReplicas: - description: - ProxyServiceReplicas is the number of replicas + description: ProxyServiceReplicas is the number of replicas for the proxy service deployment type: integer redis: @@ -385,9 +1185,8 @@ spec: description: RedisName is the name of the redis statefulset type: string redisReplicas: - description: - RedisReplicas is the number of replicas for the - redis deployment + description: RedisReplicas is the number of replicas for + the redis deployment type: integer replicaCount: description: ReplicaCount is the replica count for app mobility @@ -396,43 +1195,37 @@ spec: description: RoleService is the image tag for the Container type: string roleServiceReplicas: - description: - RoleServiceReplicas is the number of replicas + description: RoleServiceReplicas is the number of replicas for the role service deployment type: integer sentinel: description: Sentinel is the name of the sentinel statefulSet type: string skipCertificateValidation: - description: - skipCertificateValidation is the flag to skip + description: skipCertificateValidation is the flag to skip certificate validation type: boolean storageService: description: StorageService is the image tag for the Container type: string storageServiceReplicas: - description: - StorageServiceReplicas is the number of replicas + description: StorageServiceReplicas is the number of replicas for storage service deployment type: integer storageclass: - description: - RedisStorageClass is the authorization proxy + description: RedisStorageClass is the authorization proxy server redis storage class for persistence type: string tenantService: description: TenantService is the image tag for the Container type: string tenantServiceReplicas: - description: - TenantServiceReplicas is the number of replicas + description: TenantServiceReplicas is the number of replicas for the tenant service deployment type: integer tolerations: - description: - Tolerations is the list of tolerations for the - driver pods + description: Tolerations is the list of tolerations for + the driver pods items: description: |- The pod this Toleration is attached to tolerates any taint that matches @@ -471,63 +1264,460 @@ spec: type: object type: array useVolumeSnapshot: - description: - UseSnapshot is to check whether volume snapshot + description: UseSnapshot is to check whether volume snapshot is enabled under velero component type: boolean vaultConfigurations: description: Vaults are the vault configurations items: - description: - Vault is the configuration for a vault instance + description: Vault is the configuration for a vault instance struct properties: address: description: Address is the address for this vault type: string certificateAuthority: - description: - CertificateAuthority is the base64-encoded + description: CertificateAuthority is the base64-encoded certificate authority for validaitng the vault certificate type: string clientCertificate: - description: - ClientCertificate is the base64-encoded + description: ClientCertificate is the base64-encoded certificate for connecting to vault type: string clientKey: - description: - ClientKey validates is the base64-encoded + description: ClientKey validates is the base64-encoded certificate key for connecting to vault type: string identifier: - description: Identifier is the identifier for this vault + description: Identifier is the identifier for this + vault type: string role: description: Role is the role for this vault type: string skipCertificateValidation: - description: - SkipCertificateValidation validates the + description: SkipCertificateValidation validates the vault server certificate or not type: boolean type: object type: array veleroNamespace: - description: - VeleroNamespace is the namespace that Velero + description: VeleroNamespace is the namespace that Velero is installed in type: string type: object - configVersion: - description: - ConfigVersion is the configuration version of the - driver - type: string - controller: - description: - Controller is the specification for Controller plugin - only + type: array + node: + description: Node is the specification for Node plugin only + properties: + args: + description: Args is the set of arguments for the container + items: + type: string + type: array + authorizationController: + description: AuthorizationController is the image tag for + the container + type: string + authorizationControllerReplicas: + description: AuthorizationControllerReplicas is the number + of replicas for the authorization controller deployment + type: integer + certificate: + description: Certificate is a certificate used for a certificate/private-key + pair + type: string + certificateAuthority: + description: CertificateAuthority is a certificate authority + used to validate a certificate + type: string + commander: + description: Commander is the image tag for the Container + type: string + controllerReconcileInterval: + description: The interval which the reconcile of each controller + is run + type: string + credentials: + description: ComponentCred is to store the velero credential + contents + items: + description: Credential struct + properties: + createWithInstall: + description: CreateWithInstall is used to indicate wether + or not to create a secret for objectstore + type: boolean + name: + description: Name is the name of secret which contains + credentials to access objectstore + type: string + secretContents: + description: SecretContents contains credentials to + access objectstore + properties: + aws_access_key_id: + description: AccessKeyID is a name of key ID to + access objectstore + type: string + aws_secret_access_key: + description: AccessKey contains the key to access + objectstore + type: string + type: object + type: object + type: array + deployNodeAgent: + description: DeployNodeAgent is to enable/disable node-agent + services + type: boolean + enabled: + description: Enabled is used to indicate wether or not to + deploy a module + type: boolean + envs: + description: Envs is the set of environment variables for + the container + items: + description: EnvVar represents an environment variable present + in a Container. + properties: + name: + description: Name of the environment variable. Must + be a C_IDENTIFIER. + type: string + value: + description: |- + Variable references $(VAR_NAME) are expanded + using the previously defined environment variables in the container and + any service environment variables. If a variable cannot be resolved, + the reference in the input string will be unchanged. Double $$ are reduced + to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. + "$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)". + Escaped references will never be expanded, regardless of whether the variable + exists or not. + Defaults to "". + type: string + valueFrom: + description: Source for the environment variable's value. + Cannot be used if value is not empty. + properties: + configMapKeyRef: + description: Selects a key of a ConfigMap. + properties: + key: + description: The key to select. + type: string + name: + default: "" + description: |- + Name of the referent. + This field is effectively required, but due to backwards compatibility is + allowed to be empty. Instances of this type with an empty value here are + almost certainly wrong. + TODO: Add other useful fields. apiVersion, kind, uid? + More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896. + type: string + optional: + description: Specify whether the ConfigMap or + its key must be defined + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + fieldRef: + description: |- + Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`, + spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs. + properties: + apiVersion: + description: Version of the schema the FieldPath + is written in terms of, defaults to "v1". + type: string + fieldPath: + description: Path of the field to select in + the specified API version. + type: string + required: + - fieldPath + type: object + x-kubernetes-map-type: atomic + resourceFieldRef: + description: |- + Selects a resource of the container: only resources limits and requests + (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported. + properties: + containerName: + description: 'Container name: required for volumes, + optional for env vars' + type: string + divisor: + anyOf: + - type: integer + - type: string + description: Specifies the output format of + the exposed resources, defaults to "1" + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + resource: + description: 'Required: resource to select' + type: string + required: + - resource + type: object + x-kubernetes-map-type: atomic + secretKeyRef: + description: Selects a key of a secret in the pod's + namespace + properties: + key: + description: The key of the secret to select + from. Must be a valid secret key. + type: string + name: + default: "" + description: |- + Name of the referent. + This field is effectively required, but due to backwards compatibility is + allowed to be empty. Instances of this type with an empty value here are + almost certainly wrong. + TODO: Add other useful fields. apiVersion, kind, uid? + More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896. + type: string + optional: + description: Specify whether the Secret or its + key must be defined + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: object + required: + - name + type: object + type: array + hostname: + description: Hostname is the authorization proxy server hostname + type: string + image: + description: Image is the image tag for the Container + type: string + imagePullPolicy: + description: ImagePullPolicy is the image pull policy for + the image + type: string + kvEnginePath: + description: kvEnginePath is the Authorization vault secret + path + type: string + leaderElection: + description: LeaderElection is boolean flag to enable leader + election + type: boolean + licenseName: + description: LicenseName is the name of the license for app-mobility + type: string + name: + description: Name is the name of Container + type: string + nodeSelector: + additionalProperties: + type: string + description: |- + NodeSelector is a selector which must be true for the pod to fit on a node. + Selector which must match a node's labels for the pod to be scheduled on that node. + type: object + objectStoreSecretName: + description: ObjectStoreSecretName is the name of the secret + for the object store for app-mobility + type: string + opa: + description: Opa is the image tag for the Container + type: string + opaKubeMgmt: + description: OpaKubeMgmt is the image tag for the Container + type: string + openTelemetryCollectorAddress: + description: OpenTelemetryCollectorAddress is the address + of the OTLP receiving endpoint using gRPC + type: string + privateKey: + description: PrivateKey is a private key used for a certificate/private-key + pair + type: string + proxyServerIngress: + description: ProxyServerIngress is the authorization proxy + server ingress configuration + items: + description: ProxyServerIngress is the authorization ingress + configuration struct + properties: + annotations: + additionalProperties: + type: string + description: Annotations is an unstructured key value + map that stores additional annotations for the ingress + type: object + hosts: + description: Hosts is the hosts rules for the ingress + items: + type: string + type: array + ingressClassName: + description: IngressClassName is the ingressClassName + type: string + type: object + type: array + proxyService: + description: ProxyService is the image tag for the Container + type: string + proxyServiceReplicas: + description: ProxyServiceReplicas is the number of replicas + for the proxy service deployment + type: integer + redis: + description: Redis is the image tag for the Container + type: string + redisCommander: + description: RedisCommander is the name of the redis deployment + type: string + redisName: + description: RedisName is the name of the redis statefulset + type: string + redisReplicas: + description: RedisReplicas is the number of replicas for the + redis deployment + type: integer + replicaCount: + description: ReplicaCount is the replica count for app mobility + type: string + roleService: + description: RoleService is the image tag for the Container + type: string + roleServiceReplicas: + description: RoleServiceReplicas is the number of replicas + for the role service deployment + type: integer + sentinel: + description: Sentinel is the name of the sentinel statefulSet + type: string + skipCertificateValidation: + description: skipCertificateValidation is the flag to skip + certificate validation + type: boolean + storageService: + description: StorageService is the image tag for the Container + type: string + storageServiceReplicas: + description: StorageServiceReplicas is the number of replicas + for storage service deployment + type: integer + storageclass: + description: RedisStorageClass is the authorization proxy + server redis storage class for persistence + type: string + tenantService: + description: TenantService is the image tag for the Container + type: string + tenantServiceReplicas: + description: TenantServiceReplicas is the number of replicas + for the tenant service deployment + type: integer + tolerations: + description: Tolerations is the list of tolerations for the + driver pods + items: + description: |- + The pod this Toleration is attached to tolerates any taint that matches + the triple using the matching operator . + properties: + effect: + description: |- + Effect indicates the taint effect to match. Empty means match all taint effects. + When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute. + type: string + key: + description: |- + Key is the taint key that the toleration applies to. Empty means match all taint keys. + If the key is empty, operator must be Exists; this combination means to match all values and all keys. + type: string + operator: + description: |- + Operator represents a key's relationship to the value. + Valid operators are Exists and Equal. Defaults to Equal. + Exists is equivalent to wildcard for value, so that a pod can + tolerate all taints of a particular category. + type: string + tolerationSeconds: + description: |- + TolerationSeconds represents the period of time the toleration (which must be + of effect NoExecute, otherwise this field is ignored) tolerates the taint. By default, + it is not set, which means tolerate the taint forever (do not evict). Zero and + negative values will be treated as 0 (evict immediately) by the system. + format: int64 + type: integer + value: + description: |- + Value is the taint value the toleration matches to. + If the operator is Exists, the value should be empty, otherwise just a regular string. + type: string + type: object + type: array + useVolumeSnapshot: + description: UseSnapshot is to check whether volume snapshot + is enabled under velero component + type: boolean + vaultConfigurations: + description: Vaults are the vault configurations + items: + description: Vault is the configuration for a vault instance + struct + properties: + address: + description: Address is the address for this vault + type: string + certificateAuthority: + description: CertificateAuthority is the base64-encoded + certificate authority for validaitng the vault certificate + type: string + clientCertificate: + description: ClientCertificate is the base64-encoded + certificate for connecting to vault + type: string + clientKey: + description: ClientKey validates is the base64-encoded + certificate key for connecting to vault + type: string + identifier: + description: Identifier is the identifier for this vault + type: string + role: + description: Role is the role for this vault + type: string + skipCertificateValidation: + description: SkipCertificateValidation validates the + vault server certificate or not + type: boolean + type: object + type: array + veleroNamespace: + description: VeleroNamespace is the namespace that Velero + is installed in + type: string + type: object + replicas: + description: Replicas is the count of controllers for Controller + plugin + format: int32 + type: integer + sideCars: + description: SideCars is the specification for CSI sidecar containers + items: + description: ContainerTemplate template properties: args: description: Args is the set of arguments for the container @@ -535,90 +1725,74 @@ spec: type: string type: array authorizationController: - description: - AuthorizationController is the image tag for + description: AuthorizationController is the image tag for the container type: string authorizationControllerReplicas: - description: - AuthorizationControllerReplicas is the number + description: AuthorizationControllerReplicas is the number of replicas for the authorization controller deployment type: integer certificate: - description: - Certificate is a certificate used for a certificate/private-key + description: Certificate is a certificate used for a certificate/private-key pair type: string certificateAuthority: - description: - CertificateAuthority is a certificate authority + description: CertificateAuthority is a certificate authority used to validate a certificate type: string commander: description: Commander is the image tag for the Container type: string controllerReconcileInterval: - description: - The interval which the reconcile of each controller + description: The interval which the reconcile of each controller is run type: string credentials: - description: - ComponentCred is to store the velero credential + description: ComponentCred is to store the velero credential contents items: description: Credential struct properties: createWithInstall: - description: - CreateWithInstall is used to indicate wether - or not to create a secret for objectstore + description: CreateWithInstall is used to indicate + wether or not to create a secret for objectstore type: boolean name: - description: - Name is the name of secret which contains + description: Name is the name of secret which contains credentials to access objectstore type: string secretContents: - description: - SecretContents contains credentials to + description: SecretContents contains credentials to access objectstore properties: aws_access_key_id: - description: - AccessKeyID is a name of key ID to + description: AccessKeyID is a name of key ID to access objectstore type: string aws_secret_access_key: - description: - AccessKey contains the key to access + description: AccessKey contains the key to access objectstore type: string type: object type: object type: array deployNodeAgent: - description: - DeployNodeAgent is to enable/disable node-agent + description: DeployNodeAgent is to enable/disable node-agent services type: boolean enabled: - description: - Enabled is used to indicate wether or not to + description: Enabled is used to indicate wether or not to deploy a module type: boolean envs: - description: - Envs is the set of environment variables for + description: Envs is the set of environment variables for the container items: - description: - EnvVar represents an environment variable present - in a Container. + description: EnvVar represents an environment variable + present in a Container. properties: name: - description: - Name of the environment variable. Must + description: Name of the environment variable. Must be a C_IDENTIFIER. type: string value: @@ -634,9 +1808,8 @@ spec: Defaults to "". type: string valueFrom: - description: - Source for the environment variable's value. - Cannot be used if value is not empty. + description: Source for the environment variable's + value. Cannot be used if value is not empty. properties: configMapKeyRef: description: Selects a key of a ConfigMap. @@ -656,12 +1829,11 @@ spec: TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896. type: string optional: - description: - Specify whether the ConfigMap or - its key must be defined + description: Specify whether the ConfigMap + or its key must be defined type: boolean required: - - key + - key type: object x-kubernetes-map-type: atomic fieldRef: @@ -670,17 +1842,15 @@ spec: spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs. properties: apiVersion: - description: - Version of the schema the FieldPath + description: Version of the schema the FieldPath is written in terms of, defaults to "v1". type: string fieldPath: - description: - Path of the field to select in + description: Path of the field to select in the specified API version. type: string required: - - fieldPath + - fieldPath type: object x-kubernetes-map-type: atomic resourceFieldRef: @@ -689,34 +1859,30 @@ spec: (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported. properties: containerName: - description: - "Container name: required for volumes, - optional for env vars" + description: 'Container name: required for + volumes, optional for env vars' type: string divisor: anyOf: - - type: integer - - type: string - description: - Specifies the output format of + - type: integer + - type: string + description: Specifies the output format of the exposed resources, defaults to "1" pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ x-kubernetes-int-or-string: true resource: - description: "Required: resource to select" + description: 'Required: resource to select' type: string required: - - resource + - resource type: object x-kubernetes-map-type: atomic secretKeyRef: - description: - Selects a key of a secret in the pod's - namespace + description: Selects a key of a secret in the + pod's namespace properties: key: - description: - The key of the secret to select + description: The key of the secret to select from. Must be a valid secret key. type: string name: @@ -731,28 +1897,27 @@ spec: TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896. type: string optional: - description: - Specify whether the Secret or its - key must be defined + description: Specify whether the Secret or + its key must be defined type: boolean required: - - key + - key type: object x-kubernetes-map-type: atomic type: object required: - - name + - name type: object type: array hostname: - description: Hostname is the authorization proxy server hostname + description: Hostname is the authorization proxy server + hostname type: string image: description: Image is the image tag for the Container type: string imagePullPolicy: - description: - ImagePullPolicy is the image pull policy for + description: ImagePullPolicy is the image pull policy for the image type: string kvEnginePath: @@ -760,12 +1925,12 @@ spec: path type: string leaderElection: - description: - LeaderElection is boolean flag to enable leader + description: LeaderElection is boolean flag to enable leader election type: boolean licenseName: - description: LicenseName is the name of the license for app-mobility + description: LicenseName is the name of the license for + app-mobility type: string name: description: Name is the name of Container @@ -778,8 +1943,7 @@ spec: Selector which must match a node's labels for the pod to be scheduled on that node. type: object objectStoreSecretName: - description: - ObjectStoreSecretName is the name of the secret + description: ObjectStoreSecretName is the name of the secret for the object store for app-mobility type: string opa: @@ -789,29 +1953,24 @@ spec: description: OpaKubeMgmt is the image tag for the Container type: string openTelemetryCollectorAddress: - description: - OpenTelemetryCollectorAddress is the address + description: OpenTelemetryCollectorAddress is the address of the OTLP receiving endpoint using gRPC type: string privateKey: - description: - PrivateKey is a private key used for a certificate/private-key + description: PrivateKey is a private key used for a certificate/private-key pair type: string proxyServerIngress: - description: - ProxyServerIngress is the authorization proxy + description: ProxyServerIngress is the authorization proxy server ingress configuration items: - description: - ProxyServerIngress is the authorization ingress + description: ProxyServerIngress is the authorization ingress configuration struct properties: annotations: additionalProperties: type: string - description: - Annotations is an unstructured key value + description: Annotations is an unstructured key value map that stores additional annotations for the ingress type: object hosts: @@ -828,8 +1987,7 @@ spec: description: ProxyService is the image tag for the Container type: string proxyServiceReplicas: - description: - ProxyServiceReplicas is the number of replicas + description: ProxyServiceReplicas is the number of replicas for the proxy service deployment type: integer redis: @@ -842,9 +2000,8 @@ spec: description: RedisName is the name of the redis statefulset type: string redisReplicas: - description: - RedisReplicas is the number of replicas for the - redis deployment + description: RedisReplicas is the number of replicas for + the redis deployment type: integer replicaCount: description: ReplicaCount is the replica count for app mobility @@ -853,43 +2010,37 @@ spec: description: RoleService is the image tag for the Container type: string roleServiceReplicas: - description: - RoleServiceReplicas is the number of replicas + description: RoleServiceReplicas is the number of replicas for the role service deployment type: integer sentinel: description: Sentinel is the name of the sentinel statefulSet type: string skipCertificateValidation: - description: - skipCertificateValidation is the flag to skip + description: skipCertificateValidation is the flag to skip certificate validation type: boolean storageService: description: StorageService is the image tag for the Container type: string storageServiceReplicas: - description: - StorageServiceReplicas is the number of replicas + description: StorageServiceReplicas is the number of replicas for storage service deployment type: integer storageclass: - description: - RedisStorageClass is the authorization proxy + description: RedisStorageClass is the authorization proxy server redis storage class for persistence type: string tenantService: description: TenantService is the image tag for the Container type: string tenantServiceReplicas: - description: - TenantServiceReplicas is the number of replicas + description: TenantServiceReplicas is the number of replicas for the tenant service deployment type: integer tolerations: - description: - Tolerations is the list of tolerations for the - driver pods + description: Tolerations is the list of tolerations for + the driver pods items: description: |- The pod this Toleration is attached to tolerates any taint that matches @@ -928,84 +2079,78 @@ spec: type: object type: array useVolumeSnapshot: - description: - UseSnapshot is to check whether volume snapshot + description: UseSnapshot is to check whether volume snapshot is enabled under velero component type: boolean vaultConfigurations: description: Vaults are the vault configurations items: - description: - Vault is the configuration for a vault instance + description: Vault is the configuration for a vault instance struct properties: address: description: Address is the address for this vault type: string certificateAuthority: - description: - CertificateAuthority is the base64-encoded + description: CertificateAuthority is the base64-encoded certificate authority for validaitng the vault certificate type: string clientCertificate: - description: - ClientCertificate is the base64-encoded + description: ClientCertificate is the base64-encoded certificate for connecting to vault type: string clientKey: - description: - ClientKey validates is the base64-encoded + description: ClientKey validates is the base64-encoded certificate key for connecting to vault type: string identifier: - description: Identifier is the identifier for this vault + description: Identifier is the identifier for this + vault type: string role: description: Role is the role for this vault type: string skipCertificateValidation: - description: - SkipCertificateValidation validates the + description: SkipCertificateValidation validates the vault server certificate or not type: boolean type: object type: array veleroNamespace: - description: - VeleroNamespace is the namespace that Velero + description: VeleroNamespace is the namespace that Velero is installed in type: string type: object - csiDriverSpec: - description: CSIDriverSpec is the specification for CSIDriver + type: array + snapshotClass: + description: SnapshotClass is the specification for Snapshot Classes + items: + description: SnapshotClass struct properties: - fSGroupPolicy: + name: + description: Name is the name of the Snapshot Class type: string - storageCapacity: - type: boolean + parameters: + additionalProperties: + type: string + description: Parameters is a map of driver specific parameters + for snapshot class + type: object type: object - csiDriverType: - description: - CSIDriverType is the CSI Driver type for Dell Technologies - - e.g, powermax, powerflex,... - type: string - dnsPolicy: - description: - DNSPolicy is the dnsPolicy of the daemonset for Node - plugin - type: string - forceRemoveDriver: - description: - ForceRemoveDriver is the boolean flag used to remove - driver deployment when CR is deleted - type: boolean - forceUpdate: - description: - ForceUpdate is the boolean flag used to force an - update of the driver instance - type: boolean - initContainers: - description: InitContainers is the specification for Driver InitContainers + type: array + tlsCertSecret: + description: TLSCertSecret is the name of the TLS Cert secret + type: string + type: object + modules: + description: Modules is list of Container Storage Module modules you + want to deploy + items: + description: Module defines the desired state of a ContainerStorageModule + properties: + components: + description: Components is the specification for CSM components + containers items: description: ContainerTemplate template properties: @@ -1015,90 +2160,74 @@ spec: type: string type: array authorizationController: - description: - AuthorizationController is the image tag for - the container + description: AuthorizationController is the image tag + for the container type: string authorizationControllerReplicas: - description: - AuthorizationControllerReplicas is the number + description: AuthorizationControllerReplicas is the number of replicas for the authorization controller deployment type: integer certificate: - description: - Certificate is a certificate used for a certificate/private-key + description: Certificate is a certificate used for a certificate/private-key pair type: string certificateAuthority: - description: - CertificateAuthority is a certificate authority + description: CertificateAuthority is a certificate authority used to validate a certificate type: string commander: description: Commander is the image tag for the Container type: string controllerReconcileInterval: - description: - The interval which the reconcile of each controller - is run + description: The interval which the reconcile of each + controller is run type: string credentials: - description: - ComponentCred is to store the velero credential + description: ComponentCred is to store the velero credential contents items: description: Credential struct properties: createWithInstall: - description: - CreateWithInstall is used to indicate + description: CreateWithInstall is used to indicate wether or not to create a secret for objectstore type: boolean name: - description: - Name is the name of secret which contains + description: Name is the name of secret which contains credentials to access objectstore type: string secretContents: - description: - SecretContents contains credentials to - access objectstore + description: SecretContents contains credentials + to access objectstore properties: aws_access_key_id: - description: - AccessKeyID is a name of key ID to - access objectstore + description: AccessKeyID is a name of key ID + to access objectstore type: string aws_secret_access_key: - description: - AccessKey contains the key to access + description: AccessKey contains the key to access objectstore type: string type: object type: object type: array deployNodeAgent: - description: - DeployNodeAgent is to enable/disable node-agent + description: DeployNodeAgent is to enable/disable node-agent services type: boolean enabled: - description: - Enabled is used to indicate wether or not to - deploy a module + description: Enabled is used to indicate wether or not + to deploy a module type: boolean envs: - description: - Envs is the set of environment variables for - the container + description: Envs is the set of environment variables + for the container items: - description: - EnvVar represents an environment variable + description: EnvVar represents an environment variable present in a Container. properties: name: - description: - Name of the environment variable. Must + description: Name of the environment variable. Must be a C_IDENTIFIER. type: string value: @@ -1114,8 +2243,7 @@ spec: Defaults to "". type: string valueFrom: - description: - Source for the environment variable's + description: Source for the environment variable's value. Cannot be used if value is not empty. properties: configMapKeyRef: @@ -1136,12 +2264,11 @@ spec: TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896. type: string optional: - description: - Specify whether the ConfigMap + description: Specify whether the ConfigMap or its key must be defined type: boolean required: - - key + - key type: object x-kubernetes-map-type: atomic fieldRef: @@ -1150,17 +2277,15 @@ spec: spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs. properties: apiVersion: - description: - Version of the schema the FieldPath + description: Version of the schema the FieldPath is written in terms of, defaults to "v1". type: string fieldPath: - description: - Path of the field to select in - the specified API version. + description: Path of the field to select + in the specified API version. type: string required: - - fieldPath + - fieldPath type: object x-kubernetes-map-type: atomic resourceFieldRef: @@ -1169,34 +2294,31 @@ spec: (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported. properties: containerName: - description: - "Container name: required for - volumes, optional for env vars" + description: 'Container name: required for + volumes, optional for env vars' type: string divisor: anyOf: - - type: integer - - type: string - description: - Specifies the output format of - the exposed resources, defaults to "1" + - type: integer + - type: string + description: Specifies the output format + of the exposed resources, defaults to + "1" pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ x-kubernetes-int-or-string: true resource: - description: "Required: resource to select" + description: 'Required: resource to select' type: string required: - - resource + - resource type: object x-kubernetes-map-type: atomic secretKeyRef: - description: - Selects a key of a secret in the + description: Selects a key of a secret in the pod's namespace properties: key: - description: - The key of the secret to select + description: The key of the secret to select from. Must be a valid secret key. type: string name: @@ -1211,44 +2333,39 @@ spec: TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896. type: string optional: - description: - Specify whether the Secret or - its key must be defined + description: Specify whether the Secret + or its key must be defined type: boolean required: - - key + - key type: object x-kubernetes-map-type: atomic type: object required: - - name + - name type: object type: array hostname: - description: - Hostname is the authorization proxy server + description: Hostname is the authorization proxy server hostname type: string image: description: Image is the image tag for the Container type: string imagePullPolicy: - description: - ImagePullPolicy is the image pull policy for - the image + description: ImagePullPolicy is the image pull policy + for the image type: string kvEnginePath: description: kvEnginePath is the Authorization vault secret path type: string leaderElection: - description: - LeaderElection is boolean flag to enable leader - election + description: LeaderElection is boolean flag to enable + leader election type: boolean licenseName: - description: - LicenseName is the name of the license for + description: LicenseName is the name of the license for app-mobility type: string name: @@ -1262,9 +2379,8 @@ spec: Selector which must match a node's labels for the pod to be scheduled on that node. type: object objectStoreSecretName: - description: - ObjectStoreSecretName is the name of the secret - for the object store for app-mobility + description: ObjectStoreSecretName is the name of the + secret for the object store for app-mobility type: string opa: description: Opa is the image tag for the Container @@ -1273,30 +2389,26 @@ spec: description: OpaKubeMgmt is the image tag for the Container type: string openTelemetryCollectorAddress: - description: - OpenTelemetryCollectorAddress is the address + description: OpenTelemetryCollectorAddress is the address of the OTLP receiving endpoint using gRPC type: string privateKey: - description: - PrivateKey is a private key used for a certificate/private-key + description: PrivateKey is a private key used for a certificate/private-key pair type: string proxyServerIngress: - description: - ProxyServerIngress is the authorization proxy + description: ProxyServerIngress is the authorization proxy server ingress configuration items: - description: - ProxyServerIngress is the authorization ingress - configuration struct + description: ProxyServerIngress is the authorization + ingress configuration struct properties: annotations: additionalProperties: type: string - description: - Annotations is an unstructured key value - map that stores additional annotations for the ingress + description: Annotations is an unstructured key + value map that stores additional annotations for + the ingress type: object hosts: description: Hosts is the hosts rules for the ingress @@ -1312,8 +2424,7 @@ spec: description: ProxyService is the image tag for the Container type: string proxyServiceReplicas: - description: - ProxyServiceReplicas is the number of replicas + description: ProxyServiceReplicas is the number of replicas for the proxy service deployment type: integer redis: @@ -1326,53 +2437,47 @@ spec: description: RedisName is the name of the redis statefulset type: string redisReplicas: - description: - RedisReplicas is the number of replicas for + description: RedisReplicas is the number of replicas for the redis deployment type: integer replicaCount: - description: ReplicaCount is the replica count for app mobility + description: ReplicaCount is the replica count for app + mobility type: string roleService: description: RoleService is the image tag for the Container type: string roleServiceReplicas: - description: - RoleServiceReplicas is the number of replicas + description: RoleServiceReplicas is the number of replicas for the role service deployment type: integer sentinel: description: Sentinel is the name of the sentinel statefulSet type: string skipCertificateValidation: - description: - skipCertificateValidation is the flag to skip - certificate validation + description: skipCertificateValidation is the flag to + skip certificate validation type: boolean storageService: description: StorageService is the image tag for the Container type: string storageServiceReplicas: - description: - StorageServiceReplicas is the number of replicas + description: StorageServiceReplicas is the number of replicas for storage service deployment type: integer storageclass: - description: - RedisStorageClass is the authorization proxy + description: RedisStorageClass is the authorization proxy server redis storage class for persistence type: string tenantService: description: TenantService is the image tag for the Container type: string tenantServiceReplicas: - description: - TenantServiceReplicas is the number of replicas + description: TenantServiceReplicas is the number of replicas for the tenant service deployment type: integer tolerations: - description: - Tolerations is the list of tolerations for + description: Tolerations is the list of tolerations for the driver pods items: description: |- @@ -1412,515 +2517,64 @@ spec: type: object type: array useVolumeSnapshot: - description: - UseSnapshot is to check whether volume snapshot + description: UseSnapshot is to check whether volume snapshot is enabled under velero component type: boolean vaultConfigurations: description: Vaults are the vault configurations items: - description: - Vault is the configuration for a vault instance - struct + description: Vault is the configuration for a vault + instance struct properties: address: description: Address is the address for this vault type: string certificateAuthority: - description: - CertificateAuthority is the base64-encoded - certificate authority for validaitng the vault certificate + description: CertificateAuthority is the base64-encoded + certificate authority for validaitng the vault + certificate type: string clientCertificate: - description: - ClientCertificate is the base64-encoded + description: ClientCertificate is the base64-encoded certificate for connecting to vault type: string clientKey: - description: - ClientKey validates is the base64-encoded + description: ClientKey validates is the base64-encoded certificate key for connecting to vault type: string identifier: - description: - Identifier is the identifier for this + description: Identifier is the identifier for this vault type: string role: description: Role is the role for this vault type: string skipCertificateValidation: - description: - SkipCertificateValidation validates the - vault server certificate or not - type: boolean - type: object - type: array - veleroNamespace: - description: - VeleroNamespace is the namespace that Velero - is installed in - type: string - type: object - type: array - node: - description: Node is the specification for Node plugin only - properties: - args: - description: Args is the set of arguments for the container - items: - type: string - type: array - authorizationController: - description: - AuthorizationController is the image tag for - the container - type: string - authorizationControllerReplicas: - description: - AuthorizationControllerReplicas is the number - of replicas for the authorization controller deployment - type: integer - certificate: - description: - Certificate is a certificate used for a certificate/private-key - pair - type: string - certificateAuthority: - description: - CertificateAuthority is a certificate authority - used to validate a certificate - type: string - commander: - description: Commander is the image tag for the Container - type: string - controllerReconcileInterval: - description: - The interval which the reconcile of each controller - is run - type: string - credentials: - description: - ComponentCred is to store the velero credential - contents - items: - description: Credential struct - properties: - createWithInstall: - description: - CreateWithInstall is used to indicate wether - or not to create a secret for objectstore - type: boolean - name: - description: - Name is the name of secret which contains - credentials to access objectstore - type: string - secretContents: - description: - SecretContents contains credentials to - access objectstore - properties: - aws_access_key_id: - description: - AccessKeyID is a name of key ID to - access objectstore - type: string - aws_secret_access_key: - description: - AccessKey contains the key to access - objectstore - type: string - type: object - type: object - type: array - deployNodeAgent: - description: - DeployNodeAgent is to enable/disable node-agent - services - type: boolean - enabled: - description: - Enabled is used to indicate wether or not to - deploy a module - type: boolean - envs: - description: - Envs is the set of environment variables for - the container - items: - description: - EnvVar represents an environment variable present - in a Container. - properties: - name: - description: - Name of the environment variable. Must - be a C_IDENTIFIER. - type: string - value: - description: |- - Variable references $(VAR_NAME) are expanded - using the previously defined environment variables in the container and - any service environment variables. If a variable cannot be resolved, - the reference in the input string will be unchanged. Double $$ are reduced - to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. - "$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)". - Escaped references will never be expanded, regardless of whether the variable - exists or not. - Defaults to "". - type: string - valueFrom: - description: - Source for the environment variable's value. - Cannot be used if value is not empty. - properties: - configMapKeyRef: - description: Selects a key of a ConfigMap. - properties: - key: - description: The key to select. - type: string - name: - default: "" - description: |- - Name of the referent. - This field is effectively required, but due to backwards compatibility is - allowed to be empty. Instances of this type with an empty value here are - almost certainly wrong. - TODO: Add other useful fields. apiVersion, kind, uid? - More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names - TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896. - type: string - optional: - description: - Specify whether the ConfigMap or - its key must be defined - type: boolean - required: - - key - type: object - x-kubernetes-map-type: atomic - fieldRef: - description: |- - Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`, - spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs. - properties: - apiVersion: - description: - Version of the schema the FieldPath - is written in terms of, defaults to "v1". - type: string - fieldPath: - description: - Path of the field to select in - the specified API version. - type: string - required: - - fieldPath - type: object - x-kubernetes-map-type: atomic - resourceFieldRef: - description: |- - Selects a resource of the container: only resources limits and requests - (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported. - properties: - containerName: - description: - "Container name: required for volumes, - optional for env vars" - type: string - divisor: - anyOf: - - type: integer - - type: string - description: - Specifies the output format of - the exposed resources, defaults to "1" - pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ - x-kubernetes-int-or-string: true - resource: - description: "Required: resource to select" - type: string - required: - - resource - type: object - x-kubernetes-map-type: atomic - secretKeyRef: - description: - Selects a key of a secret in the pod's - namespace - properties: - key: - description: - The key of the secret to select - from. Must be a valid secret key. - type: string - name: - default: "" - description: |- - Name of the referent. - This field is effectively required, but due to backwards compatibility is - allowed to be empty. Instances of this type with an empty value here are - almost certainly wrong. - TODO: Add other useful fields. apiVersion, kind, uid? - More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names - TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896. - type: string - optional: - description: - Specify whether the Secret or its - key must be defined - type: boolean - required: - - key - type: object - x-kubernetes-map-type: atomic - type: object - required: - - name - type: object - type: array - hostname: - description: Hostname is the authorization proxy server hostname - type: string - image: - description: Image is the image tag for the Container - type: string - imagePullPolicy: - description: - ImagePullPolicy is the image pull policy for - the image - type: string - kvEnginePath: - description: kvEnginePath is the Authorization vault secret - path - type: string - leaderElection: - description: - LeaderElection is boolean flag to enable leader - election - type: boolean - licenseName: - description: LicenseName is the name of the license for app-mobility - type: string - name: - description: Name is the name of Container - type: string - nodeSelector: - additionalProperties: - type: string - description: |- - NodeSelector is a selector which must be true for the pod to fit on a node. - Selector which must match a node's labels for the pod to be scheduled on that node. - type: object - objectStoreSecretName: - description: - ObjectStoreSecretName is the name of the secret - for the object store for app-mobility - type: string - opa: - description: Opa is the image tag for the Container - type: string - opaKubeMgmt: - description: OpaKubeMgmt is the image tag for the Container - type: string - openTelemetryCollectorAddress: - description: - OpenTelemetryCollectorAddress is the address - of the OTLP receiving endpoint using gRPC - type: string - privateKey: - description: - PrivateKey is a private key used for a certificate/private-key - pair - type: string - proxyServerIngress: - description: - ProxyServerIngress is the authorization proxy - server ingress configuration - items: - description: - ProxyServerIngress is the authorization ingress - configuration struct - properties: - annotations: - additionalProperties: - type: string - description: - Annotations is an unstructured key value - map that stores additional annotations for the ingress - type: object - hosts: - description: Hosts is the hosts rules for the ingress - items: - type: string - type: array - ingressClassName: - description: IngressClassName is the ingressClassName - type: string - type: object - type: array - proxyService: - description: ProxyService is the image tag for the Container - type: string - proxyServiceReplicas: - description: - ProxyServiceReplicas is the number of replicas - for the proxy service deployment - type: integer - redis: - description: Redis is the image tag for the Container - type: string - redisCommander: - description: RedisCommander is the name of the redis deployment - type: string - redisName: - description: RedisName is the name of the redis statefulset - type: string - redisReplicas: - description: - RedisReplicas is the number of replicas for the - redis deployment - type: integer - replicaCount: - description: ReplicaCount is the replica count for app mobility - type: string - roleService: - description: RoleService is the image tag for the Container - type: string - roleServiceReplicas: - description: - RoleServiceReplicas is the number of replicas - for the role service deployment - type: integer - sentinel: - description: Sentinel is the name of the sentinel statefulSet - type: string - skipCertificateValidation: - description: - skipCertificateValidation is the flag to skip - certificate validation - type: boolean - storageService: - description: StorageService is the image tag for the Container - type: string - storageServiceReplicas: - description: - StorageServiceReplicas is the number of replicas - for storage service deployment - type: integer - storageclass: - description: - RedisStorageClass is the authorization proxy - server redis storage class for persistence - type: string - tenantService: - description: TenantService is the image tag for the Container - type: string - tenantServiceReplicas: - description: - TenantServiceReplicas is the number of replicas - for the tenant service deployment - type: integer - tolerations: - description: - Tolerations is the list of tolerations for the - driver pods - items: - description: |- - The pod this Toleration is attached to tolerates any taint that matches - the triple using the matching operator . - properties: - effect: - description: |- - Effect indicates the taint effect to match. Empty means match all taint effects. - When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute. - type: string - key: - description: |- - Key is the taint key that the toleration applies to. Empty means match all taint keys. - If the key is empty, operator must be Exists; this combination means to match all values and all keys. - type: string - operator: - description: |- - Operator represents a key's relationship to the value. - Valid operators are Exists and Equal. Defaults to Equal. - Exists is equivalent to wildcard for value, so that a pod can - tolerate all taints of a particular category. - type: string - tolerationSeconds: - description: |- - TolerationSeconds represents the period of time the toleration (which must be - of effect NoExecute, otherwise this field is ignored) tolerates the taint. By default, - it is not set, which means tolerate the taint forever (do not evict). Zero and - negative values will be treated as 0 (evict immediately) by the system. - format: int64 - type: integer - value: - description: |- - Value is the taint value the toleration matches to. - If the operator is Exists, the value should be empty, otherwise just a regular string. - type: string - type: object - type: array - useVolumeSnapshot: - description: - UseSnapshot is to check whether volume snapshot - is enabled under velero component - type: boolean - vaultConfigurations: - description: Vaults are the vault configurations - items: - description: - Vault is the configuration for a vault instance - struct - properties: - address: - description: Address is the address for this vault - type: string - certificateAuthority: - description: - CertificateAuthority is the base64-encoded - certificate authority for validaitng the vault certificate - type: string - clientCertificate: - description: - ClientCertificate is the base64-encoded - certificate for connecting to vault - type: string - clientKey: - description: - ClientKey validates is the base64-encoded - certificate key for connecting to vault - type: string - identifier: - description: Identifier is the identifier for this vault - type: string - role: - description: Role is the role for this vault - type: string - skipCertificateValidation: - description: - SkipCertificateValidation validates the - vault server certificate or not - type: boolean - type: object - type: array - veleroNamespace: - description: - VeleroNamespace is the namespace that Velero - is installed in - type: string - type: object - replicas: - description: - Replicas is the count of controllers for Controller - plugin - format: int32 - type: integer - sideCars: - description: SideCars is the specification for CSI sidecar containers + description: SkipCertificateValidation validates + the vault server certificate or not + type: boolean + type: object + type: array + veleroNamespace: + description: VeleroNamespace is the namespace that Velero + is installed in + type: string + type: object + type: array + configVersion: + description: ConfigVersion is the configuration version of the + module + type: string + enabled: + description: Enabled is used to indicate whether or not to deploy + a module + type: boolean + forceRemoveModule: + description: ForceRemoveModule is the boolean flag used to remove + authorization proxy server deployment when CR is deleted + type: boolean + initContainer: + description: InitContainer is the specification for Module InitContainer items: description: ContainerTemplate template properties: @@ -1930,90 +2584,74 @@ spec: type: string type: array authorizationController: - description: - AuthorizationController is the image tag for - the container + description: AuthorizationController is the image tag + for the container type: string authorizationControllerReplicas: - description: - AuthorizationControllerReplicas is the number + description: AuthorizationControllerReplicas is the number of replicas for the authorization controller deployment type: integer certificate: - description: - Certificate is a certificate used for a certificate/private-key + description: Certificate is a certificate used for a certificate/private-key pair type: string certificateAuthority: - description: - CertificateAuthority is a certificate authority + description: CertificateAuthority is a certificate authority used to validate a certificate type: string commander: description: Commander is the image tag for the Container type: string controllerReconcileInterval: - description: - The interval which the reconcile of each controller - is run + description: The interval which the reconcile of each + controller is run type: string credentials: - description: - ComponentCred is to store the velero credential + description: ComponentCred is to store the velero credential contents items: description: Credential struct properties: createWithInstall: - description: - CreateWithInstall is used to indicate + description: CreateWithInstall is used to indicate wether or not to create a secret for objectstore type: boolean name: - description: - Name is the name of secret which contains + description: Name is the name of secret which contains credentials to access objectstore type: string secretContents: - description: - SecretContents contains credentials to - access objectstore + description: SecretContents contains credentials + to access objectstore properties: aws_access_key_id: - description: - AccessKeyID is a name of key ID to - access objectstore + description: AccessKeyID is a name of key ID + to access objectstore type: string aws_secret_access_key: - description: - AccessKey contains the key to access + description: AccessKey contains the key to access objectstore type: string type: object type: object type: array deployNodeAgent: - description: - DeployNodeAgent is to enable/disable node-agent + description: DeployNodeAgent is to enable/disable node-agent services type: boolean enabled: - description: - Enabled is used to indicate wether or not to - deploy a module + description: Enabled is used to indicate wether or not + to deploy a module type: boolean envs: - description: - Envs is the set of environment variables for - the container + description: Envs is the set of environment variables + for the container items: - description: - EnvVar represents an environment variable + description: EnvVar represents an environment variable present in a Container. properties: name: - description: - Name of the environment variable. Must + description: Name of the environment variable. Must be a C_IDENTIFIER. type: string value: @@ -2029,8 +2667,7 @@ spec: Defaults to "". type: string valueFrom: - description: - Source for the environment variable's + description: Source for the environment variable's value. Cannot be used if value is not empty. properties: configMapKeyRef: @@ -2051,12 +2688,11 @@ spec: TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896. type: string optional: - description: - Specify whether the ConfigMap + description: Specify whether the ConfigMap or its key must be defined type: boolean required: - - key + - key type: object x-kubernetes-map-type: atomic fieldRef: @@ -2065,17 +2701,15 @@ spec: spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs. properties: apiVersion: - description: - Version of the schema the FieldPath + description: Version of the schema the FieldPath is written in terms of, defaults to "v1". type: string fieldPath: - description: - Path of the field to select in - the specified API version. + description: Path of the field to select + in the specified API version. type: string required: - - fieldPath + - fieldPath type: object x-kubernetes-map-type: atomic resourceFieldRef: @@ -2084,34 +2718,31 @@ spec: (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported. properties: containerName: - description: - "Container name: required for - volumes, optional for env vars" + description: 'Container name: required for + volumes, optional for env vars' type: string divisor: anyOf: - - type: integer - - type: string - description: - Specifies the output format of - the exposed resources, defaults to "1" + - type: integer + - type: string + description: Specifies the output format + of the exposed resources, defaults to + "1" pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ x-kubernetes-int-or-string: true resource: - description: "Required: resource to select" + description: 'Required: resource to select' type: string required: - - resource + - resource type: object x-kubernetes-map-type: atomic secretKeyRef: - description: - Selects a key of a secret in the + description: Selects a key of a secret in the pod's namespace properties: key: - description: - The key of the secret to select + description: The key of the secret to select from. Must be a valid secret key. type: string name: @@ -2126,44 +2757,39 @@ spec: TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896. type: string optional: - description: - Specify whether the Secret or - its key must be defined + description: Specify whether the Secret + or its key must be defined type: boolean required: - - key + - key type: object x-kubernetes-map-type: atomic type: object required: - - name + - name type: object type: array hostname: - description: - Hostname is the authorization proxy server + description: Hostname is the authorization proxy server hostname type: string image: description: Image is the image tag for the Container type: string imagePullPolicy: - description: - ImagePullPolicy is the image pull policy for - the image + description: ImagePullPolicy is the image pull policy + for the image type: string kvEnginePath: description: kvEnginePath is the Authorization vault secret path type: string leaderElection: - description: - LeaderElection is boolean flag to enable leader - election + description: LeaderElection is boolean flag to enable + leader election type: boolean licenseName: - description: - LicenseName is the name of the license for + description: LicenseName is the name of the license for app-mobility type: string name: @@ -2177,9 +2803,8 @@ spec: Selector which must match a node's labels for the pod to be scheduled on that node. type: object objectStoreSecretName: - description: - ObjectStoreSecretName is the name of the secret - for the object store for app-mobility + description: ObjectStoreSecretName is the name of the + secret for the object store for app-mobility type: string opa: description: Opa is the image tag for the Container @@ -2188,30 +2813,26 @@ spec: description: OpaKubeMgmt is the image tag for the Container type: string openTelemetryCollectorAddress: - description: - OpenTelemetryCollectorAddress is the address + description: OpenTelemetryCollectorAddress is the address of the OTLP receiving endpoint using gRPC type: string privateKey: - description: - PrivateKey is a private key used for a certificate/private-key + description: PrivateKey is a private key used for a certificate/private-key pair type: string proxyServerIngress: - description: - ProxyServerIngress is the authorization proxy + description: ProxyServerIngress is the authorization proxy server ingress configuration items: - description: - ProxyServerIngress is the authorization ingress - configuration struct + description: ProxyServerIngress is the authorization + ingress configuration struct properties: annotations: additionalProperties: type: string - description: - Annotations is an unstructured key value - map that stores additional annotations for the ingress + description: Annotations is an unstructured key + value map that stores additional annotations for + the ingress type: object hosts: description: Hosts is the hosts rules for the ingress @@ -2227,8 +2848,7 @@ spec: description: ProxyService is the image tag for the Container type: string proxyServiceReplicas: - description: - ProxyServiceReplicas is the number of replicas + description: ProxyServiceReplicas is the number of replicas for the proxy service deployment type: integer redis: @@ -2241,53 +2861,47 @@ spec: description: RedisName is the name of the redis statefulset type: string redisReplicas: - description: - RedisReplicas is the number of replicas for + description: RedisReplicas is the number of replicas for the redis deployment type: integer replicaCount: - description: ReplicaCount is the replica count for app mobility + description: ReplicaCount is the replica count for app + mobility type: string roleService: description: RoleService is the image tag for the Container type: string roleServiceReplicas: - description: - RoleServiceReplicas is the number of replicas + description: RoleServiceReplicas is the number of replicas for the role service deployment type: integer sentinel: description: Sentinel is the name of the sentinel statefulSet type: string skipCertificateValidation: - description: - skipCertificateValidation is the flag to skip - certificate validation + description: skipCertificateValidation is the flag to + skip certificate validation type: boolean storageService: description: StorageService is the image tag for the Container type: string storageServiceReplicas: - description: - StorageServiceReplicas is the number of replicas + description: StorageServiceReplicas is the number of replicas for storage service deployment type: integer storageclass: - description: - RedisStorageClass is the authorization proxy + description: RedisStorageClass is the authorization proxy server redis storage class for persistence type: string tenantService: description: TenantService is the image tag for the Container type: string tenantServiceReplicas: - description: - TenantServiceReplicas is the number of replicas + description: TenantServiceReplicas is the number of replicas for the tenant service deployment type: integer tolerations: - description: - Tolerations is the list of tolerations for + description: Tolerations is the list of tolerations for the driver pods items: description: |- @@ -2327,1070 +2941,89 @@ spec: type: object type: array useVolumeSnapshot: - description: - UseSnapshot is to check whether volume snapshot + description: UseSnapshot is to check whether volume snapshot is enabled under velero component type: boolean vaultConfigurations: description: Vaults are the vault configurations items: - description: - Vault is the configuration for a vault instance - struct + description: Vault is the configuration for a vault + instance struct properties: address: description: Address is the address for this vault type: string certificateAuthority: - description: - CertificateAuthority is the base64-encoded - certificate authority for validaitng the vault certificate + description: CertificateAuthority is the base64-encoded + certificate authority for validaitng the vault + certificate type: string clientCertificate: - description: - ClientCertificate is the base64-encoded + description: ClientCertificate is the base64-encoded certificate for connecting to vault type: string clientKey: - description: - ClientKey validates is the base64-encoded + description: ClientKey validates is the base64-encoded certificate key for connecting to vault type: string identifier: - description: - Identifier is the identifier for this + description: Identifier is the identifier for this vault type: string role: description: Role is the role for this vault type: string skipCertificateValidation: - description: - SkipCertificateValidation validates the - vault server certificate or not + description: SkipCertificateValidation validates + the vault server certificate or not type: boolean type: object type: array veleroNamespace: - description: - VeleroNamespace is the namespace that Velero + description: VeleroNamespace is the namespace that Velero is installed in type: string type: object type: array - snapshotClass: - description: SnapshotClass is the specification for Snapshot Classes - items: - description: SnapshotClass struct - properties: - name: - description: Name is the name of the Snapshot Class - type: string - parameters: - additionalProperties: - type: string - description: - Parameters is a map of driver specific parameters - for snapshot class - type: object - type: object - type: array - tlsCertSecret: - description: TLSCertSecret is the name of the TLS Cert secret - type: string - type: object - modules: - description: - Modules is list of Container Storage Module modules you - want to deploy - items: - description: Module defines the desired state of a ContainerStorageModule - properties: - components: - description: - Components is the specification for CSM components - containers - items: - description: ContainerTemplate template - properties: - args: - description: Args is the set of arguments for the container - items: - type: string - type: array - authorizationController: - description: - AuthorizationController is the image tag - for the container - type: string - authorizationControllerReplicas: - description: - AuthorizationControllerReplicas is the number - of replicas for the authorization controller deployment - type: integer - certificate: - description: - Certificate is a certificate used for a certificate/private-key - pair - type: string - certificateAuthority: - description: - CertificateAuthority is a certificate authority - used to validate a certificate - type: string - commander: - description: Commander is the image tag for the Container - type: string - controllerReconcileInterval: - description: - The interval which the reconcile of each - controller is run - type: string - credentials: - description: - ComponentCred is to store the velero credential - contents - items: - description: Credential struct - properties: - createWithInstall: - description: - CreateWithInstall is used to indicate - wether or not to create a secret for objectstore - type: boolean - name: - description: - Name is the name of secret which contains - credentials to access objectstore - type: string - secretContents: - description: - SecretContents contains credentials - to access objectstore - properties: - aws_access_key_id: - description: - AccessKeyID is a name of key ID - to access objectstore - type: string - aws_secret_access_key: - description: - AccessKey contains the key to access - objectstore - type: string - type: object - type: object - type: array - deployNodeAgent: - description: - DeployNodeAgent is to enable/disable node-agent - services - type: boolean - enabled: - description: - Enabled is used to indicate wether or not - to deploy a module - type: boolean - envs: - description: - Envs is the set of environment variables - for the container - items: - description: - EnvVar represents an environment variable - present in a Container. - properties: - name: - description: - Name of the environment variable. Must - be a C_IDENTIFIER. - type: string - value: - description: |- - Variable references $(VAR_NAME) are expanded - using the previously defined environment variables in the container and - any service environment variables. If a variable cannot be resolved, - the reference in the input string will be unchanged. Double $$ are reduced - to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. - "$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)". - Escaped references will never be expanded, regardless of whether the variable - exists or not. - Defaults to "". - type: string - valueFrom: - description: - Source for the environment variable's - value. Cannot be used if value is not empty. - properties: - configMapKeyRef: - description: Selects a key of a ConfigMap. - properties: - key: - description: The key to select. - type: string - name: - default: "" - description: |- - Name of the referent. - This field is effectively required, but due to backwards compatibility is - allowed to be empty. Instances of this type with an empty value here are - almost certainly wrong. - TODO: Add other useful fields. apiVersion, kind, uid? - More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names - TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896. - type: string - optional: - description: - Specify whether the ConfigMap - or its key must be defined - type: boolean - required: - - key - type: object - x-kubernetes-map-type: atomic - fieldRef: - description: |- - Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`, - spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs. - properties: - apiVersion: - description: - Version of the schema the FieldPath - is written in terms of, defaults to "v1". - type: string - fieldPath: - description: - Path of the field to select - in the specified API version. - type: string - required: - - fieldPath - type: object - x-kubernetes-map-type: atomic - resourceFieldRef: - description: |- - Selects a resource of the container: only resources limits and requests - (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported. - properties: - containerName: - description: - "Container name: required for - volumes, optional for env vars" - type: string - divisor: - anyOf: - - type: integer - - type: string - description: - Specifies the output format - of the exposed resources, defaults to - "1" - pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ - x-kubernetes-int-or-string: true - resource: - description: "Required: resource to select" - type: string - required: - - resource - type: object - x-kubernetes-map-type: atomic - secretKeyRef: - description: - Selects a key of a secret in the - pod's namespace - properties: - key: - description: - The key of the secret to select - from. Must be a valid secret key. - type: string - name: - default: "" - description: |- - Name of the referent. - This field is effectively required, but due to backwards compatibility is - allowed to be empty. Instances of this type with an empty value here are - almost certainly wrong. - TODO: Add other useful fields. apiVersion, kind, uid? - More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names - TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896. - type: string - optional: - description: - Specify whether the Secret - or its key must be defined - type: boolean - required: - - key - type: object - x-kubernetes-map-type: atomic - type: object - required: - - name - type: object - type: array - hostname: - description: - Hostname is the authorization proxy server - hostname - type: string - image: - description: Image is the image tag for the Container - type: string - imagePullPolicy: - description: - ImagePullPolicy is the image pull policy - for the image - type: string - kvEnginePath: - description: kvEnginePath is the Authorization vault secret - path - type: string - leaderElection: - description: - LeaderElection is boolean flag to enable - leader election - type: boolean - licenseName: - description: - LicenseName is the name of the license for - app-mobility - type: string - name: - description: Name is the name of Container - type: string - nodeSelector: - additionalProperties: - type: string - description: |- - NodeSelector is a selector which must be true for the pod to fit on a node. - Selector which must match a node's labels for the pod to be scheduled on that node. - type: object - objectStoreSecretName: - description: - ObjectStoreSecretName is the name of the - secret for the object store for app-mobility - type: string - opa: - description: Opa is the image tag for the Container - type: string - opaKubeMgmt: - description: OpaKubeMgmt is the image tag for the Container - type: string - openTelemetryCollectorAddress: - description: - OpenTelemetryCollectorAddress is the address - of the OTLP receiving endpoint using gRPC - type: string - privateKey: - description: - PrivateKey is a private key used for a certificate/private-key - pair - type: string - proxyServerIngress: - description: - ProxyServerIngress is the authorization proxy - server ingress configuration - items: - description: - ProxyServerIngress is the authorization - ingress configuration struct - properties: - annotations: - additionalProperties: - type: string - description: - Annotations is an unstructured key - value map that stores additional annotations for - the ingress - type: object - hosts: - description: Hosts is the hosts rules for the ingress - items: - type: string - type: array - ingressClassName: - description: IngressClassName is the ingressClassName - type: string - type: object - type: array - proxyService: - description: ProxyService is the image tag for the Container - type: string - proxyServiceReplicas: - description: - ProxyServiceReplicas is the number of replicas - for the proxy service deployment - type: integer - redis: - description: Redis is the image tag for the Container - type: string - redisCommander: - description: RedisCommander is the name of the redis deployment - type: string - redisName: - description: RedisName is the name of the redis statefulset - type: string - redisReplicas: - description: - RedisReplicas is the number of replicas for - the redis deployment - type: integer - replicaCount: - description: - ReplicaCount is the replica count for app - mobility - type: string - roleService: - description: RoleService is the image tag for the Container - type: string - roleServiceReplicas: - description: - RoleServiceReplicas is the number of replicas - for the role service deployment - type: integer - sentinel: - description: Sentinel is the name of the sentinel statefulSet - type: string - skipCertificateValidation: - description: - skipCertificateValidation is the flag to - skip certificate validation - type: boolean - storageService: - description: StorageService is the image tag for the Container - type: string - storageServiceReplicas: - description: - StorageServiceReplicas is the number of replicas - for storage service deployment - type: integer - storageclass: - description: - RedisStorageClass is the authorization proxy - server redis storage class for persistence - type: string - tenantService: - description: TenantService is the image tag for the Container - type: string - tenantServiceReplicas: - description: - TenantServiceReplicas is the number of replicas - for the tenant service deployment - type: integer - tolerations: - description: - Tolerations is the list of tolerations for - the driver pods - items: - description: |- - The pod this Toleration is attached to tolerates any taint that matches - the triple using the matching operator . - properties: - effect: - description: |- - Effect indicates the taint effect to match. Empty means match all taint effects. - When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute. - type: string - key: - description: |- - Key is the taint key that the toleration applies to. Empty means match all taint keys. - If the key is empty, operator must be Exists; this combination means to match all values and all keys. - type: string - operator: - description: |- - Operator represents a key's relationship to the value. - Valid operators are Exists and Equal. Defaults to Equal. - Exists is equivalent to wildcard for value, so that a pod can - tolerate all taints of a particular category. - type: string - tolerationSeconds: - description: |- - TolerationSeconds represents the period of time the toleration (which must be - of effect NoExecute, otherwise this field is ignored) tolerates the taint. By default, - it is not set, which means tolerate the taint forever (do not evict). Zero and - negative values will be treated as 0 (evict immediately) by the system. - format: int64 - type: integer - value: - description: |- - Value is the taint value the toleration matches to. - If the operator is Exists, the value should be empty, otherwise just a regular string. - type: string - type: object - type: array - useVolumeSnapshot: - description: - UseSnapshot is to check whether volume snapshot - is enabled under velero component - type: boolean - vaultConfigurations: - description: Vaults are the vault configurations - items: - description: - Vault is the configuration for a vault - instance struct - properties: - address: - description: Address is the address for this vault - type: string - certificateAuthority: - description: - CertificateAuthority is the base64-encoded - certificate authority for validaitng the vault - certificate - type: string - clientCertificate: - description: - ClientCertificate is the base64-encoded - certificate for connecting to vault - type: string - clientKey: - description: - ClientKey validates is the base64-encoded - certificate key for connecting to vault - type: string - identifier: - description: - Identifier is the identifier for this - vault - type: string - role: - description: Role is the role for this vault - type: string - skipCertificateValidation: - description: - SkipCertificateValidation validates - the vault server certificate or not - type: boolean - type: object - type: array - veleroNamespace: - description: - VeleroNamespace is the namespace that Velero - is installed in - type: string - type: object - type: array - configVersion: - description: - ConfigVersion is the configuration version of the - module - type: string - enabled: - description: - Enabled is used to indicate whether or not to deploy - a module - type: boolean - forceRemoveModule: - description: - ForceRemoveModule is the boolean flag used to remove - authorization proxy server deployment when CR is deleted - type: boolean - initContainer: - description: InitContainer is the specification for Module InitContainer - items: - description: ContainerTemplate template - properties: - args: - description: Args is the set of arguments for the container - items: - type: string - type: array - authorizationController: - description: - AuthorizationController is the image tag - for the container - type: string - authorizationControllerReplicas: - description: - AuthorizationControllerReplicas is the number - of replicas for the authorization controller deployment - type: integer - certificate: - description: - Certificate is a certificate used for a certificate/private-key - pair - type: string - certificateAuthority: - description: - CertificateAuthority is a certificate authority - used to validate a certificate - type: string - commander: - description: Commander is the image tag for the Container - type: string - controllerReconcileInterval: - description: - The interval which the reconcile of each - controller is run - type: string - credentials: - description: - ComponentCred is to store the velero credential - contents - items: - description: Credential struct - properties: - createWithInstall: - description: - CreateWithInstall is used to indicate - wether or not to create a secret for objectstore - type: boolean - name: - description: - Name is the name of secret which contains - credentials to access objectstore - type: string - secretContents: - description: - SecretContents contains credentials - to access objectstore - properties: - aws_access_key_id: - description: - AccessKeyID is a name of key ID - to access objectstore - type: string - aws_secret_access_key: - description: - AccessKey contains the key to access - objectstore - type: string - type: object - type: object - type: array - deployNodeAgent: - description: - DeployNodeAgent is to enable/disable node-agent - services - type: boolean - enabled: - description: - Enabled is used to indicate wether or not - to deploy a module - type: boolean - envs: - description: - Envs is the set of environment variables - for the container - items: - description: - EnvVar represents an environment variable - present in a Container. - properties: - name: - description: - Name of the environment variable. Must - be a C_IDENTIFIER. - type: string - value: - description: |- - Variable references $(VAR_NAME) are expanded - using the previously defined environment variables in the container and - any service environment variables. If a variable cannot be resolved, - the reference in the input string will be unchanged. Double $$ are reduced - to a single $, which allows for escaping the $(VAR_NAME) syntax: i.e. - "$$(VAR_NAME)" will produce the string literal "$(VAR_NAME)". - Escaped references will never be expanded, regardless of whether the variable - exists or not. - Defaults to "". - type: string - valueFrom: - description: - Source for the environment variable's - value. Cannot be used if value is not empty. - properties: - configMapKeyRef: - description: Selects a key of a ConfigMap. - properties: - key: - description: The key to select. - type: string - name: - default: "" - description: |- - Name of the referent. - This field is effectively required, but due to backwards compatibility is - allowed to be empty. Instances of this type with an empty value here are - almost certainly wrong. - TODO: Add other useful fields. apiVersion, kind, uid? - More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names - TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896. - type: string - optional: - description: - Specify whether the ConfigMap - or its key must be defined - type: boolean - required: - - key - type: object - x-kubernetes-map-type: atomic - fieldRef: - description: |- - Selects a field of the pod: supports metadata.name, metadata.namespace, `metadata.labels['']`, `metadata.annotations['']`, - spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs. - properties: - apiVersion: - description: - Version of the schema the FieldPath - is written in terms of, defaults to "v1". - type: string - fieldPath: - description: - Path of the field to select - in the specified API version. - type: string - required: - - fieldPath - type: object - x-kubernetes-map-type: atomic - resourceFieldRef: - description: |- - Selects a resource of the container: only resources limits and requests - (limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage) are currently supported. - properties: - containerName: - description: - "Container name: required for - volumes, optional for env vars" - type: string - divisor: - anyOf: - - type: integer - - type: string - description: - Specifies the output format - of the exposed resources, defaults to - "1" - pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ - x-kubernetes-int-or-string: true - resource: - description: "Required: resource to select" - type: string - required: - - resource - type: object - x-kubernetes-map-type: atomic - secretKeyRef: - description: - Selects a key of a secret in the - pod's namespace - properties: - key: - description: - The key of the secret to select - from. Must be a valid secret key. - type: string - name: - default: "" - description: |- - Name of the referent. - This field is effectively required, but due to backwards compatibility is - allowed to be empty. Instances of this type with an empty value here are - almost certainly wrong. - TODO: Add other useful fields. apiVersion, kind, uid? - More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names - TODO: Drop `kubebuilder:default` when controller-gen doesn't need it https://github.com/kubernetes-sigs/kubebuilder/issues/3896. - type: string - optional: - description: - Specify whether the Secret - or its key must be defined - type: boolean - required: - - key - type: object - x-kubernetes-map-type: atomic - type: object - required: - - name - type: object - type: array - hostname: - description: - Hostname is the authorization proxy server - hostname - type: string - image: - description: Image is the image tag for the Container - type: string - imagePullPolicy: - description: - ImagePullPolicy is the image pull policy - for the image - type: string - kvEnginePath: - description: kvEnginePath is the Authorization vault secret - path - type: string - leaderElection: - description: - LeaderElection is boolean flag to enable - leader election - type: boolean - licenseName: - description: - LicenseName is the name of the license for - app-mobility - type: string - name: - description: Name is the name of Container - type: string - nodeSelector: - additionalProperties: - type: string - description: |- - NodeSelector is a selector which must be true for the pod to fit on a node. - Selector which must match a node's labels for the pod to be scheduled on that node. - type: object - objectStoreSecretName: - description: - ObjectStoreSecretName is the name of the - secret for the object store for app-mobility - type: string - opa: - description: Opa is the image tag for the Container - type: string - opaKubeMgmt: - description: OpaKubeMgmt is the image tag for the Container - type: string - openTelemetryCollectorAddress: - description: - OpenTelemetryCollectorAddress is the address - of the OTLP receiving endpoint using gRPC - type: string - privateKey: - description: - PrivateKey is a private key used for a certificate/private-key - pair - type: string - proxyServerIngress: - description: - ProxyServerIngress is the authorization proxy - server ingress configuration - items: - description: - ProxyServerIngress is the authorization - ingress configuration struct - properties: - annotations: - additionalProperties: - type: string - description: - Annotations is an unstructured key - value map that stores additional annotations for - the ingress - type: object - hosts: - description: Hosts is the hosts rules for the ingress - items: - type: string - type: array - ingressClassName: - description: IngressClassName is the ingressClassName - type: string - type: object - type: array - proxyService: - description: ProxyService is the image tag for the Container - type: string - proxyServiceReplicas: - description: - ProxyServiceReplicas is the number of replicas - for the proxy service deployment - type: integer - redis: - description: Redis is the image tag for the Container - type: string - redisCommander: - description: RedisCommander is the name of the redis deployment - type: string - redisName: - description: RedisName is the name of the redis statefulset - type: string - redisReplicas: - description: - RedisReplicas is the number of replicas for - the redis deployment - type: integer - replicaCount: - description: - ReplicaCount is the replica count for app - mobility - type: string - roleService: - description: RoleService is the image tag for the Container - type: string - roleServiceReplicas: - description: - RoleServiceReplicas is the number of replicas - for the role service deployment - type: integer - sentinel: - description: Sentinel is the name of the sentinel statefulSet - type: string - skipCertificateValidation: - description: - skipCertificateValidation is the flag to - skip certificate validation - type: boolean - storageService: - description: StorageService is the image tag for the Container - type: string - storageServiceReplicas: - description: - StorageServiceReplicas is the number of replicas - for storage service deployment - type: integer - storageclass: - description: - RedisStorageClass is the authorization proxy - server redis storage class for persistence - type: string - tenantService: - description: TenantService is the image tag for the Container - type: string - tenantServiceReplicas: - description: - TenantServiceReplicas is the number of replicas - for the tenant service deployment - type: integer - tolerations: - description: - Tolerations is the list of tolerations for - the driver pods - items: - description: |- - The pod this Toleration is attached to tolerates any taint that matches - the triple using the matching operator . - properties: - effect: - description: |- - Effect indicates the taint effect to match. Empty means match all taint effects. - When specified, allowed values are NoSchedule, PreferNoSchedule and NoExecute. - type: string - key: - description: |- - Key is the taint key that the toleration applies to. Empty means match all taint keys. - If the key is empty, operator must be Exists; this combination means to match all values and all keys. - type: string - operator: - description: |- - Operator represents a key's relationship to the value. - Valid operators are Exists and Equal. Defaults to Equal. - Exists is equivalent to wildcard for value, so that a pod can - tolerate all taints of a particular category. - type: string - tolerationSeconds: - description: |- - TolerationSeconds represents the period of time the toleration (which must be - of effect NoExecute, otherwise this field is ignored) tolerates the taint. By default, - it is not set, which means tolerate the taint forever (do not evict). Zero and - negative values will be treated as 0 (evict immediately) by the system. - format: int64 - type: integer - value: - description: |- - Value is the taint value the toleration matches to. - If the operator is Exists, the value should be empty, otherwise just a regular string. - type: string - type: object - type: array - useVolumeSnapshot: - description: - UseSnapshot is to check whether volume snapshot - is enabled under velero component - type: boolean - vaultConfigurations: - description: Vaults are the vault configurations - items: - description: - Vault is the configuration for a vault - instance struct - properties: - address: - description: Address is the address for this vault - type: string - certificateAuthority: - description: - CertificateAuthority is the base64-encoded - certificate authority for validaitng the vault - certificate - type: string - clientCertificate: - description: - ClientCertificate is the base64-encoded - certificate for connecting to vault - type: string - clientKey: - description: - ClientKey validates is the base64-encoded - certificate key for connecting to vault - type: string - identifier: - description: - Identifier is the identifier for this - vault - type: string - role: - description: Role is the role for this vault - type: string - skipCertificateValidation: - description: - SkipCertificateValidation validates - the vault server certificate or not - type: boolean - type: object - type: array - veleroNamespace: - description: - VeleroNamespace is the namespace that Velero - is installed in - type: string - type: object - type: array - name: - description: Name is name of ContainerStorageModule modules - type: string - type: object - type: array - type: object - status: - description: - ContainerStorageModuleStatus defines the observed state of - ContainerStorageModule - properties: - controllerStatus: - description: ControllerStatus is the status of Controller pods - properties: - available: - type: string - desired: - type: string - failed: - type: string - type: object - nodeStatus: - description: NodeStatus is the status of Controller pods - properties: - available: - type: string - desired: - type: string - failed: + name: + description: Name is name of ContainerStorageModule modules type: string type: object - state: - description: State is the state of the driver installation - type: string - type: object - type: object - served: true - storage: true - subresources: - status: {} + type: array + type: object + status: + description: ContainerStorageModuleStatus defines the observed state of + ContainerStorageModule + properties: + controllerStatus: + description: ControllerStatus is the status of Controller pods + properties: + available: + type: string + desired: + type: string + failed: + type: string + type: object + nodeStatus: + description: NodeStatus is the status of Controller pods + properties: + available: + type: string + desired: + type: string + failed: + type: string + type: object + state: + description: State is the state of the driver installation + type: string + type: object + type: object + served: true + storage: true + subresources: + status: {} status: acceptedNames: kind: "" diff --git a/operators/dell-csm-operator/1.7.0/tests/scorecard/config.yaml b/operators/dell-csm-operator/1.7.0/tests/scorecard/config.yaml index e6aa868bdf6..2cbf8825d2a 100644 --- a/operators/dell-csm-operator/1.7.0/tests/scorecard/config.yaml +++ b/operators/dell-csm-operator/1.7.0/tests/scorecard/config.yaml @@ -3,68 +3,68 @@ kind: Configuration metadata: name: config stages: - - parallel: true - tests: - - entrypoint: - - scorecard-test - - basic-check-spec - image: quay.io/operator-framework/scorecard-test:v1.13.1 - labels: - suite: basic - test: basic-check-spec-test - storage: - spec: - mountPath: {} - - entrypoint: - - scorecard-test - - olm-bundle-validation - image: quay.io/operator-framework/scorecard-test:v1.13.1 - labels: - suite: olm - test: olm-bundle-validation-test - storage: - spec: - mountPath: {} - - entrypoint: - - scorecard-test - - olm-crds-have-validation - image: quay.io/operator-framework/scorecard-test:v1.13.1 - labels: - suite: olm - test: olm-crds-have-validation-test - storage: - spec: - mountPath: {} - - entrypoint: - - scorecard-test - - olm-crds-have-resources - image: quay.io/operator-framework/scorecard-test:v1.13.1 - labels: - suite: olm - test: olm-crds-have-resources-test - storage: - spec: - mountPath: {} - - entrypoint: - - scorecard-test - - olm-spec-descriptors - image: quay.io/operator-framework/scorecard-test:v1.13.1 - labels: - suite: olm - test: olm-spec-descriptors-test - storage: - spec: - mountPath: {} - - entrypoint: - - scorecard-test - - olm-status-descriptors - image: quay.io/operator-framework/scorecard-test:v1.13.1 - labels: - suite: olm - test: olm-status-descriptors-test - storage: - spec: - mountPath: {} +- parallel: true + tests: + - entrypoint: + - scorecard-test + - basic-check-spec + image: quay.io/operator-framework/scorecard-test:v1.13.1 + labels: + suite: basic + test: basic-check-spec-test + storage: + spec: + mountPath: {} + - entrypoint: + - scorecard-test + - olm-bundle-validation + image: quay.io/operator-framework/scorecard-test:v1.13.1 + labels: + suite: olm + test: olm-bundle-validation-test + storage: + spec: + mountPath: {} + - entrypoint: + - scorecard-test + - olm-crds-have-validation + image: quay.io/operator-framework/scorecard-test:v1.13.1 + labels: + suite: olm + test: olm-crds-have-validation-test + storage: + spec: + mountPath: {} + - entrypoint: + - scorecard-test + - olm-crds-have-resources + image: quay.io/operator-framework/scorecard-test:v1.13.1 + labels: + suite: olm + test: olm-crds-have-resources-test + storage: + spec: + mountPath: {} + - entrypoint: + - scorecard-test + - olm-spec-descriptors + image: quay.io/operator-framework/scorecard-test:v1.13.1 + labels: + suite: olm + test: olm-spec-descriptors-test + storage: + spec: + mountPath: {} + - entrypoint: + - scorecard-test + - olm-status-descriptors + image: quay.io/operator-framework/scorecard-test:v1.13.1 + labels: + suite: olm + test: olm-status-descriptors-test + storage: + spec: + mountPath: {} storage: spec: mountPath: {}