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.



672
673
674
# File 'lib/google/apis/spanner_v1/classes.rb', line 672

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



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

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



633
634
635
# File 'lib/google/apis/spanner_v1/classes.rb', line 633

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



642
643
644
# File 'lib/google/apis/spanner_v1/classes.rb', line 642

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)


651
652
653
# File 'lib/google/apis/spanner_v1/classes.rb', line 651

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)


658
659
660
# File 'lib/google/apis/spanner_v1/classes.rb', line 658

def retention_duration
  @retention_duration
end

#specGoogle::Apis::SpannerV1::BackupScheduleSpec

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



663
664
665
# File 'lib/google/apis/spanner_v1/classes.rb', line 663

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)


670
671
672
# File 'lib/google/apis/spanner_v1/classes.rb', line 670

def update_time
  @update_time
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



677
678
679
680
681
682
683
684
685
# File 'lib/google/apis/spanner_v1/classes.rb', line 677

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