Class: Google::Apis::GkebackupV1::RetentionPolicy

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

Overview

RentionPolicy is an inner message type to define: 1. Minimum age for Backups created via this BackupPlan - deletion (either manual or automatic) of Backups younger than this age will be blocked 2. Default maximum age of Backups created via this BackupPlan, after which automatic deletion will occur 3. Lock to disallow any changes to any RetentionPolicy settings

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ RetentionPolicy

Returns a new instance of RetentionPolicy.



1687
1688
1689
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 1687

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

Instance Attribute Details

#backup_delete_lock_daysFixnum

Minimum age for Backups created via this BackupPlan (in days). This field MUST be an integer value between 0-90(inclusive). A Backup created under this BackupPlan will NOT be deletable until it reaches Backup's create_time + backup_delete_lock_days. Updating this field of a BackupPlan does NOT affect existing Backups under it. Backups created AFTER a successful update will inherit the new value. Default: 0 (no delete blocking) Corresponds to the JSON property backupDeleteLockDays

Returns:

  • (Fixnum)


1663
1664
1665
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 1663

def backup_delete_lock_days
  @backup_delete_lock_days
end

#backup_retain_daysFixnum

The default maximum age of a Backup created via this BackupPlan. This field MUST be an integer value >= 0. If specified, a Backup created under this BackupPlan will be automatically deleted after its age reaches create_time + backup_retain_days. If not specified, Backups created under this BackupPlan will NOT be subject to automatic deletion. Updating this field does NOT affect existing Backups under it. Backups created AFTER a successful update will automatically pick up the new value. NOTE: Specifying a backup_retain_days smaller than backup_delete_lock_days at creation/updating time will be considered as invalid, and the request will be rejected immediately. Default: 0 (no automatic deletion) Corresponds to the JSON property backupRetainDays

Returns:

  • (Fixnum)


1677
1678
1679
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 1677

def backup_retain_days
  @backup_retain_days
end

#lockedBoolean Also known as: locked?

This flag denotes whether the retention policy of this BackupPlan is locked. If set to True, no further update is allowed on this policy, including the locked field itself. Default: False Corresponds to the JSON property locked

Returns:

  • (Boolean)


1684
1685
1686
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 1684

def locked
  @locked
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1692
1693
1694
1695
1696
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 1692

def update!(**args)
  @backup_delete_lock_days = args[:backup_delete_lock_days] if args.key?(:backup_delete_lock_days)
  @backup_retain_days = args[:backup_retain_days] if args.key?(:backup_retain_days)
  @locked = args[:locked] if args.key?(:locked)
end