google-native logo
Google Cloud Native v0.30.0, Apr 14 23

google-native.spanner/v1.Backup

Explore with Pulumi AI

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

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

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