Class: Google::Apis::AlloydbV1::Backup

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
lib/google/apis/alloydb_v1/classes.rb,
lib/google/apis/alloydb_v1/representations.rb,
lib/google/apis/alloydb_v1/representations.rb

Overview

Message describing Backup object

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ Backup

Returns a new instance of Backup.



297
298
299
# File 'lib/google/apis/alloydb_v1/classes.rb', line 297

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

Instance Attribute Details

#annotationsHash<String,String>

Annotations to allow client tools to store small amount of arbitrary data. This is distinct from labels. https://google.aip.dev/128 Corresponds to the JSON property annotations

Returns:

  • (Hash<String,String>)


152
153
154
# File 'lib/google/apis/alloydb_v1/classes.rb', line 152

def annotations
  @annotations
end

#cluster_nameString

Required. The full resource name of the backup source cluster (e.g., projects/ project/locations/region/clusters/cluster_id). Corresponds to the JSON property clusterName

Returns:

  • (String)


158
159
160
# File 'lib/google/apis/alloydb_v1/classes.rb', line 158

def cluster_name
  @cluster_name
end

#cluster_uidString

Output only. The system-generated UID of the cluster which was used to create this resource. Corresponds to the JSON property clusterUid

Returns:

  • (String)


164
165
166
# File 'lib/google/apis/alloydb_v1/classes.rb', line 164

def cluster_uid
  @cluster_uid
end

#create_completion_timeString

Output only. Timestamp when the resource finished being created. Corresponds to the JSON property createCompletionTime

Returns:

  • (String)


169
170
171
# File 'lib/google/apis/alloydb_v1/classes.rb', line 169

def create_completion_time
  @create_completion_time
end

#create_timeString

Output only. Create time stamp Corresponds to the JSON property createTime

Returns:

  • (String)


174
175
176
# File 'lib/google/apis/alloydb_v1/classes.rb', line 174

def create_time
  @create_time
end

#database_versionString

Output only. The database engine major version of the cluster this backup was created from. Any restored cluster created from this backup will have the same database version. Corresponds to the JSON property databaseVersion

Returns:

  • (String)


181
182
183
# File 'lib/google/apis/alloydb_v1/classes.rb', line 181

def database_version
  @database_version
end

#delete_timeString

Output only. Delete time stamp Corresponds to the JSON property deleteTime

Returns:

  • (String)


186
187
188
# File 'lib/google/apis/alloydb_v1/classes.rb', line 186

def delete_time
  @delete_time
end

#descriptionString

User-provided description of the backup. Corresponds to the JSON property description

Returns:

  • (String)


191
192
193
# File 'lib/google/apis/alloydb_v1/classes.rb', line 191

def description
  @description
end

#display_nameString

User-settable and human-readable display name for the Backup. Corresponds to the JSON property displayName

Returns:

  • (String)


196
197
198
# File 'lib/google/apis/alloydb_v1/classes.rb', line 196

def display_name
  @display_name
end

#encryption_configGoogle::Apis::AlloydbV1::EncryptionConfig

EncryptionConfig describes the encryption config of a cluster or a backup that is encrypted with a CMEK (customer-managed encryption key). Corresponds to the JSON property encryptionConfig



202
203
204
# File 'lib/google/apis/alloydb_v1/classes.rb', line 202

def encryption_config
  @encryption_config
end

#encryption_infoGoogle::Apis::AlloydbV1::EncryptionInfo

EncryptionInfo describes the encryption information of a cluster or a backup. Corresponds to the JSON property encryptionInfo



207
208
209
# File 'lib/google/apis/alloydb_v1/classes.rb', line 207

def encryption_info
  @encryption_info
end

#etagString

For Resource freshness validation (https://google.aip.dev/154) Corresponds to the JSON property etag

Returns:

  • (String)


212
213
214
# File 'lib/google/apis/alloydb_v1/classes.rb', line 212

def etag
  @etag
end

#expiry_quantityGoogle::Apis::AlloydbV1::QuantityBasedExpiry

A backup's position in a quantity-based retention queue, of backups with the same source cluster and type, with length, retention, specified by the backup' s retention policy. Once the position is greater than the retention, the backup is eligible to be garbage collected. Example: 5 backups from the same source cluster and type with a quantity-based retention of 3 and denoted by backup_id (position, retention). Safe: backup_5 (1, 3), backup_4, (2, 3), backup_3 (3, 3). Awaiting garbage collection: backup_2 (4, 3), backup_1 (5, 3) Corresponds to the JSON property expiryQuantity



223
224
225
# File 'lib/google/apis/alloydb_v1/classes.rb', line 223

def expiry_quantity
  @expiry_quantity
end

#expiry_timeString

Output only. The time at which after the backup is eligible to be garbage collected. It is the duration specified by the backup's retention policy, added to the backup's create_time. Corresponds to the JSON property expiryTime

Returns:

  • (String)


230
231
232
# File 'lib/google/apis/alloydb_v1/classes.rb', line 230

def expiry_time
  @expiry_time
end

#labelsHash<String,String>

Labels as key value pairs Corresponds to the JSON property labels

Returns:

  • (Hash<String,String>)


235
236
237
# File 'lib/google/apis/alloydb_v1/classes.rb', line 235

def labels
  @labels
end

#nameString

Output only. The name of the backup resource with the format: * projects/ project/locations/region/backups/backup_id where the cluster and backup ID segments should satisfy the regex expression [a-z]([a-z0-9-]0,61[a-z0-9]) ?, e.g. 1-63 characters of lowercase letters, numbers, and dashes, starting with a letter, and ending with a letter or number. For more details see https:/ /google.aip.dev/122. The prefix of the backup resource name is the name of the parent resource: * projects/project/locations/region Corresponds to the JSON property name

Returns:

  • (String)


246
247
248
# File 'lib/google/apis/alloydb_v1/classes.rb', line 246

def name
  @name
end

#reconcilingBoolean Also known as: reconciling?

Output only. Reconciling (https://google.aip.dev/128#reconciliation), if true, indicates that the service is actively updating the resource. This can happen due to user-triggered updates or system actions like failover or maintenance. Corresponds to the JSON property reconciling

Returns:

  • (Boolean)


253
254
255
# File 'lib/google/apis/alloydb_v1/classes.rb', line 253

def reconciling
  @reconciling
end

#satisfies_pzsBoolean Also known as: satisfies_pzs?

Output only. Reserved for future use. Corresponds to the JSON property satisfiesPzs

Returns:

  • (Boolean)


259
260
261
# File 'lib/google/apis/alloydb_v1/classes.rb', line 259

def satisfies_pzs
  @satisfies_pzs
end

#size_bytesFixnum

Output only. The size of the backup in bytes. Corresponds to the JSON property sizeBytes

Returns:

  • (Fixnum)


265
266
267
# File 'lib/google/apis/alloydb_v1/classes.rb', line 265

def size_bytes
  @size_bytes
end

#stateString

Output only. The current state of the backup. Corresponds to the JSON property state

Returns:

  • (String)


270
271
272
# File 'lib/google/apis/alloydb_v1/classes.rb', line 270

def state
  @state
end

#tagsHash<String,String>

Optional. Input only. Immutable. Tag keys/values directly bound to this resource. For example: "123/environment": "production", "123/costCenter": " marketing" Corresponds to the JSON property tags

Returns:

  • (Hash<String,String>)


277
278
279
# File 'lib/google/apis/alloydb_v1/classes.rb', line 277

def tags
  @tags
end

#typeString

The backup type, which suggests the trigger for the backup. Corresponds to the JSON property type

Returns:

  • (String)


282
283
284
# File 'lib/google/apis/alloydb_v1/classes.rb', line 282

def type
  @type
end

#uidString

Output only. The system-generated UID of the resource. The UID is assigned when the resource is created, and it is retained until it is deleted. Corresponds to the JSON property uid

Returns:

  • (String)


288
289
290
# File 'lib/google/apis/alloydb_v1/classes.rb', line 288

def uid
  @uid
end

#update_timeString

Output only. Update time stamp Users should not infer any meaning from this field. Its value is generally unrelated to the timing of the backup creation operation. Corresponds to the JSON property updateTime

Returns:

  • (String)


295
296
297
# File 'lib/google/apis/alloydb_v1/classes.rb', line 295

def update_time
  @update_time
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
# File 'lib/google/apis/alloydb_v1/classes.rb', line 302

def update!(**args)
  @annotations = args[:annotations] if args.key?(:annotations)
  @cluster_name = args[:cluster_name] if args.key?(:cluster_name)
  @cluster_uid = args[:cluster_uid] if args.key?(:cluster_uid)
  @create_completion_time = args[:create_completion_time] if args.key?(:create_completion_time)
  @create_time = args[:create_time] if args.key?(:create_time)
  @database_version = args[:database_version] if args.key?(:database_version)
  @delete_time = args[:delete_time] if args.key?(:delete_time)
  @description = args[:description] if args.key?(:description)
  @display_name = args[:display_name] if args.key?(:display_name)
  @encryption_config = args[:encryption_config] if args.key?(:encryption_config)
  @encryption_info = args[:encryption_info] if args.key?(:encryption_info)
  @etag = args[:etag] if args.key?(:etag)
  @expiry_quantity = args[:expiry_quantity] if args.key?(:expiry_quantity)
  @expiry_time = args[:expiry_time] if args.key?(:expiry_time)
  @labels = args[:labels] if args.key?(:labels)
  @name = args[:name] if args.key?(:name)
  @reconciling = args[:reconciling] if args.key?(:reconciling)
  @satisfies_pzs = args[:satisfies_pzs] if args.key?(:satisfies_pzs)
  @size_bytes = args[:size_bytes] if args.key?(:size_bytes)
  @state = args[:state] if args.key?(:state)
  @tags = args[:tags] if args.key?(:tags)
  @type = args[:type] if args.key?(:type)
  @uid = args[:uid] if args.key?(:uid)
  @update_time = args[:update_time] if args.key?(:update_time)
end