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_channel ⇒ String
Output only.
-
#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.
-
#last_successful_backup_time ⇒ String
Output only.
-
#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.
677 678 679 |
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 677 def initialize(**args) update!(**args) end |
Instance Attribute Details
#backup_channel ⇒ String
Output only. The fully qualified name of the BackupChannel to be used to
create a backup. This field is set only if the cluster being backed up is in a
different project. projects/*/locations/*/backupChannels/*
Corresponds to the JSON property backupChannel
558 559 560 |
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 558 def backup_channel @backup_channel end |
#backup_config ⇒ Google::Apis::GkebackupV1::BackupConfig
BackupConfig defines the configuration of Backups created via this BackupPlan.
Corresponds to the JSON property backupConfig
563 564 565 |
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 563 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
569 570 571 |
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 569 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
576 577 578 |
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 576 def cluster @cluster end |
#create_time ⇒ String
Output only. The timestamp when this BackupPlan resource was created.
Corresponds to the JSON property createTime
581 582 583 |
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 581 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
590 591 592 |
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 590 def deactivated @deactivated end |
#description ⇒ String
Optional. User specified descriptive string for this BackupPlan.
Corresponds to the JSON property description
596 597 598 |
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 596 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
608 609 610 |
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 608 def etag @etag end |
#labels ⇒ Hash<String,String>
Optional. A set of custom labels supplied by user.
Corresponds to the JSON property labels
613 614 615 |
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 613 def labels @labels end |
#last_successful_backup_time ⇒ String
Output only. Completion time of the last successful Backup. This is sourced
from a successful Backup's complete_time field. This field is added to
maintain consistency with BackupPlanBinding to display last successful backup
time.
Corresponds to the JSON property lastSuccessfulBackupTime
621 622 623 |
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 621 def last_successful_backup_time @last_successful_backup_time end |
#name ⇒ String
Output only. Identifier. The full name of the BackupPlan resource. Format:
projects/*/locations/*/backupPlans/*
Corresponds to the JSON property name
627 628 629 |
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 627 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
633 634 635 |
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 633 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
638 639 640 |
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 638 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
644 645 646 |
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 644 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
650 651 652 |
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 650 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
657 658 659 |
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 657 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
664 665 666 |
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 664 def state_reason @state_reason end |
#uid ⇒ String
Output only. Server generated global unique identifier of UUID format.
Corresponds to the JSON property uid
670 671 672 |
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 670 def uid @uid end |
#update_time ⇒ String
Output only. The timestamp when this BackupPlan resource was last updated.
Corresponds to the JSON property updateTime
675 676 677 |
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 675 def update_time @update_time end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 |
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 682 def update!(**args) @backup_channel = args[:backup_channel] if args.key?(:backup_channel) @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) @last_successful_backup_time = args[:last_successful_backup_time] if args.key?(:last_successful_backup_time) @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 |