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



8610
8611
8612
# File 'generated/google/apis/compute_v1/classes.rb', line 8610

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)


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

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)


8526
8527
8528
# File 'generated/google/apis/compute_v1/classes.rb', line 8526

def description
  @description
end

#disk_size_gbFixnum

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

Returns:

  • (Fixnum)


8531
8532
8533
# File 'generated/google/apis/compute_v1/classes.rb', line 8531

def disk_size_gb
  @disk_size_gb
end

#idFixnum

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

Returns:

  • (Fixnum)


8537
8538
8539
# File 'generated/google/apis/compute_v1/classes.rb', line 8537

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)


8543
8544
8545
# File 'generated/google/apis/compute_v1/classes.rb', line 8543

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


8550
8551
8552
# File 'generated/google/apis/compute_v1/classes.rb', line 8550

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)


8560
8561
8562
# File 'generated/google/apis/compute_v1/classes.rb', line 8560

def name
  @name
end

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

Returns:

  • (String)


8565
8566
8567
# File 'generated/google/apis/compute_v1/classes.rb', line 8565

def self_link
  @self_link
end

#snapshot_encryption_keyGoogle::Apis::ComputeV1::CustomerEncryptionKey

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



8570
8571
8572
# File 'generated/google/apis/compute_v1/classes.rb', line 8570

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)


8575
8576
8577
# File 'generated/google/apis/compute_v1/classes.rb', line 8575

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



8580
8581
8582
# File 'generated/google/apis/compute_v1/classes.rb', line 8580

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)


8587
8588
8589
# File 'generated/google/apis/compute_v1/classes.rb', line 8587

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)


8593
8594
8595
# File 'generated/google/apis/compute_v1/classes.rb', line 8593

def status
  @status
end

#storage_bytesFixnum

[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:

  • (Fixnum)


8600
8601
8602
# File 'generated/google/apis/compute_v1/classes.rb', line 8600

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)


8608
8609
8610
# File 'generated/google/apis/compute_v1/classes.rb', line 8608

def storage_bytes_status
  @storage_bytes_status
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



8615
8616
8617
8618
8619
8620
8621
8622
8623
8624
8625
8626
8627
8628
8629
8630
8631
# File 'generated/google/apis/compute_v1/classes.rb', line 8615

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