Class: Google::Apis::GkebackupV1::BackupPlan
- Inherits:
-
Object
- Object
- Google::Apis::GkebackupV1::BackupPlan
- 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
Defines the configuration and scheduling for a "line" of Backups.
Instance Attribute Summary collapse
-
#backup_config ⇒ Google::Apis::GkebackupV1::BackupConfig
BackupConfig defines the configuration of Backups created via this BackupPlan.
-
#backup_schedule ⇒ Google::Apis::GkebackupV1::Schedule
Defines scheduling parameters for automatically creating Backups via this BackupPlan.
-
#cluster ⇒ String
Required.
-
#create_time ⇒ String
Output only.
-
#deactivated ⇒ Boolean
(also: #deactivated?)
Optional.
-
#description ⇒ String
Optional.
-
#etag ⇒ String
Output only.
-
#labels ⇒ Hash<String,String>
Optional.
-
#name ⇒ String
Output only.
-
#protected_pod_count ⇒ Fixnum
Output only.
-
#retention_policy ⇒ Google::Apis::GkebackupV1::RetentionPolicy
RetentionPolicy defines a Backup retention policy for a BackupPlan.
-
#rpo_risk_level ⇒ Fixnum
Output only.
-
#rpo_risk_reason ⇒ String
Output only.
-
#state ⇒ String
Output only.
-
#state_reason ⇒ String
Output only.
-
#uid ⇒ String
Output only.
-
#update_time ⇒ String
Output only.
Instance Method Summary collapse
-
#initialize(**args) ⇒ BackupPlan
constructor
A new instance of BackupPlan.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ BackupPlan
Returns a new instance of BackupPlan.
491 492 493 |
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 491 def initialize(**args) update!(**args) end |
Instance Attribute Details
#backup_config ⇒ Google::Apis::GkebackupV1::BackupConfig
BackupConfig defines the configuration of Backups created via this BackupPlan.
Corresponds to the JSON property backupConfig
385 386 387 |
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 385 def backup_config @backup_config end |
#backup_schedule ⇒ Google::Apis::GkebackupV1::Schedule
Defines scheduling parameters for automatically creating Backups via this
BackupPlan.
Corresponds to the JSON property backupSchedule
391 392 393 |
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 391 def backup_schedule @backup_schedule end |
#cluster ⇒ String
Required. Immutable. The source cluster from which Backups will be created via
this BackupPlan. Valid formats: - projects/*/locations/*/clusters/* -
projects/*/zones/*/clusters/*
Corresponds to the JSON property cluster
398 399 400 |
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 398 def cluster @cluster end |
#create_time ⇒ String
Output only. The timestamp when this BackupPlan resource was created.
Corresponds to the JSON property createTime
403 404 405 |
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 403 def create_time @create_time end |
#deactivated ⇒ Boolean Also known as: deactivated?
Optional. This flag indicates whether this BackupPlan has been deactivated.
Setting this field to True locks the BackupPlan such that no further updates
will be allowed (except deletes), including the deactivated field itself. It
also prevents any new Backups from being created via this BackupPlan (
including scheduled Backups). Default: False
Corresponds to the JSON property deactivated
412 413 414 |
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 412 def deactivated @deactivated end |
#description ⇒ String
Optional. User specified descriptive string for this BackupPlan.
Corresponds to the JSON property description
418 419 420 |
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 418 def description @description end |
#etag ⇒ String
Output only. etag is used for optimistic concurrency control as a way to
help prevent simultaneous updates of a backup plan from overwriting each other.
It is strongly suggested that systems make use of the 'etag' in the read-
modify-write cycle to perform BackupPlan updates in order to avoid race
conditions: An etag is returned in the response to GetBackupPlan, and
systems are expected to put that etag in the request to UpdateBackupPlan or
DeleteBackupPlan to ensure that their change will be applied to the same
version of the resource.
Corresponds to the JSON property etag
430 431 432 |
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 430 def etag @etag end |
#labels ⇒ Hash<String,String>
Optional. A set of custom labels supplied by user.
Corresponds to the JSON property labels
435 436 437 |
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 435 def labels @labels end |
#name ⇒ String
Output only. The full name of the BackupPlan resource. Format: projects/*/
locations/*/backupPlans/*
Corresponds to the JSON property name
441 442 443 |
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 441 def name @name end |
#protected_pod_count ⇒ Fixnum
Output only. The number of Kubernetes Pods backed up in the last successful
Backup created via this BackupPlan.
Corresponds to the JSON property protectedPodCount
447 448 449 |
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 447 def protected_pod_count @protected_pod_count end |
#retention_policy ⇒ Google::Apis::GkebackupV1::RetentionPolicy
RetentionPolicy defines a Backup retention policy for a BackupPlan.
Corresponds to the JSON property retentionPolicy
452 453 454 |
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 452 def retention_policy @retention_policy end |
#rpo_risk_level ⇒ Fixnum
Output only. A number that represents the current risk level of this
BackupPlan from RPO perspective with 1 being no risk and 5 being highest risk.
Corresponds to the JSON property rpoRiskLevel
458 459 460 |
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 458 def rpo_risk_level @rpo_risk_level end |
#rpo_risk_reason ⇒ String
Output only. Human-readable description of why the BackupPlan is in the
current rpo_risk_level and action items if any.
Corresponds to the JSON property rpoRiskReason
464 465 466 |
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 464 def rpo_risk_reason @rpo_risk_reason end |
#state ⇒ String
Output only. State of the BackupPlan. This State field reflects the various
stages a BackupPlan can be in during the Create operation. It will be set to "
DEACTIVATED" if the BackupPlan is deactivated on an Update
Corresponds to the JSON property state
471 472 473 |
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 471 def state @state end |
#state_reason ⇒ String
Output only. Human-readable description of why BackupPlan is in the current
state. This field is only meant for human readability and should not be used
programmatically as this field is not guaranteed to be consistent.
Corresponds to the JSON property stateReason
478 479 480 |
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 478 def state_reason @state_reason end |
#uid ⇒ String
Output only. Server generated global unique identifier of UUID format.
Corresponds to the JSON property uid
484 485 486 |
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 484 def uid @uid end |
#update_time ⇒ String
Output only. The timestamp when this BackupPlan resource was last updated.
Corresponds to the JSON property updateTime
489 490 491 |
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 489 def update_time @update_time end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 |
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 496 def update!(**args) @backup_config = args[:backup_config] if args.key?(:backup_config) @backup_schedule = args[:backup_schedule] if args.key?(:backup_schedule) @cluster = args[:cluster] if args.key?(:cluster) @create_time = args[:create_time] if args.key?(:create_time) @deactivated = args[:deactivated] if args.key?(:deactivated) @description = args[:description] if args.key?(:description) @etag = args[:etag] if args.key?(:etag) @labels = args[:labels] if args.key?(:labels) @name = args[:name] if args.key?(:name) @protected_pod_count = args[:protected_pod_count] if args.key?(:protected_pod_count) @retention_policy = args[:retention_policy] if args.key?(:retention_policy) @rpo_risk_level = args[:rpo_risk_level] if args.key?(:rpo_risk_level) @rpo_risk_reason = args[:rpo_risk_reason] if args.key?(:rpo_risk_reason) @state = args[:state] if args.key?(:state) @state_reason = args[:state_reason] if args.key?(:state_reason) @uid = args[:uid] if args.key?(:uid) @update_time = args[:update_time] if args.key?(:update_time) end |