1. Packages
  2. Google Cloud Native
  3. API Docs
  4. spanner
  5. spanner/v1
  6. Backup

Google Cloud Native is in preview. Google Cloud Classic is fully supported.

Google Cloud Native v0.32.0 published on Wednesday, Nov 29, 2023 by Pulumi

google-native.spanner/v1.Backup

Explore with Pulumi AI

google-native logo

Google Cloud Native is in preview. Google Cloud Classic is fully supported.

Google Cloud Native v0.32.0 published on Wednesday, Nov 29, 2023 by Pulumi

    Starts creating a new Cloud Spanner Backup. The returned backup long-running operation will have a name of the format projects//instances//backups//operations/ and can be used to track creation of the backup. The metadata field type is CreateBackupMetadata. The response field type is Backup, if successful. Cancelling the returned operation will stop the creation and delete the backup. There can be only one pending backup creation per database. Backup creation of different databases can run concurrently.

    Create Backup Resource

    new Backup(name: string, args: BackupArgs, opts?: CustomResourceOptions);
    @overload
    def Backup(resource_name: str,
               opts: Optional[ResourceOptions] = None,
               backup_id: Optional[str] = None,
               database: Optional[str] = None,
               encryption_config_encryption_type: Optional[str] = None,
               encryption_config_kms_key_name: Optional[str] = None,
               expire_time: Optional[str] = None,
               instance_id: Optional[str] = None,
               name: Optional[str] = None,
               project: Optional[str] = None,
               version_time: Optional[str] = None)
    @overload
    def Backup(resource_name: str,
               args: BackupArgs,
               opts: Optional[ResourceOptions] = None)
    func NewBackup(ctx *Context, name string, args BackupArgs, opts ...ResourceOption) (*Backup, error)
    public Backup(string name, BackupArgs args, CustomResourceOptions? opts = null)
    public Backup(String name, BackupArgs args)
    public Backup(String name, BackupArgs args, CustomResourceOptions options)
    
    type: google-native:spanner/v1:Backup
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    
    name string
    The unique name of the resource.
    args BackupArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    resource_name str
    The unique name of the resource.
    args BackupArgs
    The arguments to resource properties.
    opts ResourceOptions
    Bag of options to control resource's behavior.
    ctx Context
    Context object for the current deployment.
    name string
    The unique name of the resource.
    args BackupArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args BackupArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args BackupArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Backup Resource Properties

    To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

    Inputs

    The Backup resource accepts the following input properties:

    BackupId string
    Required. The id of the backup to be created. The backup_id appended to parent forms the full backup name of the form projects//instances//backups/.
    EncryptionConfigEncryptionType string
    Required. The encryption type of the backup.
    InstanceId string
    Database string
    Required for the CreateBackup operation. Name of the database from which this backup was created. This needs to be in the same instance as the backup. Values are of the form projects//instances//databases/.
    EncryptionConfigKmsKeyName string
    Optional. The Cloud KMS key that will be used to protect the backup. This field should be set only when encryption_type is CUSTOMER_MANAGED_ENCRYPTION. Values are of the form projects//locations//keyRings//cryptoKeys/.
    ExpireTime string
    Required for the CreateBackup operation. The expiration time of the backup, with microseconds granularity that must be at least 6 hours and at most 366 days from the time the CreateBackup request is processed. Once the expire_time has passed, the backup is eligible to be automatically deleted by Cloud Spanner to free the resources used by the backup.
    Name string
    Output only for the CreateBackup operation. Required for the UpdateBackup operation. A globally unique identifier for the backup which cannot be changed. Values are of the form projects//instances//backups/a-z*[a-z0-9] The final segment of the name must be between 2 and 60 characters in length. The backup is stored in the location(s) specified in the instance configuration of the instance containing the backup, identified by the prefix of the backup name of the form projects//instances/.
    Project string
    VersionTime string
    The backup will contain an externally consistent copy of the database at the timestamp specified by version_time. If version_time is not specified, the system will set version_time to the create_time of the backup.
    BackupId string
    Required. The id of the backup to be created. The backup_id appended to parent forms the full backup name of the form projects//instances//backups/.
    EncryptionConfigEncryptionType string
    Required. The encryption type of the backup.
    InstanceId string
    Database string
    Required for the CreateBackup operation. Name of the database from which this backup was created. This needs to be in the same instance as the backup. Values are of the form projects//instances//databases/.
    EncryptionConfigKmsKeyName string
    Optional. The Cloud KMS key that will be used to protect the backup. This field should be set only when encryption_type is CUSTOMER_MANAGED_ENCRYPTION. Values are of the form projects//locations//keyRings//cryptoKeys/.
    ExpireTime string
    Required for the CreateBackup operation. The expiration time of the backup, with microseconds granularity that must be at least 6 hours and at most 366 days from the time the CreateBackup request is processed. Once the expire_time has passed, the backup is eligible to be automatically deleted by Cloud Spanner to free the resources used by the backup.
    Name string
    Output only for the CreateBackup operation. Required for the UpdateBackup operation. A globally unique identifier for the backup which cannot be changed. Values are of the form projects//instances//backups/a-z*[a-z0-9] The final segment of the name must be between 2 and 60 characters in length. The backup is stored in the location(s) specified in the instance configuration of the instance containing the backup, identified by the prefix of the backup name of the form projects//instances/.
    Project string
    VersionTime string
    The backup will contain an externally consistent copy of the database at the timestamp specified by version_time. If version_time is not specified, the system will set version_time to the create_time of the backup.
    backupId String
    Required. The id of the backup to be created. The backup_id appended to parent forms the full backup name of the form projects//instances//backups/.
    encryptionConfigEncryptionType String
    Required. The encryption type of the backup.
    instanceId String
    database String
    Required for the CreateBackup operation. Name of the database from which this backup was created. This needs to be in the same instance as the backup. Values are of the form projects//instances//databases/.
    encryptionConfigKmsKeyName String
    Optional. The Cloud KMS key that will be used to protect the backup. This field should be set only when encryption_type is CUSTOMER_MANAGED_ENCRYPTION. Values are of the form projects//locations//keyRings//cryptoKeys/.
    expireTime String
    Required for the CreateBackup operation. The expiration time of the backup, with microseconds granularity that must be at least 6 hours and at most 366 days from the time the CreateBackup request is processed. Once the expire_time has passed, the backup is eligible to be automatically deleted by Cloud Spanner to free the resources used by the backup.
    name String
    Output only for the CreateBackup operation. Required for the UpdateBackup operation. A globally unique identifier for the backup which cannot be changed. Values are of the form projects//instances//backups/a-z*[a-z0-9] The final segment of the name must be between 2 and 60 characters in length. The backup is stored in the location(s) specified in the instance configuration of the instance containing the backup, identified by the prefix of the backup name of the form projects//instances/.
    project String
    versionTime String
    The backup will contain an externally consistent copy of the database at the timestamp specified by version_time. If version_time is not specified, the system will set version_time to the create_time of the backup.
    backupId string
    Required. The id of the backup to be created. The backup_id appended to parent forms the full backup name of the form projects//instances//backups/.
    encryptionConfigEncryptionType string
    Required. The encryption type of the backup.
    instanceId string
    database string
    Required for the CreateBackup operation. Name of the database from which this backup was created. This needs to be in the same instance as the backup. Values are of the form projects//instances//databases/.
    encryptionConfigKmsKeyName string
    Optional. The Cloud KMS key that will be used to protect the backup. This field should be set only when encryption_type is CUSTOMER_MANAGED_ENCRYPTION. Values are of the form projects//locations//keyRings//cryptoKeys/.
    expireTime string
    Required for the CreateBackup operation. The expiration time of the backup, with microseconds granularity that must be at least 6 hours and at most 366 days from the time the CreateBackup request is processed. Once the expire_time has passed, the backup is eligible to be automatically deleted by Cloud Spanner to free the resources used by the backup.
    name string
    Output only for the CreateBackup operation. Required for the UpdateBackup operation. A globally unique identifier for the backup which cannot be changed. Values are of the form projects//instances//backups/a-z*[a-z0-9] The final segment of the name must be between 2 and 60 characters in length. The backup is stored in the location(s) specified in the instance configuration of the instance containing the backup, identified by the prefix of the backup name of the form projects//instances/.
    project string
    versionTime string
    The backup will contain an externally consistent copy of the database at the timestamp specified by version_time. If version_time is not specified, the system will set version_time to the create_time of the backup.
    backup_id str
    Required. The id of the backup to be created. The backup_id appended to parent forms the full backup name of the form projects//instances//backups/.
    encryption_config_encryption_type str
    Required. The encryption type of the backup.
    instance_id str
    database str
    Required for the CreateBackup operation. Name of the database from which this backup was created. This needs to be in the same instance as the backup. Values are of the form projects//instances//databases/.
    encryption_config_kms_key_name str
    Optional. The Cloud KMS key that will be used to protect the backup. This field should be set only when encryption_type is CUSTOMER_MANAGED_ENCRYPTION. Values are of the form projects//locations//keyRings//cryptoKeys/.
    expire_time str
    Required for the CreateBackup operation. The expiration time of the backup, with microseconds granularity that must be at least 6 hours and at most 366 days from the time the CreateBackup request is processed. Once the expire_time has passed, the backup is eligible to be automatically deleted by Cloud Spanner to free the resources used by the backup.
    name str
    Output only for the CreateBackup operation. Required for the UpdateBackup operation. A globally unique identifier for the backup which cannot be changed. Values are of the form projects//instances//backups/a-z*[a-z0-9] The final segment of the name must be between 2 and 60 characters in length. The backup is stored in the location(s) specified in the instance configuration of the instance containing the backup, identified by the prefix of the backup name of the form projects//instances/.
    project str
    version_time str
    The backup will contain an externally consistent copy of the database at the timestamp specified by version_time. If version_time is not specified, the system will set version_time to the create_time of the backup.
    backupId String
    Required. The id of the backup to be created. The backup_id appended to parent forms the full backup name of the form projects//instances//backups/.
    encryptionConfigEncryptionType String
    Required. The encryption type of the backup.
    instanceId String
    database String
    Required for the CreateBackup operation. Name of the database from which this backup was created. This needs to be in the same instance as the backup. Values are of the form projects//instances//databases/.
    encryptionConfigKmsKeyName String
    Optional. The Cloud KMS key that will be used to protect the backup. This field should be set only when encryption_type is CUSTOMER_MANAGED_ENCRYPTION. Values are of the form projects//locations//keyRings//cryptoKeys/.
    expireTime String
    Required for the CreateBackup operation. The expiration time of the backup, with microseconds granularity that must be at least 6 hours and at most 366 days from the time the CreateBackup request is processed. Once the expire_time has passed, the backup is eligible to be automatically deleted by Cloud Spanner to free the resources used by the backup.
    name String
    Output only for the CreateBackup operation. Required for the UpdateBackup operation. A globally unique identifier for the backup which cannot be changed. Values are of the form projects//instances//backups/a-z*[a-z0-9] The final segment of the name must be between 2 and 60 characters in length. The backup is stored in the location(s) specified in the instance configuration of the instance containing the backup, identified by the prefix of the backup name of the form projects//instances/.
    project String
    versionTime String
    The backup will contain an externally consistent copy of the database at the timestamp specified by version_time. If version_time is not specified, the system will set version_time to the create_time of the backup.

    Outputs

    All input properties are implicitly available as output properties. Additionally, the Backup resource produces the following output properties:

    CreateTime string
    The time the CreateBackup request is received. If the request does not specify version_time, the version_time of the backup will be equivalent to the create_time.
    DatabaseDialect string
    The database dialect information for the backup.
    EncryptionInfo Pulumi.GoogleNative.Spanner.V1.Outputs.EncryptionInfoResponse
    The encryption information for the backup.
    Id string
    The provider-assigned unique ID for this managed resource.
    MaxExpireTime string
    The max allowed expiration time of the backup, with microseconds granularity. A backup's expiration time can be configured in multiple APIs: CreateBackup, UpdateBackup, CopyBackup. When updating or copying an existing backup, the expiration time specified must be less than Backup.max_expire_time.
    ReferencingBackups List<string>
    The names of the destination backups being created by copying this source backup. The backup names are of the form projects//instances//backups/. Referencing backups may exist in different instances. The existence of any referencing backup prevents the backup from being deleted. When the copy operation is done (either successfully completed or cancelled or the destination backup is deleted), the reference to the backup is removed.
    ReferencingDatabases List<string>
    The names of the restored databases that reference the backup. The database names are of the form projects//instances//databases/. Referencing databases may exist in different instances. The existence of any referencing database prevents the backup from being deleted. When a restored database from the backup enters the READY state, the reference to the backup is removed.
    SizeBytes string
    Size of the backup in bytes.
    State string
    The current state of the backup.
    CreateTime string
    The time the CreateBackup request is received. If the request does not specify version_time, the version_time of the backup will be equivalent to the create_time.
    DatabaseDialect string
    The database dialect information for the backup.
    EncryptionInfo EncryptionInfoResponse
    The encryption information for the backup.
    Id string
    The provider-assigned unique ID for this managed resource.
    MaxExpireTime string
    The max allowed expiration time of the backup, with microseconds granularity. A backup's expiration time can be configured in multiple APIs: CreateBackup, UpdateBackup, CopyBackup. When updating or copying an existing backup, the expiration time specified must be less than Backup.max_expire_time.
    ReferencingBackups []string
    The names of the destination backups being created by copying this source backup. The backup names are of the form projects//instances//backups/. Referencing backups may exist in different instances. The existence of any referencing backup prevents the backup from being deleted. When the copy operation is done (either successfully completed or cancelled or the destination backup is deleted), the reference to the backup is removed.
    ReferencingDatabases []string
    The names of the restored databases that reference the backup. The database names are of the form projects//instances//databases/. Referencing databases may exist in different instances. The existence of any referencing database prevents the backup from being deleted. When a restored database from the backup enters the READY state, the reference to the backup is removed.
    SizeBytes string
    Size of the backup in bytes.
    State string
    The current state of the backup.
    createTime String
    The time the CreateBackup request is received. If the request does not specify version_time, the version_time of the backup will be equivalent to the create_time.
    databaseDialect String
    The database dialect information for the backup.
    encryptionInfo EncryptionInfoResponse
    The encryption information for the backup.
    id String
    The provider-assigned unique ID for this managed resource.
    maxExpireTime String
    The max allowed expiration time of the backup, with microseconds granularity. A backup's expiration time can be configured in multiple APIs: CreateBackup, UpdateBackup, CopyBackup. When updating or copying an existing backup, the expiration time specified must be less than Backup.max_expire_time.
    referencingBackups List<String>
    The names of the destination backups being created by copying this source backup. The backup names are of the form projects//instances//backups/. Referencing backups may exist in different instances. The existence of any referencing backup prevents the backup from being deleted. When the copy operation is done (either successfully completed or cancelled or the destination backup is deleted), the reference to the backup is removed.
    referencingDatabases List<String>
    The names of the restored databases that reference the backup. The database names are of the form projects//instances//databases/. Referencing databases may exist in different instances. The existence of any referencing database prevents the backup from being deleted. When a restored database from the backup enters the READY state, the reference to the backup is removed.
    sizeBytes String
    Size of the backup in bytes.
    state String
    The current state of the backup.
    createTime string
    The time the CreateBackup request is received. If the request does not specify version_time, the version_time of the backup will be equivalent to the create_time.
    databaseDialect string
    The database dialect information for the backup.
    encryptionInfo EncryptionInfoResponse
    The encryption information for the backup.
    id string
    The provider-assigned unique ID for this managed resource.
    maxExpireTime string
    The max allowed expiration time of the backup, with microseconds granularity. A backup's expiration time can be configured in multiple APIs: CreateBackup, UpdateBackup, CopyBackup. When updating or copying an existing backup, the expiration time specified must be less than Backup.max_expire_time.
    referencingBackups string[]
    The names of the destination backups being created by copying this source backup. The backup names are of the form projects//instances//backups/. Referencing backups may exist in different instances. The existence of any referencing backup prevents the backup from being deleted. When the copy operation is done (either successfully completed or cancelled or the destination backup is deleted), the reference to the backup is removed.
    referencingDatabases string[]
    The names of the restored databases that reference the backup. The database names are of the form projects//instances//databases/. Referencing databases may exist in different instances. The existence of any referencing database prevents the backup from being deleted. When a restored database from the backup enters the READY state, the reference to the backup is removed.
    sizeBytes string
    Size of the backup in bytes.
    state string
    The current state of the backup.
    create_time str
    The time the CreateBackup request is received. If the request does not specify version_time, the version_time of the backup will be equivalent to the create_time.
    database_dialect str
    The database dialect information for the backup.
    encryption_info EncryptionInfoResponse
    The encryption information for the backup.
    id str
    The provider-assigned unique ID for this managed resource.
    max_expire_time str
    The max allowed expiration time of the backup, with microseconds granularity. A backup's expiration time can be configured in multiple APIs: CreateBackup, UpdateBackup, CopyBackup. When updating or copying an existing backup, the expiration time specified must be less than Backup.max_expire_time.
    referencing_backups Sequence[str]
    The names of the destination backups being created by copying this source backup. The backup names are of the form projects//instances//backups/. Referencing backups may exist in different instances. The existence of any referencing backup prevents the backup from being deleted. When the copy operation is done (either successfully completed or cancelled or the destination backup is deleted), the reference to the backup is removed.
    referencing_databases Sequence[str]
    The names of the restored databases that reference the backup. The database names are of the form projects//instances//databases/. Referencing databases may exist in different instances. The existence of any referencing database prevents the backup from being deleted. When a restored database from the backup enters the READY state, the reference to the backup is removed.
    size_bytes str
    Size of the backup in bytes.
    state str
    The current state of the backup.
    createTime String
    The time the CreateBackup request is received. If the request does not specify version_time, the version_time of the backup will be equivalent to the create_time.
    databaseDialect String
    The database dialect information for the backup.
    encryptionInfo Property Map
    The encryption information for the backup.
    id String
    The provider-assigned unique ID for this managed resource.
    maxExpireTime String
    The max allowed expiration time of the backup, with microseconds granularity. A backup's expiration time can be configured in multiple APIs: CreateBackup, UpdateBackup, CopyBackup. When updating or copying an existing backup, the expiration time specified must be less than Backup.max_expire_time.
    referencingBackups List<String>
    The names of the destination backups being created by copying this source backup. The backup names are of the form projects//instances//backups/. Referencing backups may exist in different instances. The existence of any referencing backup prevents the backup from being deleted. When the copy operation is done (either successfully completed or cancelled or the destination backup is deleted), the reference to the backup is removed.
    referencingDatabases List<String>
    The names of the restored databases that reference the backup. The database names are of the form projects//instances//databases/. Referencing databases may exist in different instances. The existence of any referencing database prevents the backup from being deleted. When a restored database from the backup enters the READY state, the reference to the backup is removed.
    sizeBytes String
    Size of the backup in bytes.
    state String
    The current state of the backup.

    Supporting Types

    EncryptionInfoResponse, EncryptionInfoResponseArgs

    EncryptionStatus Pulumi.GoogleNative.Spanner.V1.Inputs.StatusResponse
    If present, the status of a recent encrypt/decrypt call on underlying data for this database or backup. Regardless of status, data is always encrypted at rest.
    EncryptionType string
    The type of encryption.
    KmsKeyVersion string
    A Cloud KMS key version that is being used to protect the database or backup.
    EncryptionStatus StatusResponse
    If present, the status of a recent encrypt/decrypt call on underlying data for this database or backup. Regardless of status, data is always encrypted at rest.
    EncryptionType string
    The type of encryption.
    KmsKeyVersion string
    A Cloud KMS key version that is being used to protect the database or backup.
    encryptionStatus StatusResponse
    If present, the status of a recent encrypt/decrypt call on underlying data for this database or backup. Regardless of status, data is always encrypted at rest.
    encryptionType String
    The type of encryption.
    kmsKeyVersion String
    A Cloud KMS key version that is being used to protect the database or backup.
    encryptionStatus StatusResponse
    If present, the status of a recent encrypt/decrypt call on underlying data for this database or backup. Regardless of status, data is always encrypted at rest.
    encryptionType string
    The type of encryption.
    kmsKeyVersion string
    A Cloud KMS key version that is being used to protect the database or backup.
    encryption_status StatusResponse
    If present, the status of a recent encrypt/decrypt call on underlying data for this database or backup. Regardless of status, data is always encrypted at rest.
    encryption_type str
    The type of encryption.
    kms_key_version str
    A Cloud KMS key version that is being used to protect the database or backup.
    encryptionStatus Property Map
    If present, the status of a recent encrypt/decrypt call on underlying data for this database or backup. Regardless of status, data is always encrypted at rest.
    encryptionType String
    The type of encryption.
    kmsKeyVersion String
    A Cloud KMS key version that is being used to protect the database or backup.

    StatusResponse, StatusResponseArgs

    Code int
    The status code, which should be an enum value of google.rpc.Code.
    Details List<ImmutableDictionary<string, string>>
    A list of messages that carry the error details. There is a common set of message types for APIs to use.
    Message string
    A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
    Code int
    The status code, which should be an enum value of google.rpc.Code.
    Details []map[string]string
    A list of messages that carry the error details. There is a common set of message types for APIs to use.
    Message string
    A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
    code Integer
    The status code, which should be an enum value of google.rpc.Code.
    details List<Map<String,String>>
    A list of messages that carry the error details. There is a common set of message types for APIs to use.
    message String
    A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
    code number
    The status code, which should be an enum value of google.rpc.Code.
    details {[key: string]: string}[]
    A list of messages that carry the error details. There is a common set of message types for APIs to use.
    message string
    A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
    code int
    The status code, which should be an enum value of google.rpc.Code.
    details Sequence[Mapping[str, str]]
    A list of messages that carry the error details. There is a common set of message types for APIs to use.
    message str
    A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
    code Number
    The status code, which should be an enum value of google.rpc.Code.
    details List<Map<String>>
    A list of messages that carry the error details. There is a common set of message types for APIs to use.
    message String
    A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.

    Package Details

    Repository
    Google Cloud Native pulumi/pulumi-google-native
    License
    Apache-2.0
    google-native logo

    Google Cloud Native is in preview. Google Cloud Classic is fully supported.

    Google Cloud Native v0.32.0 published on Wednesday, Nov 29, 2023 by Pulumi