pub struct Backup {Show 26 fields
pub name: String,
pub uid: String,
pub create_time: Option<Timestamp>,
pub update_time: Option<Timestamp>,
pub manual: bool,
pub labels: BTreeMap<String, String>,
pub delete_lock_days: i32,
pub delete_lock_expire_time: Option<Timestamp>,
pub retain_days: i32,
pub retain_expire_time: Option<Timestamp>,
pub encryption_key: Option<EncryptionKey>,
pub contains_volume_data: bool,
pub contains_secrets: bool,
pub cluster_metadata: Option<ClusterMetadata>,
pub state: i32,
pub state_reason: String,
pub complete_time: Option<Timestamp>,
pub resource_count: i32,
pub volume_count: i32,
pub size_bytes: i64,
pub etag: String,
pub description: String,
pub pod_count: i32,
pub config_backup_size_bytes: i64,
pub permissive_mode: bool,
pub backup_scope: Option<BackupScope>,
}
Expand description
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).
Fields§
§name: String
Output only. The fully qualified name of the Backup.
projects/*/locations/*/backupPlans/*/backups/*
uid: String
Output only. Server generated global unique identifier of UUID4
create_time: Option<Timestamp>
Output only. The timestamp when this Backup resource was created.
update_time: Option<Timestamp>
Output only. The timestamp when this Backup resource was last updated.
manual: bool
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.
labels: BTreeMap<String, String>
Optional. A set of custom labels supplied by user.
delete_lock_days: i32
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][google.cloud.gkebackup.v1.BackupPlan.RetentionPolicy.backup_delete_lock_days] setting and may only be increased (either at creation time or in a subsequent update).
delete_lock_expire_time: Option<Timestamp>
Output only. The time at which an existing delete lock will expire for this backup (calculated from create_time + [delete_lock_days][google.cloud.gkebackup.v1.Backup.delete_lock_days]).
retain_days: i32
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][google.cloud.gkebackup.v1.Backup.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][google.cloud.gkebackup.v1.BackupPlan.RetentionPolicy.backup_retain_days] value.
retain_expire_time: Option<Timestamp>
Output only. The time at which this Backup will be automatically deleted (calculated from create_time + [retain_days][google.cloud.gkebackup.v1.Backup.retain_days]).
encryption_key: Option<EncryptionKey>
Output only. The customer managed encryption key that was used to encrypt the Backup’s artifacts. Inherited from the parent BackupPlan’s [encryption_key][google.cloud.gkebackup.v1.BackupPlan.BackupConfig.encryption_key] value.
contains_volume_data: bool
Output only. Whether or not the Backup contains volume data. Controlled by the parent BackupPlan’s [include_volume_data][google.cloud.gkebackup.v1.BackupPlan.BackupConfig.include_volume_data] value.
contains_secrets: bool
Output only. Whether or not the Backup contains Kubernetes Secrets. Controlled by the parent BackupPlan’s [include_secrets][google.cloud.gkebackup.v1.BackupPlan.BackupConfig.include_secrets] value.
cluster_metadata: Option<ClusterMetadata>
Output only. Information about the GKE cluster from which this Backup was created.
state: i32
Output only. Current state of the Backup
state_reason: String
Output only. Human-readable description of why the backup is in the current
state
.
complete_time: Option<Timestamp>
Output only. Completion time of the Backup
resource_count: i32
Output only. The total number of Kubernetes resources included in the Backup.
volume_count: i32
Output only. The total number of volume backups contained in the Backup.
size_bytes: i64
Output only. The total size of the Backup in bytes = config backup size + sum(volume backup sizes)
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.
description: String
Optional. User specified descriptive string for this Backup.
pod_count: i32
Output only. The total number of Kubernetes Pods contained in the Backup.
config_backup_size_bytes: i64
Output only. The size of the config backup in bytes.
permissive_mode: bool
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][google.cloud.gkebackup.v1.BackupPlan.BackupConfig.permissive_mode] value.
backup_scope: Option<BackupScope>
Defines the “scope” of the Backup - which namespaced resources in the cluster were included in the Backup. Inherited from the parent BackupPlan’s [backup_scope][google.cloud.gkebackup.v1.BackupPlan.BackupConfig.backup_scope] value.
Implementations§
Trait Implementations§
source§impl Message for Backup
impl Message for Backup
source§fn encoded_len(&self) -> usize
fn encoded_len(&self) -> usize
source§fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
source§fn encode_to_vec(&self) -> Vec<u8>where
Self: Sized,
fn encode_to_vec(&self) -> Vec<u8>where
Self: Sized,
source§fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
source§fn encode_length_delimited_to_vec(&self) -> Vec<u8>where
Self: Sized,
fn encode_length_delimited_to_vec(&self) -> Vec<u8>where
Self: Sized,
source§fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
source§fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
source§fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self
. Read moresource§fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self
.source§impl PartialEq for Backup
impl PartialEq for Backup
impl StructuralPartialEq for Backup
Auto Trait Implementations§
impl Freeze for Backup
impl RefUnwindSafe for Backup
impl Send for Backup
impl Sync for Backup
impl Unpin for Backup
impl UnwindSafe for Backup
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T
in a tonic::Request