Class: Google::Apis::SpannerV1::BackupSchedule

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/spanner_v1/classes.rb,
lib/google/apis/spanner_v1/representations.rb,
lib/google/apis/spanner_v1/representations.rb

Overview

BackupSchedule expresses the automated backup creation specification for a Spanner database.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ BackupSchedule

Returns a new instance of BackupSchedule.



736
737
738
# File 'lib/google/apis/spanner_v1/classes.rb', line 736

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#encryption_configGoogle::Apis::SpannerV1::CreateBackupEncryptionConfig

Encryption configuration for the backup to create. Corresponds to the JSON property encryptionConfig



691
692
693
# File 'lib/google/apis/spanner_v1/classes.rb', line 691

def encryption_config
  @encryption_config
end

#full_backup_specGoogle::Apis::SpannerV1::FullBackupSpec

The specification for full backups. A full backup stores the entire contents of the database at a given version time. Corresponds to the JSON property fullBackupSpec



697
698
699
# File 'lib/google/apis/spanner_v1/classes.rb', line 697

def full_backup_spec
  @full_backup_spec
end

#incremental_backup_specGoogle::Apis::SpannerV1::IncrementalBackupSpec

The specification for incremental backup chains. An incremental backup stores the delta of changes between a previous backup and the database contents at a given version time. An incremental backup chain consists of a full backup and zero or more successive incremental backups. The first backup created for an incremental backup chain is always a full backup. Corresponds to the JSON property incrementalBackupSpec



706
707
708
# File 'lib/google/apis/spanner_v1/classes.rb', line 706

def incremental_backup_spec
  @incremental_backup_spec
end

#nameString

Identifier. Output only for the CreateBackupSchedule operation. Required for the UpdateBackupSchedule operation. A globally unique identifier for the backup schedule which cannot be changed. Values are of the form projects// instances//databases//backupSchedules/a-z*[a-z0-9] The final segment of the name must be between 2 and 60 characters in length. Corresponds to the JSON property name

Returns:

  • (String)


715
716
717
# File 'lib/google/apis/spanner_v1/classes.rb', line 715

def name
  @name
end

#retention_durationString

Optional. The retention duration of a backup that must be at least 6 hours and at most 366 days. The backup is eligible to be automatically deleted once the retention period has elapsed. Corresponds to the JSON property retentionDuration

Returns:

  • (String)


722
723
724
# File 'lib/google/apis/spanner_v1/classes.rb', line 722

def retention_duration
  @retention_duration
end

#specGoogle::Apis::SpannerV1::BackupScheduleSpec

Defines specifications of the backup schedule. Corresponds to the JSON property spec



727
728
729
# File 'lib/google/apis/spanner_v1/classes.rb', line 727

def spec
  @spec
end

#update_timeString

Output only. The timestamp at which the schedule was last updated. If the schedule has never been updated, this field contains the timestamp when the schedule was first created. Corresponds to the JSON property updateTime

Returns:

  • (String)


734
735
736
# File 'lib/google/apis/spanner_v1/classes.rb', line 734

def update_time
  @update_time
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



741
742
743
744
745
746
747
748
749
# File 'lib/google/apis/spanner_v1/classes.rb', line 741

def update!(**args)
  @encryption_config = args[:encryption_config] if args.key?(:encryption_config)
  @full_backup_spec = args[:full_backup_spec] if args.key?(:full_backup_spec)
  @incremental_backup_spec = args[:incremental_backup_spec] if args.key?(:incremental_backup_spec)
  @name = args[:name] if args.key?(:name)
  @retention_duration = args[:retention_duration] if args.key?(:retention_duration)
  @spec = args[:spec] if args.key?(:spec)
  @update_time = args[:update_time] if args.key?(:update_time)
end