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

RetentionPolicy defines a Backup retention policy for a BackupPlan.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ RetentionPolicy

Returns a new instance of RetentionPolicy.



2173
2174
2175
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 2173

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

Instance Attribute Details

#backup_delete_lock_daysFixnum

Optional. 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)


2148
2149
2150
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 2148

def backup_delete_lock_days
  @backup_delete_lock_days
end

#backup_retain_daysFixnum

Optional. The default maximum age of a Backup created via this BackupPlan. This field MUST be an integer value >= 0 and <= 365. 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: backup_retain_days must be >= backup_delete_lock_days. If cron_schedule is defined, then this must be <= 360 * the creation interval. If rpo_config is defined, then this must be <= 360 * target_rpo_minutes / (1440minutes/day). Default: 0 (no automatic deletion) Corresponds to the JSON property backupRetainDays

Returns:

  • (Fixnum)


2163
2164
2165
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 2163

def backup_retain_days
  @backup_retain_days
end

#lockedBoolean Also known as: locked?

Optional. 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)


2170
2171
2172
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 2170

def locked
  @locked
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



2178
2179
2180
2181
2182
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 2178

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