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.



637
638
639
# File 'lib/google/apis/spanner_v1/classes.rb', line 637

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



592
593
594
# File 'lib/google/apis/spanner_v1/classes.rb', line 592

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



598
599
600
# File 'lib/google/apis/spanner_v1/classes.rb', line 598

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



607
608
609
# File 'lib/google/apis/spanner_v1/classes.rb', line 607

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)


616
617
618
# File 'lib/google/apis/spanner_v1/classes.rb', line 616

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)


623
624
625
# File 'lib/google/apis/spanner_v1/classes.rb', line 623

def retention_duration
  @retention_duration
end

#specGoogle::Apis::SpannerV1::BackupScheduleSpec

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



628
629
630
# File 'lib/google/apis/spanner_v1/classes.rb', line 628

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)


635
636
637
# File 'lib/google/apis/spanner_v1/classes.rb', line 635

def update_time
  @update_time
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



642
643
644
645
646
647
648
649
650
# File 'lib/google/apis/spanner_v1/classes.rb', line 642

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