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



8633
8634
8635
# File 'generated/google/apis/compute_v1/classes.rb', line 8633

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)


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

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)


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

def description
  @description
end

#disk_size_gbFixnum

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

Returns:

  • (Fixnum)


8554
8555
8556
# File 'generated/google/apis/compute_v1/classes.rb', line 8554

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)


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

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)


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

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


8573
8574
8575
# File 'generated/google/apis/compute_v1/classes.rb', line 8573

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)


8583
8584
8585
# File 'generated/google/apis/compute_v1/classes.rb', line 8583

def name
  @name
end

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

Returns:

  • (String)


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

def self_link
  @self_link
end

#snapshot_encryption_keyGoogle::Apis::ComputeV1::CustomerEncryptionKey

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



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

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)


8598
8599
8600
# File 'generated/google/apis/compute_v1/classes.rb', line 8598

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



8603
8604
8605
# File 'generated/google/apis/compute_v1/classes.rb', line 8603

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)


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

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)


8616
8617
8618
# File 'generated/google/apis/compute_v1/classes.rb', line 8616

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)


8623
8624
8625
# File 'generated/google/apis/compute_v1/classes.rb', line 8623

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)


8631
8632
8633
# File 'generated/google/apis/compute_v1/classes.rb', line 8631

def storage_bytes_status
  @storage_bytes_status
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



8638
8639
8640
8641
8642
8643
8644
8645
8646
8647
8648
8649
8650
8651
8652
8653
8654
# File 'generated/google/apis/compute_v1/classes.rb', line 8638

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