config/crds/resources/apiextensions.k8s.io_v1_customresourcedefinition_alloydbclusters.alloydb.cnrm.cloud.google.com.yaml (1,534 lines of code) (raw):

apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition metadata: annotations: cnrm.cloud.google.com/version: 0.0.0-dev creationTimestamp: null labels: cnrm.cloud.google.com/managed-by-kcc: "true" cnrm.cloud.google.com/stability-level: stable cnrm.cloud.google.com/system: "true" cnrm.cloud.google.com/tf2crd: "true" name: alloydbclusters.alloydb.cnrm.cloud.google.com spec: group: alloydb.cnrm.cloud.google.com names: categories: - gcp kind: AlloyDBCluster listKind: AlloyDBClusterList plural: alloydbclusters shortNames: - gcpalloydbcluster - gcpalloydbclusters singular: alloydbcluster preserveUnknownFields: false scope: Namespaced versions: - additionalPrinterColumns: - jsonPath: .metadata.creationTimestamp name: Age type: date - description: When 'True', the most recent reconcile of the resource succeeded jsonPath: .status.conditions[?(@.type=='Ready')].status name: Ready type: string - description: The reason for the value in 'Ready' jsonPath: .status.conditions[?(@.type=='Ready')].reason name: Status type: string - description: The last transition time for the value in 'Status' jsonPath: .status.conditions[?(@.type=='Ready')].lastTransitionTime name: Status Age type: date name: v1alpha1 schema: openAPIV3Schema: description: AlloyDBCluster is the Schema for the AlloyDBCluster 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: AlloyDBClusterSpec defines the desired state of AlloyDBCluster properties: automatedBackupPolicy: description: |- The automated backup policy for this cluster. If no policy is provided then the default policy will be used. If backups are supported for the cluster, the default policy takes one backup a day, has a backup window of 1 hour, and retains backups for 14 days. For more information on the defaults, consult the documentation for the message type. properties: backupWindow: description: |- The length of the time window during which a backup can be taken. If a backup does not succeed within this time window, it will be canceled and considered failed. The backup window must be at least 5 minutes long. There is no upper bound on the window. If not set, it defaults to 1 hour. type: string enabled: description: Whether automated automated backups are enabled. If not set, defaults to true. type: boolean encryptionConfig: description: Optional. The encryption config can be specified to encrypt the backups with a customer-managed encryption key (CMEK). When this field is not specified, the backup will then use default encryption scheme to protect the user data. properties: kmsKeyNameRef: description: 'The fully-qualified resource name of the KMS key. Each Cloud KMS key is regionalized and has the following format: projects/[PROJECT]/locations/[REGION]/keyRings/[RING]/cryptoKeys/[KEY_NAME]' oneOf: - not: required: - external required: - name - not: anyOf: - required: - name - required: - namespace required: - external properties: external: description: A reference to an externally managed KMSCryptoKey. Should be in the format `projects/[kms_project_id]/locations/[region]/keyRings/[key_ring_id]/cryptoKeys/[key]`. type: string name: description: The `name` of a `KMSCryptoKey` resource. type: string namespace: description: The `namespace` of a `KMSCryptoKey` resource. type: string type: object type: object labels: additionalProperties: type: string description: Labels to apply to backups created using this configuration. type: object location: description: |- The location where the backup will be stored. Currently, the only supported option is to store the backup in the same region as the cluster. If empty, defaults to the region of the cluster. type: string quantityBasedRetention: description: Quantity-based Backup retention policy to retain recent backups. properties: count: description: The number of backups to retain. format: int32 type: integer type: object timeBasedRetention: description: Time-based Backup retention policy. properties: retentionPeriod: description: The retention period. type: string type: object weeklySchedule: description: Weekly schedule for the Backup. properties: daysOfWeek: description: |- The days of the week to perform a backup. If this field is left empty, the default of every day of the week is used. items: type: string type: array startTimes: description: |- The times during the day to start a backup. The start times are assumed to be in UTC and to be an exact hour (e.g., 04:00:00). If no start times are provided, a single fixed start time is chosen arbitrarily. items: properties: hours: description: Hours of day in 24 hour format. Should be from 0 to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time. format: int32 type: integer minutes: description: Minutes of hour of day. Must be from 0 to 59. format: int32 type: integer nanos: description: Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999. format: int32 type: integer seconds: description: Seconds of minutes of the time. Must normally be from 0 to 59. An API may allow the value 60 if it allows leap-seconds. format: int32 type: integer type: object type: array required: - startTimes type: object type: object clusterType: description: 'The type of cluster. If not set, defaults to PRIMARY. Default value: "PRIMARY" Possible values: ["PRIMARY", "SECONDARY"].' type: string continuousBackupConfig: description: Optional. Continuous backup configuration for this cluster. properties: enabled: description: Whether ContinuousBackup is enabled. type: boolean encryptionConfig: description: The encryption config can be specified to encrypt the backups with a customer-managed encryption key (CMEK). When this field is not specified, the backup will then use default encryption scheme to protect the user data. properties: kmsKeyNameRef: description: 'The fully-qualified resource name of the KMS key. Each Cloud KMS key is regionalized and has the following format: projects/[PROJECT]/locations/[REGION]/keyRings/[RING]/cryptoKeys/[KEY_NAME]' oneOf: - not: required: - external required: - name - not: anyOf: - required: - name - required: - namespace required: - external properties: external: description: A reference to an externally managed KMSCryptoKey. Should be in the format `projects/[kms_project_id]/locations/[region]/keyRings/[key_ring_id]/cryptoKeys/[key]`. type: string name: description: The `name` of a `KMSCryptoKey` resource. type: string namespace: description: The `namespace` of a `KMSCryptoKey` resource. type: string type: object type: object recoveryWindowDays: description: The number of days that are eligible to restore from using PITR. To support the entire recovery window, backups and logs are retained for one day more than the recovery window. If not set, defaults to 14 days. format: int32 type: integer type: object deletionPolicy: description: Policy to determine if the cluster should be deleted forcefully. Deleting a cluster forcefully, deletes the cluster and all its associated instances within the cluster. Deleting a Secondary cluster with a secondary instance REQUIRES setting deletion_policy = "FORCE" otherwise an error is returned. This is needed as there is no support to delete just the secondary instance, and the only way to delete secondary instance is to delete the associated secondary cluster forcefully which also deletes the secondary instance. type: string displayName: description: User-settable and human-readable display name for the Cluster. type: string encryptionConfig: description: Optional. The encryption config can be specified to encrypt the data disks and other persistent data resources of a cluster with a customer-managed encryption key (CMEK). When this field is not specified, the cluster will then use default encryption scheme to protect the user data. properties: kmsKeyNameRef: description: 'The fully-qualified resource name of the KMS key. Each Cloud KMS key is regionalized and has the following format: projects/[PROJECT]/locations/[REGION]/keyRings/[RING]/cryptoKeys/[KEY_NAME]' oneOf: - not: required: - external required: - name - not: anyOf: - required: - name - required: - namespace required: - external properties: external: description: A reference to an externally managed KMSCryptoKey. Should be in the format `projects/[kms_project_id]/locations/[region]/keyRings/[key_ring_id]/cryptoKeys/[key]`. type: string name: description: The `name` of a `KMSCryptoKey` resource. type: string namespace: description: The `namespace` of a `KMSCryptoKey` resource. type: string type: object type: object initialUser: description: Input only. Initial user to setup during cluster creation. Required. If used in `RestoreCluster` this is ignored. properties: password: description: The initial password for the user. properties: value: description: Value of the field. Cannot be used if 'valueFrom' is specified. type: string valueFrom: description: Source for the field's value. Cannot be used if 'value' is specified. properties: secretKeyRef: description: Reference to a value with the given key in the given Secret in the resource's namespace. properties: key: description: Key that identifies the value to be extracted. type: string name: description: Name of the Secret to extract a value from. type: string required: - key - name type: object type: object type: object user: description: The database username. type: string required: - password type: object location: description: Immutable. The location where the alloydb cluster should reside. type: string maintenanceUpdatePolicy: description: Optional. The maintenance update policy determines when to allow or deny updates. properties: maintenanceWindows: description: Preferred windows to perform maintenance. Currently limited to 1. items: properties: day: description: Preferred day of the week for maintenance, e.g. MONDAY, TUESDAY, etc. type: string startTime: description: Preferred time to start the maintenance operation on the specified day. Maintenance will start within 1 hour of this time. properties: hours: description: Hours of day in 24 hour format. Should be from 0 to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time. format: int32 type: integer minutes: description: Minutes of hour of day. Must be from 0 to 59. format: int32 type: integer nanos: description: Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999. format: int32 type: integer seconds: description: Seconds of minutes of the time. Must normally be from 0 to 59. An API may allow the value 60 if it allows leap-seconds. format: int32 type: integer type: object required: - day - startTime type: object type: array type: object networkConfig: properties: allocatedIpRange: description: 'Optional. Name of the allocated IP range for the private IP AlloyDB cluster, for example: "google-managed-services-default". If set, the instance IPs for this cluster will be created in the allocated range. The range name must comply with RFC 1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?`. Field name is intended to be consistent with Cloud SQL.' type: string networkRef: description: 'Optional. The resource link for the VPC network in which cluster resources are created and from which they are accessible via Private IP. The network must belong to the same project as the cluster. It is specified in the form: `projects/{project_number}/global/networks/{network_id}`. This is required to create a cluster.' oneOf: - not: required: - external required: - name - not: anyOf: - required: - name - required: - namespace required: - external properties: external: description: A reference to an externally managed Compute Network resource. Should be in the format `projects/{{projectID}}/global/networks/{{network}}`. type: string name: description: The `name` field of a `ComputeNetwork` resource. type: string namespace: description: The `namespace` field of a `ComputeNetwork` resource. type: string type: object type: object networkRef: description: 'Required. The resource link for the VPC network in which cluster resources are created and from which they are accessible via Private IP. The network must belong to the same project as the cluster. It is specified in the form: `projects/{project}/global/networks/{network_id}`. This is required to create a cluster. Deprecated, use network_config.network instead.' oneOf: - not: required: - external required: - name - not: anyOf: - required: - name - required: - namespace required: - external properties: external: description: A reference to an externally managed Compute Network resource. Should be in the format `projects/{{projectID}}/global/networks/{{network}}`. type: string name: description: The `name` field of a `ComputeNetwork` resource. type: string namespace: description: The `namespace` field of a `ComputeNetwork` resource. type: string type: object projectRef: description: The project that this resource belongs to. oneOf: - not: required: - external required: - name - not: anyOf: - required: - name - required: - namespace required: - external properties: external: description: The `projectID` field of a project, when not managed by Config Connector. type: string kind: description: The kind of the Project resource; optional but must be `Project` if provided. type: string name: description: The `name` field of a `Project` resource. type: string namespace: description: The `namespace` field of a `Project` resource. type: string type: object resourceID: description: The AlloyDBCluster name. If not given, the metadata.name will be used. type: string restoreBackupSource: description: Immutable. The source when restoring from a backup. Conflicts with 'restoreContinuousBackupSource', both can't be set together. properties: backupNameRef: description: 'Required. The name of the backup resource with the format: * projects/{project}/locations/{region}/backups/{backup_id}' oneOf: - not: required: - external required: - name - not: anyOf: - required: - name - required: - namespace required: - external properties: external: description: If provided must be in the format `projects/[projectId]/locations/[location]/backups/[backupId]`. type: string name: description: The `metadata.name` field of a `AlloyDBBackup` resource. type: string namespace: description: The `metadata.namespace` field of a `AlloyDBBackup` resource. type: string type: object required: - backupNameRef type: object restoreContinuousBackupSource: description: Immutable. The source when restoring via point in time recovery (PITR). Conflicts with 'restoreBackupSource', both can't be set together. properties: clusterRef: description: (Required) The name of the source cluster that this cluster is restored from. oneOf: - not: required: - external required: - name - not: anyOf: - required: - name - required: - namespace required: - external properties: external: description: A reference to an externally managed AlloyDBCluster resource. Should be in the format "projects/{{projectID}}/locations/{{location}}/clusters/{{clusterID}}". type: string name: description: The name of a AlloyDBCluster resource. type: string namespace: description: The namespace of a AlloyDBCluster resource. type: string type: object pointInTime: description: Immutable. The point in time that this cluster is restored to, in RFC 3339 format. type: string required: - clusterRef - pointInTime type: object secondaryConfig: description: Cross Region replication config specific to SECONDARY cluster. properties: primaryClusterNameRef: description: 'The name of the primary cluster name with the format: * projects/{project}/locations/{region}/clusters/{cluster_id}' oneOf: - not: required: - external required: - name - not: anyOf: - required: - name - required: - namespace required: - external properties: external: description: A reference to an externally managed AlloyDBCluster resource. Should be in the format "projects/{{projectID}}/locations/{{location}}/clusters/{{clusterID}}". type: string name: description: The name of a AlloyDBCluster resource. type: string namespace: description: The namespace of a AlloyDBCluster resource. type: string type: object required: - primaryClusterNameRef type: object required: - location - projectRef type: object status: description: AlloyDBClusterStatus defines the config connector machine state of AlloyDBCluster properties: backupSource: description: Output only. Cluster created from backup. items: properties: backupName: description: The name of the backup resource. type: string type: object type: array conditions: description: Conditions represent the latest available observations of the object's current state. items: properties: lastTransitionTime: description: Last time the condition transitioned from one status to another. type: string message: description: Human-readable message indicating details about last transition. type: string reason: description: Unique, one-word, CamelCase reason for the condition's last transition. type: string status: description: Status is the status of the condition. Can be True, False, Unknown. type: string type: description: Type is the type of the condition. type: string type: object type: array continuousBackupInfo: description: Output only. Continuous backup properties for this cluster. items: properties: earliestRestorableTime: description: Output only. The earliest restorable time that can be restored to. Output only field. type: string enabledTime: description: Output only. When ContinuousBackup was most recently enabled. Set to null if ContinuousBackup is not enabled. type: string encryptionInfo: description: Output only. The encryption information for the WALs and backups required for ContinuousBackup. items: properties: encryptionType: description: Output only. Type of encryption. type: string kmsKeyVersions: description: Output only. Cloud KMS key versions that are being used to protect the database or the backup. items: type: string type: array type: object type: array schedule: description: Output only. Days of the week on which a continuous backup is taken. Output only field. Ignored if passed into the request. items: type: string type: array type: object type: array databaseVersion: description: The database engine major version. This is an output-only field and it's populated at the Cluster creation time. This field cannot be changed after cluster creation. type: string encryptionInfo: description: Output only. The encryption information for the cluster. items: properties: encryptionType: description: Output only. Type of encryption. type: string kmsKeyVersions: description: Output only. Cloud KMS key versions that are being used to protect the database or the backup. items: type: string type: array type: object type: array externalRef: description: A unique specifier for the AlloyDBCluster resource in GCP. type: string migrationSource: description: Output only. Cluster created via DMS migration. items: properties: hostPort: description: Output only. The host and port of the on-premises instance in host:port format type: string referenceId: description: Output only. Place holder for the external source identifier(e.g DMS job name) that created the cluster. type: string sourceType: description: Output only. Type of migration source. type: string type: object type: array name: description: 'Output only. The name of the cluster resource with the format: * projects/{project}/locations/{region}/clusters/{cluster_id} where the cluster ID segment should satisfy the regex expression `[a-z0-9-]+`. For more details see https://google.aip.dev/122. The prefix of the cluster resource name is the name of the parent resource: * projects/{project}/locations/{region}' type: string observedGeneration: description: ObservedGeneration is the generation of the resource that was most recently observed by the Config Connector controller. If this is equal to metadata.generation, then that means that the current reported status reflects the most recent desired state of the resource. format: int64 type: integer observedState: description: ObservedState is the state of the resource as most recently observed in GCP. properties: clusterType: description: Output only. The type of the cluster. This is an output-only field and it's populated at the Cluster creation time or the Cluster promotion time. The cluster type is determined by which RPC was used to create the cluster (i.e. `CreateCluster` vs. `CreateSecondaryCluster` type: string type: object uid: description: Output only. The system-generated UID of the resource. The UID is assigned when the resource is created, and it is retained until it is deleted. type: string type: object required: - spec type: object served: true storage: true subresources: {} - additionalPrinterColumns: - jsonPath: .metadata.creationTimestamp name: Age type: date - description: When 'True', the most recent reconcile of the resource succeeded jsonPath: .status.conditions[?(@.type=='Ready')].status name: Ready type: string - description: The reason for the value in 'Ready' jsonPath: .status.conditions[?(@.type=='Ready')].reason name: Status type: string - description: The last transition time for the value in 'Status' jsonPath: .status.conditions[?(@.type=='Ready')].lastTransitionTime name: Status Age type: date name: v1beta1 schema: openAPIV3Schema: description: AlloyDBCluster is the Schema for the AlloyDBCluster 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: AlloyDBClusterSpec defines the desired state of AlloyDBCluster properties: automatedBackupPolicy: description: |- The automated backup policy for this cluster. If no policy is provided then the default policy will be used. If backups are supported for the cluster, the default policy takes one backup a day, has a backup window of 1 hour, and retains backups for 14 days. For more information on the defaults, consult the documentation for the message type. properties: backupWindow: description: |- The length of the time window during which a backup can be taken. If a backup does not succeed within this time window, it will be canceled and considered failed. The backup window must be at least 5 minutes long. There is no upper bound on the window. If not set, it defaults to 1 hour. type: string enabled: description: Whether automated automated backups are enabled. If not set, defaults to true. type: boolean encryptionConfig: description: Optional. The encryption config can be specified to encrypt the backups with a customer-managed encryption key (CMEK). When this field is not specified, the backup will then use default encryption scheme to protect the user data. properties: kmsKeyNameRef: description: 'The fully-qualified resource name of the KMS key. Each Cloud KMS key is regionalized and has the following format: projects/[PROJECT]/locations/[REGION]/keyRings/[RING]/cryptoKeys/[KEY_NAME]' oneOf: - not: required: - external required: - name - not: anyOf: - required: - name - required: - namespace required: - external properties: external: description: A reference to an externally managed KMSCryptoKey. Should be in the format `projects/[kms_project_id]/locations/[region]/keyRings/[key_ring_id]/cryptoKeys/[key]`. type: string name: description: The `name` of a `KMSCryptoKey` resource. type: string namespace: description: The `namespace` of a `KMSCryptoKey` resource. type: string type: object type: object labels: additionalProperties: type: string description: Labels to apply to backups created using this configuration. type: object location: description: |- The location where the backup will be stored. Currently, the only supported option is to store the backup in the same region as the cluster. If empty, defaults to the region of the cluster. type: string quantityBasedRetention: description: Quantity-based Backup retention policy to retain recent backups. properties: count: description: The number of backups to retain. format: int32 type: integer type: object timeBasedRetention: description: Time-based Backup retention policy. properties: retentionPeriod: description: The retention period. type: string type: object weeklySchedule: description: Weekly schedule for the Backup. properties: daysOfWeek: description: |- The days of the week to perform a backup. If this field is left empty, the default of every day of the week is used. items: type: string type: array startTimes: description: |- The times during the day to start a backup. The start times are assumed to be in UTC and to be an exact hour (e.g., 04:00:00). If no start times are provided, a single fixed start time is chosen arbitrarily. items: properties: hours: description: Hours of day in 24 hour format. Should be from 0 to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time. format: int32 type: integer minutes: description: Minutes of hour of day. Must be from 0 to 59. format: int32 type: integer nanos: description: Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999. format: int32 type: integer seconds: description: Seconds of minutes of the time. Must normally be from 0 to 59. An API may allow the value 60 if it allows leap-seconds. format: int32 type: integer type: object type: array required: - startTimes type: object type: object clusterType: description: 'The type of cluster. If not set, defaults to PRIMARY. Default value: "PRIMARY" Possible values: ["PRIMARY", "SECONDARY"].' type: string continuousBackupConfig: description: Optional. Continuous backup configuration for this cluster. properties: enabled: description: Whether ContinuousBackup is enabled. type: boolean encryptionConfig: description: The encryption config can be specified to encrypt the backups with a customer-managed encryption key (CMEK). When this field is not specified, the backup will then use default encryption scheme to protect the user data. properties: kmsKeyNameRef: description: 'The fully-qualified resource name of the KMS key. Each Cloud KMS key is regionalized and has the following format: projects/[PROJECT]/locations/[REGION]/keyRings/[RING]/cryptoKeys/[KEY_NAME]' oneOf: - not: required: - external required: - name - not: anyOf: - required: - name - required: - namespace required: - external properties: external: description: A reference to an externally managed KMSCryptoKey. Should be in the format `projects/[kms_project_id]/locations/[region]/keyRings/[key_ring_id]/cryptoKeys/[key]`. type: string name: description: The `name` of a `KMSCryptoKey` resource. type: string namespace: description: The `namespace` of a `KMSCryptoKey` resource. type: string type: object type: object recoveryWindowDays: description: The number of days that are eligible to restore from using PITR. To support the entire recovery window, backups and logs are retained for one day more than the recovery window. If not set, defaults to 14 days. format: int32 type: integer type: object deletionPolicy: description: Policy to determine if the cluster should be deleted forcefully. Deleting a cluster forcefully, deletes the cluster and all its associated instances within the cluster. Deleting a Secondary cluster with a secondary instance REQUIRES setting deletion_policy = "FORCE" otherwise an error is returned. This is needed as there is no support to delete just the secondary instance, and the only way to delete secondary instance is to delete the associated secondary cluster forcefully which also deletes the secondary instance. type: string displayName: description: User-settable and human-readable display name for the Cluster. type: string encryptionConfig: description: Optional. The encryption config can be specified to encrypt the data disks and other persistent data resources of a cluster with a customer-managed encryption key (CMEK). When this field is not specified, the cluster will then use default encryption scheme to protect the user data. properties: kmsKeyNameRef: description: 'The fully-qualified resource name of the KMS key. Each Cloud KMS key is regionalized and has the following format: projects/[PROJECT]/locations/[REGION]/keyRings/[RING]/cryptoKeys/[KEY_NAME]' oneOf: - not: required: - external required: - name - not: anyOf: - required: - name - required: - namespace required: - external properties: external: description: A reference to an externally managed KMSCryptoKey. Should be in the format `projects/[kms_project_id]/locations/[region]/keyRings/[key_ring_id]/cryptoKeys/[key]`. type: string name: description: The `name` of a `KMSCryptoKey` resource. type: string namespace: description: The `namespace` of a `KMSCryptoKey` resource. type: string type: object type: object initialUser: description: Input only. Initial user to setup during cluster creation. Required. If used in `RestoreCluster` this is ignored. properties: password: description: The initial password for the user. properties: value: description: Value of the field. Cannot be used if 'valueFrom' is specified. type: string valueFrom: description: Source for the field's value. Cannot be used if 'value' is specified. properties: secretKeyRef: description: Reference to a value with the given key in the given Secret in the resource's namespace. properties: key: description: Key that identifies the value to be extracted. type: string name: description: Name of the Secret to extract a value from. type: string required: - key - name type: object type: object type: object user: description: The database username. type: string required: - password type: object location: description: Immutable. The location where the alloydb cluster should reside. type: string maintenanceUpdatePolicy: description: Optional. The maintenance update policy determines when to allow or deny updates. properties: maintenanceWindows: description: Preferred windows to perform maintenance. Currently limited to 1. items: properties: day: description: Preferred day of the week for maintenance, e.g. MONDAY, TUESDAY, etc. type: string startTime: description: Preferred time to start the maintenance operation on the specified day. Maintenance will start within 1 hour of this time. properties: hours: description: Hours of day in 24 hour format. Should be from 0 to 23. An API may choose to allow the value "24:00:00" for scenarios like business closing time. format: int32 type: integer minutes: description: Minutes of hour of day. Must be from 0 to 59. format: int32 type: integer nanos: description: Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999. format: int32 type: integer seconds: description: Seconds of minutes of the time. Must normally be from 0 to 59. An API may allow the value 60 if it allows leap-seconds. format: int32 type: integer type: object required: - day - startTime type: object type: array type: object networkConfig: properties: allocatedIpRange: description: 'Optional. Name of the allocated IP range for the private IP AlloyDB cluster, for example: "google-managed-services-default". If set, the instance IPs for this cluster will be created in the allocated range. The range name must comply with RFC 1035. Specifically, the name must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?`. Field name is intended to be consistent with Cloud SQL.' type: string networkRef: description: 'The resource link for the VPC network in which cluster resources are created and from which they are accessible via Private IP. The network must belong to the same project as the cluster. It is specified in the form: `projects/{project_number}/global/networks/{network_id}`. This is required to create a cluster.' oneOf: - not: required: - external required: - name - not: anyOf: - required: - name - required: - namespace required: - external properties: external: description: A reference to an externally managed Compute Network resource. Should be in the format `projects/{{projectID}}/global/networks/{{network}}`. type: string name: description: The `name` field of a `ComputeNetwork` resource. type: string namespace: description: The `namespace` field of a `ComputeNetwork` resource. type: string type: object type: object networkRef: description: 'The resource link for the VPC network in which cluster resources are created and from which they are accessible via Private IP. The network must belong to the same project as the cluster. It is specified in the form: `projects/{project}/global/networks/{network_id}`. This is required to create a cluster. Deprecated, use network_config.network instead.' oneOf: - not: required: - external required: - name - not: anyOf: - required: - name - required: - namespace required: - external properties: external: description: A reference to an externally managed Compute Network resource. Should be in the format `projects/{{projectID}}/global/networks/{{network}}`. type: string name: description: The `name` field of a `ComputeNetwork` resource. type: string namespace: description: The `namespace` field of a `ComputeNetwork` resource. type: string type: object projectRef: description: The project that this resource belongs to. oneOf: - not: required: - external required: - name - not: anyOf: - required: - name - required: - namespace required: - external properties: external: description: The `projectID` field of a project, when not managed by Config Connector. type: string kind: description: The kind of the Project resource; optional but must be `Project` if provided. type: string name: description: The `name` field of a `Project` resource. type: string namespace: description: The `namespace` field of a `Project` resource. type: string type: object resourceID: description: The AlloyDBCluster name. If not given, the metadata.name will be used. type: string restoreBackupSource: description: Immutable. The source when restoring from a backup. Conflicts with 'restoreContinuousBackupSource', both can't be set together. properties: backupNameRef: description: 'Required. The name of the backup resource with the format: * projects/{project}/locations/{region}/backups/{backup_id}' oneOf: - not: required: - external required: - name - not: anyOf: - required: - name - required: - namespace required: - external properties: external: description: If provided must be in the format `projects/[projectId]/locations/[location]/backups/[backupId]`. type: string name: description: The `metadata.name` field of a `AlloyDBBackup` resource. type: string namespace: description: The `metadata.namespace` field of a `AlloyDBBackup` resource. type: string type: object required: - backupNameRef type: object restoreContinuousBackupSource: description: Immutable. The source when restoring via point in time recovery (PITR). Conflicts with 'restoreBackupSource', both can't be set together. properties: clusterRef: description: (Required) The name of the source cluster that this cluster is restored from. oneOf: - not: required: - external required: - name - not: anyOf: - required: - name - required: - namespace required: - external properties: external: description: A reference to an externally managed AlloyDBCluster resource. Should be in the format "projects/{{projectID}}/locations/{{location}}/clusters/{{clusterID}}". type: string name: description: The name of a AlloyDBCluster resource. type: string namespace: description: The namespace of a AlloyDBCluster resource. type: string type: object pointInTime: description: Immutable. The point in time that this cluster is restored to, in RFC 3339 format. type: string required: - clusterRef - pointInTime type: object secondaryConfig: description: Cross Region replication config specific to SECONDARY cluster. properties: primaryClusterNameRef: description: 'The name of the primary cluster name with the format: * projects/{project}/locations/{region}/clusters/{cluster_id}' oneOf: - not: required: - external required: - name - not: anyOf: - required: - name - required: - namespace required: - external properties: external: description: A reference to an externally managed AlloyDBCluster resource. Should be in the format "projects/{{projectID}}/locations/{{location}}/clusters/{{clusterID}}". type: string name: description: The name of a AlloyDBCluster resource. type: string namespace: description: The namespace of a AlloyDBCluster resource. type: string type: object required: - primaryClusterNameRef type: object required: - location - projectRef type: object status: description: AlloyDBClusterStatus defines the config connector machine state of AlloyDBCluster properties: backupSource: description: Output only. Cluster created from backup. items: properties: backupName: description: The name of the backup resource. type: string type: object type: array conditions: description: Conditions represent the latest available observations of the object's current state. items: properties: lastTransitionTime: description: Last time the condition transitioned from one status to another. type: string message: description: Human-readable message indicating details about last transition. type: string reason: description: Unique, one-word, CamelCase reason for the condition's last transition. type: string status: description: Status is the status of the condition. Can be True, False, Unknown. type: string type: description: Type is the type of the condition. type: string type: object type: array continuousBackupInfo: description: Output only. Continuous backup properties for this cluster. items: properties: earliestRestorableTime: description: Output only. The earliest restorable time that can be restored to. Output only field. type: string enabledTime: description: Output only. When ContinuousBackup was most recently enabled. Set to null if ContinuousBackup is not enabled. type: string encryptionInfo: description: Output only. The encryption information for the WALs and backups required for ContinuousBackup. items: properties: encryptionType: description: Output only. Type of encryption. type: string kmsKeyVersions: description: Output only. Cloud KMS key versions that are being used to protect the database or the backup. items: type: string type: array type: object type: array schedule: description: Output only. Days of the week on which a continuous backup is taken. Output only field. Ignored if passed into the request. items: type: string type: array type: object type: array databaseVersion: description: The database engine major version. This is an output-only field and it's populated at the Cluster creation time. This field cannot be changed after cluster creation. type: string encryptionInfo: description: Output only. The encryption information for the cluster. items: properties: encryptionType: description: Output only. Type of encryption. type: string kmsKeyVersions: description: Output only. Cloud KMS key versions that are being used to protect the database or the backup. items: type: string type: array type: object type: array externalRef: description: A unique specifier for the AlloyDBCluster resource in GCP. type: string migrationSource: description: Output only. Cluster created via DMS migration. items: properties: hostPort: description: Output only. The host and port of the on-premises instance in host:port format type: string referenceId: description: Output only. Place holder for the external source identifier(e.g DMS job name) that created the cluster. type: string sourceType: description: Output only. Type of migration source. type: string type: object type: array name: description: 'Output only. The name of the cluster resource with the format: * projects/{project}/locations/{region}/clusters/{cluster_id} where the cluster ID segment should satisfy the regex expression `[a-z0-9-]+`. For more details see https://google.aip.dev/122. The prefix of the cluster resource name is the name of the parent resource: * projects/{project}/locations/{region}' type: string observedGeneration: description: ObservedGeneration is the generation of the resource that was most recently observed by the Config Connector controller. If this is equal to metadata.generation, then that means that the current reported status reflects the most recent desired state of the resource. format: int64 type: integer observedState: description: ObservedState is the state of the resource as most recently observed in GCP. properties: clusterType: description: Output only. The type of the cluster. This is an output-only field and it's populated at the Cluster creation time or the Cluster promotion time. The cluster type is determined by which RPC was used to create the cluster (i.e. `CreateCluster` vs. `CreateSecondaryCluster` type: string type: object uid: description: Output only. The system-generated UID of the resource. The UID is assigned when the resource is created, and it is retained until it is deleted. type: string type: object required: - spec type: object served: true storage: false subresources: status: {}