Class: Google::Apis::ComputeV1::Snapshot

Inherits:
Object
  • Object
show all
Includes:
Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
Defined in:
generated/google/apis/compute_v1/classes.rb,
generated/google/apis/compute_v1/representations.rb,
generated/google/apis/compute_v1/representations.rb

Overview

A persistent disk snapshot resource.

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from Google::Apis::Core::JsonObjectSupport

#to_json

Methods included from Google::Apis::Core::Hashable

process_value, #to_h

Constructor Details

#initialize(**args) ⇒ Snapshot

Returns a new instance of Snapshot



8395
8396
8397
# File 'generated/google/apis/compute_v1/classes.rb', line 8395

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

Instance Attribute Details

#creation_timestampString

[Output Only] Creation timestamp in RFC3339 text format. Corresponds to the JSON property creationTimestamp

Returns:

  • (String)


8305
8306
8307
# File 'generated/google/apis/compute_v1/classes.rb', line 8305

def creation_timestamp
  @creation_timestamp
end

#descriptionString

An optional description of this resource. Provide this property when you create the resource. Corresponds to the JSON property description

Returns:

  • (String)


8311
8312
8313
# File 'generated/google/apis/compute_v1/classes.rb', line 8311

def description
  @description
end

#disk_size_gbString

[Output Only] Size of the snapshot, specified in GB. Corresponds to the JSON property diskSizeGb

Returns:

  • (String)


8316
8317
8318
# File 'generated/google/apis/compute_v1/classes.rb', line 8316

def disk_size_gb
  @disk_size_gb
end

#idString

[Output Only] The unique identifier for the resource. This identifier is defined by the server. Corresponds to the JSON property id

Returns:

  • (String)


8322
8323
8324
# File 'generated/google/apis/compute_v1/classes.rb', line 8322

def id
  @id
end

#kindString

[Output Only] Type of the resource. Always compute#snapshot for Snapshot resources. Corresponds to the JSON property kind

Returns:

  • (String)


8328
8329
8330
# File 'generated/google/apis/compute_v1/classes.rb', line 8328

def kind
  @kind
end

#licensesArray<String>

[Output Only] A list of public visible licenses that apply to this snapshot. This can be because the original image had licenses attached (such as a Windows image). Corresponds to the JSON property licenses

Returns:

  • (Array<String>)


8335
8336
8337
# File 'generated/google/apis/compute_v1/classes.rb', line 8335

def licenses
  @licenses
end

#nameString

Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression a-z? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. Corresponds to the JSON property name

Returns:

  • (String)


8345
8346
8347
# File 'generated/google/apis/compute_v1/classes.rb', line 8345

def name
  @name
end

[Output Only] Server-defined URL for the resource. Corresponds to the JSON property selfLink

Returns:

  • (String)


8350
8351
8352
# File 'generated/google/apis/compute_v1/classes.rb', line 8350

def self_link
  @self_link
end

#snapshot_encryption_keyGoogle::Apis::ComputeV1::CustomerEncryptionKey

Represents a customer-supplied encryption key Corresponds to the JSON property snapshotEncryptionKey



8355
8356
8357
# File 'generated/google/apis/compute_v1/classes.rb', line 8355

def snapshot_encryption_key
  @snapshot_encryption_key
end

#source_diskString

[Output Only] The source disk used to create this snapshot. Corresponds to the JSON property sourceDisk

Returns:

  • (String)


8360
8361
8362
# File 'generated/google/apis/compute_v1/classes.rb', line 8360

def source_disk
  @source_disk
end

#source_disk_encryption_keyGoogle::Apis::ComputeV1::CustomerEncryptionKey

Represents a customer-supplied encryption key Corresponds to the JSON property sourceDiskEncryptionKey



8365
8366
8367
# File 'generated/google/apis/compute_v1/classes.rb', line 8365

def source_disk_encryption_key
  @source_disk_encryption_key
end

#source_disk_idString

[Output Only] The ID value of the disk used to create this snapshot. This value may be used to determine whether the snapshot was taken from the current or a previous instance of a given disk name. Corresponds to the JSON property sourceDiskId

Returns:

  • (String)


8372
8373
8374
# File 'generated/google/apis/compute_v1/classes.rb', line 8372

def source_disk_id
  @source_disk_id
end

#statusString

[Output Only] The status of the snapshot. This can be CREATING, DELETING, FAILED, READY, or UPLOADING. Corresponds to the JSON property status

Returns:

  • (String)


8378
8379
8380
# File 'generated/google/apis/compute_v1/classes.rb', line 8378

def status
  @status
end

#storage_bytesString

[Output Only] A size of the the storage used by the snapshot. As snapshots share storage, this number is expected to change with snapshot creation/ deletion. Corresponds to the JSON property storageBytes

Returns:

  • (String)


8385
8386
8387
# File 'generated/google/apis/compute_v1/classes.rb', line 8385

def storage_bytes
  @storage_bytes
end

#storage_bytes_statusString

[Output Only] An indicator whether storageBytes is in a stable state or it is being adjusted as a result of shared storage reallocation. This status can either be UPDATING, meaning the size of the snapshot is being updated, or UP_TO_DATE, meaning the size of the snapshot is up-to-date. Corresponds to the JSON property storageBytesStatus

Returns:

  • (String)


8393
8394
8395
# File 'generated/google/apis/compute_v1/classes.rb', line 8393

def storage_bytes_status
  @storage_bytes_status
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



8400
8401
8402
8403
8404
8405
8406
8407
8408
8409
8410
8411
8412
8413
8414
8415
8416
# File 'generated/google/apis/compute_v1/classes.rb', line 8400

def update!(**args)
  @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
  @description = args[:description] if args.key?(:description)
  @disk_size_gb = args[:disk_size_gb] if args.key?(:disk_size_gb)
  @id = args[:id] if args.key?(:id)
  @kind = args[:kind] if args.key?(:kind)
  @licenses = args[:licenses] if args.key?(:licenses)
  @name = args[:name] if args.key?(:name)
  @self_link = args[:self_link] if args.key?(:self_link)
  @snapshot_encryption_key = args[:snapshot_encryption_key] if args.key?(:snapshot_encryption_key)
  @source_disk = args[:source_disk] if args.key?(:source_disk)
  @source_disk_encryption_key = args[:source_disk_encryption_key] if args.key?(:source_disk_encryption_key)
  @source_disk_id = args[:source_disk_id] if args.key?(:source_disk_id)
  @status = args[:status] if args.key?(:status)
  @storage_bytes = args[:storage_bytes] if args.key?(:storage_bytes)
  @storage_bytes_status = args[:storage_bytes_status] if args.key?(:storage_bytes_status)
end