Class: Google::Apis::GkebackupV1::Backup
- Inherits:
-
Object
- Object
- Google::Apis::GkebackupV1::Backup
- 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
Represents a request to perform a single point-in-time capture of some portion of the state of a GKE cluster, the record of the backup operation itself, and an anchor for the underlying artifacts that comprise the Backup (the config backup and VolumeBackups).
Instance Attribute Summary collapse
-
#all_namespaces ⇒ Boolean
(also: #all_namespaces?)
Output only.
-
#cluster_metadata ⇒ Google::Apis::GkebackupV1::ClusterMetadata
Information about the GKE cluster from which this Backup was created.
-
#complete_time ⇒ String
Output only.
-
#config_backup_size_bytes ⇒ Fixnum
Output only.
-
#contains_secrets ⇒ Boolean
(also: #contains_secrets?)
Output only.
-
#contains_volume_data ⇒ Boolean
(also: #contains_volume_data?)
Output only.
-
#create_time ⇒ String
Output only.
-
#delete_lock_days ⇒ Fixnum
Optional.
-
#delete_lock_expire_time ⇒ String
Output only.
-
#description ⇒ String
Optional.
-
#encryption_key ⇒ Google::Apis::GkebackupV1::EncryptionKey
Defined a customer managed encryption key that will be used to encrypt Backup artifacts.
-
#etag ⇒ String
Output only.
-
#labels ⇒ Hash<String,String>
Optional.
-
#manual ⇒ Boolean
(also: #manual?)
Output only.
-
#name ⇒ String
Output only.
-
#namespace_count ⇒ Fixnum
Output only.
-
#permissive_mode ⇒ Boolean
(also: #permissive_mode?)
Output only.
-
#pod_count ⇒ Fixnum
Output only.
-
#resource_count ⇒ Fixnum
Output only.
-
#retain_days ⇒ Fixnum
Optional.
-
#retain_expire_time ⇒ String
Output only.
-
#satisfies_pzi ⇒ Boolean
(also: #satisfies_pzi?)
Output only.
-
#satisfies_pzs ⇒ Boolean
(also: #satisfies_pzs?)
Output only.
-
#selected_applications ⇒ Google::Apis::GkebackupV1::NamespacedNames
A list of namespaced Kubernetes resources.
-
#selected_namespace_labels ⇒ Google::Apis::GkebackupV1::ResourceLabels
A list of Kubernetes labels.
-
#selected_namespaces ⇒ Google::Apis::GkebackupV1::Namespaces
A list of Kubernetes Namespaces.
-
#size_bytes ⇒ Fixnum
Output only.
-
#state ⇒ String
Output only.
-
#state_reason ⇒ String
Output only.
-
#troubleshooting_info ⇒ Google::Apis::GkebackupV1::TroubleshootingInfo
Stores information about troubleshooting doc for debugging a particular state of an operation (eg - backup/restore).
-
#uid ⇒ String
Output only.
-
#update_time ⇒ String
Output only.
-
#volume_count ⇒ Fixnum
Output only.
Instance Method Summary collapse
-
#initialize(**args) ⇒ Backup
constructor
A new instance of Backup.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ Backup
Returns a new instance of Backup.
593 594 595 |
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 593 def initialize(**args) update!(**args) end |
Instance Attribute Details
#all_namespaces ⇒ Boolean Also known as: all_namespaces?
Output only. If True, all namespaces were included in the Backup.
Corresponds to the JSON property allNamespaces
392 393 394 |
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 392 def all_namespaces @all_namespaces end |
#cluster_metadata ⇒ Google::Apis::GkebackupV1::ClusterMetadata
Information about the GKE cluster from which this Backup was created.
Corresponds to the JSON property clusterMetadata
398 399 400 |
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 398 def @cluster_metadata end |
#complete_time ⇒ String
Output only. Completion time of the Backup
Corresponds to the JSON property completeTime
403 404 405 |
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 403 def complete_time @complete_time end |
#config_backup_size_bytes ⇒ Fixnum
Output only. The size of the config backup in bytes.
Corresponds to the JSON property configBackupSizeBytes
408 409 410 |
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 408 def config_backup_size_bytes @config_backup_size_bytes end |
#contains_secrets ⇒ Boolean Also known as: contains_secrets?
Output only. Whether or not the Backup contains Kubernetes Secrets. Controlled
by the parent BackupPlan's include_secrets value.
Corresponds to the JSON property containsSecrets
414 415 416 |
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 414 def contains_secrets @contains_secrets end |
#contains_volume_data ⇒ Boolean Also known as: contains_volume_data?
Output only. Whether or not the Backup contains volume data. Controlled by the
parent BackupPlan's include_volume_data value.
Corresponds to the JSON property containsVolumeData
421 422 423 |
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 421 def contains_volume_data @contains_volume_data end |
#create_time ⇒ String
Output only. The timestamp when this Backup resource was created.
Corresponds to the JSON property createTime
427 428 429 |
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 427 def create_time @create_time end |
#delete_lock_days ⇒ Fixnum
Optional. Minimum age for this Backup (in days). If this field is set to a non-
zero value, the Backup will be "locked" against deletion (either manual or
automatic deletion) for the number of days provided (measured from the
creation time of the Backup). MUST be an integer value between 0-90 (inclusive)
. Defaults to parent BackupPlan's backup_delete_lock_days setting and may only
be increased (either at creation time or in a subsequent update).
Corresponds to the JSON property deleteLockDays
437 438 439 |
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 437 def delete_lock_days @delete_lock_days end |
#delete_lock_expire_time ⇒ String
Output only. The time at which an existing delete lock will expire for this
backup (calculated from create_time + delete_lock_days).
Corresponds to the JSON property deleteLockExpireTime
443 444 445 |
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 443 def delete_lock_expire_time @delete_lock_expire_time end |
#description ⇒ String
Optional. User specified descriptive string for this Backup.
Corresponds to the JSON property description
448 449 450 |
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 448 def description @description end |
#encryption_key ⇒ Google::Apis::GkebackupV1::EncryptionKey
Defined a customer managed encryption key that will be used to encrypt Backup
artifacts.
Corresponds to the JSON property encryptionKey
454 455 456 |
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 454 def encryption_key @encryption_key end |
#etag ⇒ String
Output only. etag is used for optimistic concurrency control as a way to
help prevent simultaneous updates of a backup from overwriting each other. It
is strongly suggested that systems make use of the etag in the read-modify-
write cycle to perform backup updates in order to avoid race conditions: An
etag is returned in the response to GetBackup, and systems are expected to
put that etag in the request to UpdateBackup or DeleteBackup to ensure
that their change will be applied to the same version of the resource.
Corresponds to the JSON property etag
465 466 467 |
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 465 def etag @etag end |
#labels ⇒ Hash<String,String>
Optional. A set of custom labels supplied by user.
Corresponds to the JSON property labels
470 471 472 |
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 470 def labels @labels end |
#manual ⇒ Boolean Also known as: manual?
Output only. This flag indicates whether this Backup resource was created
manually by a user or via a schedule in the BackupPlan. A value of True means
that the Backup was created manually.
Corresponds to the JSON property manual
477 478 479 |
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 477 def manual @manual end |
#name ⇒ String
Output only. Identifier. The fully qualified name of the Backup. projects/*/
locations/*/backupPlans/*/backups/*
Corresponds to the JSON property name
484 485 486 |
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 484 def name @name end |
#namespace_count ⇒ Fixnum
Output only. The total number of user managed namespaces contained in the
Backup.
Corresponds to the JSON property namespaceCount
490 491 492 |
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 490 def namespace_count @namespace_count end |
#permissive_mode ⇒ Boolean Also known as: permissive_mode?
Output only. If false, Backup will fail when Backup for GKE detects Kubernetes
configuration that is non-standard or requires additional setup to restore.
Inherited from the parent BackupPlan's permissive_mode value.
Corresponds to the JSON property permissiveMode
497 498 499 |
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 497 def permissive_mode @permissive_mode end |
#pod_count ⇒ Fixnum
Output only. The total number of Kubernetes Pods contained in the Backup.
Corresponds to the JSON property podCount
503 504 505 |
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 503 def pod_count @pod_count end |
#resource_count ⇒ Fixnum
Output only. The total number of Kubernetes resources included in the Backup.
Corresponds to the JSON property resourceCount
508 509 510 |
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 508 def resource_count @resource_count end |
#retain_days ⇒ Fixnum
Optional. The age (in days) after which this Backup will be automatically
deleted. Must be an integer value >= 0: - If 0, no automatic deletion will
occur for this Backup. - If not 0, this must be >= delete_lock_days and <= 365.
Once a Backup is created, this value may only be increased. Defaults to the
parent BackupPlan's backup_retain_days value.
Corresponds to the JSON property retainDays
517 518 519 |
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 517 def retain_days @retain_days end |
#retain_expire_time ⇒ String
Output only. The time at which this Backup will be automatically deleted (
calculated from create_time + retain_days).
Corresponds to the JSON property retainExpireTime
523 524 525 |
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 523 def retain_expire_time @retain_expire_time end |
#satisfies_pzi ⇒ Boolean Also known as: satisfies_pzi?
Output only. [Output Only] Reserved for future use.
Corresponds to the JSON property satisfiesPzi
528 529 530 |
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 528 def satisfies_pzi @satisfies_pzi end |
#satisfies_pzs ⇒ Boolean Also known as: satisfies_pzs?
Output only. [Output Only] Reserved for future use.
Corresponds to the JSON property satisfiesPzs
534 535 536 |
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 534 def satisfies_pzs @satisfies_pzs end |
#selected_applications ⇒ Google::Apis::GkebackupV1::NamespacedNames
A list of namespaced Kubernetes resources.
Corresponds to the JSON property selectedApplications
540 541 542 |
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 540 def selected_applications @selected_applications end |
#selected_namespace_labels ⇒ Google::Apis::GkebackupV1::ResourceLabels
A list of Kubernetes labels.
Corresponds to the JSON property selectedNamespaceLabels
545 546 547 |
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 545 def selected_namespace_labels @selected_namespace_labels end |
#selected_namespaces ⇒ Google::Apis::GkebackupV1::Namespaces
A list of Kubernetes Namespaces.
Corresponds to the JSON property selectedNamespaces
550 551 552 |
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 550 def selected_namespaces @selected_namespaces end |
#size_bytes ⇒ Fixnum
Output only. The total size of the Backup in bytes = config backup size + sum(
volume backup sizes)
Corresponds to the JSON property sizeBytes
556 557 558 |
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 556 def size_bytes @size_bytes end |
#state ⇒ String
Output only. Current state of the Backup
Corresponds to the JSON property state
561 562 563 |
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 561 def state @state end |
#state_reason ⇒ String
Output only. Human-readable description of why the backup 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
568 569 570 |
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 568 def state_reason @state_reason end |
#troubleshooting_info ⇒ Google::Apis::GkebackupV1::TroubleshootingInfo
Stores information about troubleshooting doc for debugging a particular state
of an operation (eg - backup/restore). This will be used by the end user to
debug their operation failure scenario easily.
Corresponds to the JSON property troubleshootingInfo
575 576 577 |
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 575 def troubleshooting_info @troubleshooting_info end |
#uid ⇒ String
Output only. Server generated global unique identifier of UUID4
Corresponds to the JSON property uid
581 582 583 |
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 581 def uid @uid end |
#update_time ⇒ String
Output only. The timestamp when this Backup resource was last updated.
Corresponds to the JSON property updateTime
586 587 588 |
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 586 def update_time @update_time end |
#volume_count ⇒ Fixnum
Output only. The total number of volume backups contained in the Backup.
Corresponds to the JSON property volumeCount
591 592 593 |
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 591 def volume_count @volume_count end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 |
# File 'lib/google/apis/gkebackup_v1/classes.rb', line 598 def update!(**args) @all_namespaces = args[:all_namespaces] if args.key?(:all_namespaces) @cluster_metadata = args[:cluster_metadata] if args.key?(:cluster_metadata) @complete_time = args[:complete_time] if args.key?(:complete_time) @config_backup_size_bytes = args[:config_backup_size_bytes] if args.key?(:config_backup_size_bytes) @contains_secrets = args[:contains_secrets] if args.key?(:contains_secrets) @contains_volume_data = args[:contains_volume_data] if args.key?(:contains_volume_data) @create_time = args[:create_time] if args.key?(:create_time) @delete_lock_days = args[:delete_lock_days] if args.key?(:delete_lock_days) @delete_lock_expire_time = args[:delete_lock_expire_time] if args.key?(:delete_lock_expire_time) @description = args[:description] if args.key?(:description) @encryption_key = args[:encryption_key] if args.key?(:encryption_key) @etag = args[:etag] if args.key?(:etag) @labels = args[:labels] if args.key?(:labels) @manual = args[:manual] if args.key?(:manual) @name = args[:name] if args.key?(:name) @namespace_count = args[:namespace_count] if args.key?(:namespace_count) @permissive_mode = args[:permissive_mode] if args.key?(:permissive_mode) @pod_count = args[:pod_count] if args.key?(:pod_count) @resource_count = args[:resource_count] if args.key?(:resource_count) @retain_days = args[:retain_days] if args.key?(:retain_days) @retain_expire_time = args[:retain_expire_time] if args.key?(:retain_expire_time) @satisfies_pzi = args[:satisfies_pzi] if args.key?(:satisfies_pzi) @satisfies_pzs = args[:satisfies_pzs] if args.key?(:satisfies_pzs) @selected_applications = args[:selected_applications] if args.key?(:selected_applications) @selected_namespace_labels = args[:selected_namespace_labels] if args.key?(:selected_namespace_labels) @selected_namespaces = args[:selected_namespaces] if args.key?(:selected_namespaces) @size_bytes = args[:size_bytes] if args.key?(:size_bytes) @state = args[:state] if args.key?(:state) @state_reason = args[:state_reason] if args.key?(:state_reason) @troubleshooting_info = args[:troubleshooting_info] if args.key?(:troubleshooting_info) @uid = args[:uid] if args.key?(:uid) @update_time = args[:update_time] if args.key?(:update_time) @volume_count = args[:volume_count] if args.key?(:volume_count) end |