apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: name: storageconfigs.operator.yugabyte.io spec: group: operator.yugabyte.io scope: Namespaced names: plural: storageconfigs singular: storageconfig kind: StorageConfig categories: - all - yugabyte versions: - name: v1alpha1 subresources: status: {} served: true storage: true schema: openAPIV3Schema: description: Custom resource definition for YugabyteDB backup storage configuration. type: object properties: status: description: 'Storage configuration status for the storage configuration custom resource. ' type: object properties: message: description: String log message from storage configuration controller. type: string success: description: 'Boolean indicating if the storage configuration was successfully created. ' type: boolean resourceUUID: description: Internal UUID of the storage configuration resource. type: string spec: type: object properties: config_type: description: Type of storage configuration to be created. Allowed values - STORAGE_S3, STORAGE_NFS, STORAGE_GCS, STORAGE_AZ type: string enum: - STORAGE_S3 - STORAGE_NFS - STORAGE_GCS - STORAGE_AZ x-kubernetes-validations: - message: Config type cannot be changed rule: self == oldSelf name: type: string description: Optional name of storage config for mapping to a YBA object. x-kubernetes-validations: - message: name cannot be changed rule: self == oldSelf data: type: object description: Data object to create storage configuration. properties: AWS_ACCESS_KEY_ID: description: AWS access key id for the S3 storage configuration. type: string AWS_SECRET_ACCESS_KEY: description: 'AWS secret access key for the S3 storage configuration. Deprecated, use aws_secret_access_key_secret instead ' type: string USE_IAM: description: Use IAM for storage account access. Valid for S3/GCS. type: boolean BACKUP_LOCATION: description: Backup location for the storage configuration. type: string x-kubernetes-validations: - message: BACKUP_LOCATION cannot be changed rule: self == oldSelf GCS_CREDENTIALS_JSON: description: 'GCS credentials JSON for the GCS storage configuration. Deprecated, use gcs_credentials_json_secret instead ' type: string AZURE_STORAGE_SAS_TOKEN: description: 'Azure SAS token for the Azure storage configuration. Deprecated, use azure_storage_sas_token_secret instead ' type: string AWS_HOST_BASE: description: 'Host of S3 bucket configuration. Valid for S3 compatible storages. ' type: string PATH_STYLE_ACCESS: description: 'Use path style access for S3 bucket configuration. Valid for S3 compatible storages. ' type: boolean SIGNING_REGION: description: 'Signing region to be used for S3 clients when accessing storage bucket. Use for S3 compatible storages / private S3 endpoints. ' type: string required: - BACKUP_LOCATION awsSecretAccessKeySecret: type: object description: 'Name of the secret containing AWS_SECRET_ACCESS_KEY for the S3 storage configuration. The secret will take precedence over data.AWS_SECRET_ACCESS_KEY ' properties: name: type: string description: Name of the secret namespace: type: string description: Namespace of the secret required: - name gcsCredentialsJsonSecret: type: object description: 'Name of the secret containing GCS_CREDENTIALS_JSON for the GCS storage configuration. The secret will take precedence over data.GCS_CREDENTIALS_JSON ' properties: name: type: string description: Name of the secret namespace: type: string description: Namespace of the secret required: - name azureStorageSasTokenSecret: type: object description: 'Name of the secret containing AZURE_STORAGE_SAS_TOKEN for the Azure storage configuration. The secret will take precedence over data.AZURE_STORAGE_SAS_TOKEN ' properties: name: type: string description: Name of the secret namespace: type: string description: Namespace of the secret required: - name