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.


7791
7792
7793
# File 'generated/google/apis/compute_v1/classes.rb', line 7791

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)

7701
7702
7703
# File 'generated/google/apis/compute_v1/classes.rb', line 7701

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)

7707
7708
7709
# File 'generated/google/apis/compute_v1/classes.rb', line 7707

def description
  @description
end

#disk_size_gbString

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

Returns:

  • (String)

7712
7713
7714
# File 'generated/google/apis/compute_v1/classes.rb', line 7712

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)

7718
7719
7720
# File 'generated/google/apis/compute_v1/classes.rb', line 7718

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)

7724
7725
7726
# File 'generated/google/apis/compute_v1/classes.rb', line 7724

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

7731
7732
7733
# File 'generated/google/apis/compute_v1/classes.rb', line 7731

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)

7741
7742
7743
# File 'generated/google/apis/compute_v1/classes.rb', line 7741

def name
  @name
end

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

Returns:

  • (String)

7746
7747
7748
# File 'generated/google/apis/compute_v1/classes.rb', line 7746

def self_link
  @self_link
end

#snapshot_encryption_keyGoogle::Apis::ComputeV1::CustomerEncryptionKey

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


7751
7752
7753
# File 'generated/google/apis/compute_v1/classes.rb', line 7751

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)

7756
7757
7758
# File 'generated/google/apis/compute_v1/classes.rb', line 7756

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


7761
7762
7763
# File 'generated/google/apis/compute_v1/classes.rb', line 7761

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)

7768
7769
7770
# File 'generated/google/apis/compute_v1/classes.rb', line 7768

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)

7774
7775
7776
# File 'generated/google/apis/compute_v1/classes.rb', line 7774

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)

7781
7782
7783
# File 'generated/google/apis/compute_v1/classes.rb', line 7781

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)

7789
7790
7791
# File 'generated/google/apis/compute_v1/classes.rb', line 7789

def storage_bytes_status
  @storage_bytes_status
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object


7796
7797
7798
7799
7800
7801
7802
7803
7804
7805
7806
7807
7808
7809
7810
7811
7812
# File 'generated/google/apis/compute_v1/classes.rb', line 7796

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