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



8519
8520
8521
# File 'generated/google/apis/compute_v1/classes.rb', line 8519

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)


8429
8430
8431
# File 'generated/google/apis/compute_v1/classes.rb', line 8429

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)


8435
8436
8437
# File 'generated/google/apis/compute_v1/classes.rb', line 8435

def description
  @description
end

#disk_size_gbString

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

Returns:

  • (String)


8440
8441
8442
# File 'generated/google/apis/compute_v1/classes.rb', line 8440

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)


8446
8447
8448
# File 'generated/google/apis/compute_v1/classes.rb', line 8446

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)


8452
8453
8454
# File 'generated/google/apis/compute_v1/classes.rb', line 8452

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>)


8459
8460
8461
# File 'generated/google/apis/compute_v1/classes.rb', line 8459

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)


8469
8470
8471
# File 'generated/google/apis/compute_v1/classes.rb', line 8469

def name
  @name
end

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

Returns:

  • (String)


8474
8475
8476
# File 'generated/google/apis/compute_v1/classes.rb', line 8474

def self_link
  @self_link
end

#snapshot_encryption_keyGoogle::Apis::ComputeV1::CustomerEncryptionKey

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



8479
8480
8481
# File 'generated/google/apis/compute_v1/classes.rb', line 8479

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)


8484
8485
8486
# File 'generated/google/apis/compute_v1/classes.rb', line 8484

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



8489
8490
8491
# File 'generated/google/apis/compute_v1/classes.rb', line 8489

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)


8496
8497
8498
# File 'generated/google/apis/compute_v1/classes.rb', line 8496

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)


8502
8503
8504
# File 'generated/google/apis/compute_v1/classes.rb', line 8502

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)


8509
8510
8511
# File 'generated/google/apis/compute_v1/classes.rb', line 8509

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)


8517
8518
8519
# File 'generated/google/apis/compute_v1/classes.rb', line 8517

def storage_bytes_status
  @storage_bytes_status
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



8524
8525
8526
8527
8528
8529
8530
8531
8532
8533
8534
8535
8536
8537
8538
8539
8540
# File 'generated/google/apis/compute_v1/classes.rb', line 8524

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