Class: Google::Apis::ComputeBeta::Image

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

Overview

Represents an Image resource. You can use images to create boot disks for your VM instances. For more information, read Images. (== resource_for beta.images ==) (== resource_for v1. images ==)

Defined Under Namespace

Classes: RawDisk

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

Returns a new instance of Image



9753
9754
9755
# File 'generated/google/apis/compute_beta/classes.rb', line 9753

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

Instance Attribute Details

#archive_size_bytesFixnum

Size of the image tar.gz archive stored in Google Cloud Storage (in bytes). Corresponds to the JSON property archiveSizeBytes

Returns:

  • (Fixnum)


9565
9566
9567
# File 'generated/google/apis/compute_beta/classes.rb', line 9565

def archive_size_bytes
  @archive_size_bytes
end

#creation_timestampString

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

Returns:

  • (String)


9570
9571
9572
# File 'generated/google/apis/compute_beta/classes.rb', line 9570

def creation_timestamp
  @creation_timestamp
end

#deprecatedGoogle::Apis::ComputeBeta::DeprecationStatus

Deprecation status for a public resource. Corresponds to the JSON property deprecated



9575
9576
9577
# File 'generated/google/apis/compute_beta/classes.rb', line 9575

def deprecated
  @deprecated
end

#descriptionString

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

Returns:

  • (String)


9581
9582
9583
# File 'generated/google/apis/compute_beta/classes.rb', line 9581

def description
  @description
end

#disk_size_gbFixnum

Size of the image when restored onto a persistent disk (in GB). Corresponds to the JSON property diskSizeGb

Returns:

  • (Fixnum)


9586
9587
9588
# File 'generated/google/apis/compute_beta/classes.rb', line 9586

def disk_size_gb
  @disk_size_gb
end

#familyString

The name of the image family to which this image belongs. You can create disks by specifying an image family instead of a specific image name. The image family always returns its latest image that is not deprecated. The name of the image family must comply with RFC1035. Corresponds to the JSON property family

Returns:

  • (String)


9594
9595
9596
# File 'generated/google/apis/compute_beta/classes.rb', line 9594

def family
  @family
end

#guest_os_featuresArray<Google::Apis::ComputeBeta::GuestOsFeature>

A list of features to enable on the guest operating system. Applicable only for bootable images. Read Enabling guest operating system features to see a list of available options. Corresponds to the JSON property guestOsFeatures



9601
9602
9603
# File 'generated/google/apis/compute_beta/classes.rb', line 9601

def guest_os_features
  @guest_os_features
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)


9607
9608
9609
# File 'generated/google/apis/compute_beta/classes.rb', line 9607

def id
  @id
end

#image_encryption_keyGoogle::Apis::ComputeBeta::CustomerEncryptionKey

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



9612
9613
9614
# File 'generated/google/apis/compute_beta/classes.rb', line 9612

def image_encryption_key
  @image_encryption_key
end

#kindString

[Output Only] Type of the resource. Always compute#image for images. Corresponds to the JSON property kind

Returns:

  • (String)


9617
9618
9619
# File 'generated/google/apis/compute_beta/classes.rb', line 9617

def kind
  @kind
end

#label_fingerprintString

A fingerprint for the labels being applied to this image, which is essentially a hash of the labels used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels, otherwise the request will fail with error 412 conditionNotMet. To see the latest fingerprint, make a get() request to retrieve an image. Corresponds to the JSON property labelFingerprint NOTE: Values are automatically base64 encoded/decoded in the client library.

Returns:

  • (String)


9629
9630
9631
# File 'generated/google/apis/compute_beta/classes.rb', line 9629

def label_fingerprint
  @label_fingerprint
end

#labelsHash<String,String>

Labels to apply to this image. These can be later modified by the setLabels method. Corresponds to the JSON property labels

Returns:

  • (Hash<String,String>)


9635
9636
9637
# File 'generated/google/apis/compute_beta/classes.rb', line 9635

def labels
  @labels
end

#license_codesArray<Fixnum>

Integer license codes indicating which licenses are attached to this image. Corresponds to the JSON property licenseCodes

Returns:

  • (Array<Fixnum>)


9640
9641
9642
# File 'generated/google/apis/compute_beta/classes.rb', line 9640

def license_codes
  @license_codes
end

#licensesArray<String>

Any applicable license URI. Corresponds to the JSON property licenses

Returns:

  • (Array<String>)


9645
9646
9647
# File 'generated/google/apis/compute_beta/classes.rb', line 9645

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]([-a- z0-9]*[a-z0-9])? 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)


9655
9656
9657
# File 'generated/google/apis/compute_beta/classes.rb', line 9655

def name
  @name
end

#raw_diskGoogle::Apis::ComputeBeta::Image::RawDisk

The parameters of the raw disk image. Corresponds to the JSON property rawDisk



9660
9661
9662
# File 'generated/google/apis/compute_beta/classes.rb', line 9660

def raw_disk
  @raw_disk
end

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

Returns:

  • (String)


9665
9666
9667
# File 'generated/google/apis/compute_beta/classes.rb', line 9665

def self_link
  @self_link
end

#source_diskString

URL of the source disk used to create this image. This can be a full or valid partial URL. You must provide either this property or the rawDisk.source property but not both to create an image. For example, the following are valid values:

Returns:

  • (String)


9676
9677
9678
# File 'generated/google/apis/compute_beta/classes.rb', line 9676

def source_disk
  @source_disk
end

#source_disk_encryption_keyGoogle::Apis::ComputeBeta::CustomerEncryptionKey

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



9681
9682
9683
# File 'generated/google/apis/compute_beta/classes.rb', line 9681

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 image. This value may be used to determine whether the image was taken from the current or a previous instance of a given disk name. Corresponds to the JSON property sourceDiskId

Returns:

  • (String)


9688
9689
9690
# File 'generated/google/apis/compute_beta/classes.rb', line 9688

def source_disk_id
  @source_disk_id
end

#source_imageString

URL of the source image used to create this image. This can be a full or valid partial URL. You must provide exactly one of:

  • this property, or
  • the rawDisk.source property, or
  • the sourceDisk property in order to create an image. Corresponds to the JSON property sourceImage

Returns:

  • (String)


9697
9698
9699
# File 'generated/google/apis/compute_beta/classes.rb', line 9697

def source_image
  @source_image
end

#source_image_encryption_keyGoogle::Apis::ComputeBeta::CustomerEncryptionKey

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



9702
9703
9704
# File 'generated/google/apis/compute_beta/classes.rb', line 9702

def source_image_encryption_key
  @source_image_encryption_key
end

#source_image_idString

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

Returns:

  • (String)


9709
9710
9711
# File 'generated/google/apis/compute_beta/classes.rb', line 9709

def source_image_id
  @source_image_id
end

#source_snapshotString

URL of the source snapshot used to create this image. This can be a full or valid partial URL. You must provide exactly one of:

  • this property, or
  • the sourceImage property, or
  • the rawDisk.source property, or
  • the sourceDisk property in order to create an image. Corresponds to the JSON property sourceSnapshot

Returns:

  • (String)


9719
9720
9721
# File 'generated/google/apis/compute_beta/classes.rb', line 9719

def source_snapshot
  @source_snapshot
end

#source_snapshot_encryption_keyGoogle::Apis::ComputeBeta::CustomerEncryptionKey

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



9724
9725
9726
# File 'generated/google/apis/compute_beta/classes.rb', line 9724

def source_snapshot_encryption_key
  @source_snapshot_encryption_key
end

#source_snapshot_idString

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

Returns:

  • (String)


9731
9732
9733
# File 'generated/google/apis/compute_beta/classes.rb', line 9731

def source_snapshot_id
  @source_snapshot_id
end

#source_typeString

The type of the image used to create this disk. The default and only value is RAW Corresponds to the JSON property sourceType

Returns:

  • (String)


9737
9738
9739
# File 'generated/google/apis/compute_beta/classes.rb', line 9737

def source_type
  @source_type
end

#statusString

[Output Only] The status of the image. An image can be used to create other resources, such as instances, only after the image has been successfully created and the status is set to READY. Possible values are FAILED, PENDING, or READY. Corresponds to the JSON property status

Returns:

  • (String)


9745
9746
9747
# File 'generated/google/apis/compute_beta/classes.rb', line 9745

def status
  @status
end

#storage_locationsArray<String>

Cloud Storage bucket storage location of the image (regional or multi-regional) . Corresponds to the JSON property storageLocations

Returns:

  • (Array<String>)


9751
9752
9753
# File 'generated/google/apis/compute_beta/classes.rb', line 9751

def storage_locations
  @storage_locations
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



9758
9759
9760
9761
9762
9763
9764
9765
9766
9767
9768
9769
9770
9771
9772
9773
9774
9775
9776
9777
9778
9779
9780
9781
9782
9783
9784
9785
9786
9787
9788
# File 'generated/google/apis/compute_beta/classes.rb', line 9758

def update!(**args)
  @archive_size_bytes = args[:archive_size_bytes] if args.key?(:archive_size_bytes)
  @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
  @deprecated = args[:deprecated] if args.key?(:deprecated)
  @description = args[:description] if args.key?(:description)
  @disk_size_gb = args[:disk_size_gb] if args.key?(:disk_size_gb)
  @family = args[:family] if args.key?(:family)
  @guest_os_features = args[:guest_os_features] if args.key?(:guest_os_features)
  @id = args[:id] if args.key?(:id)
  @image_encryption_key = args[:image_encryption_key] if args.key?(:image_encryption_key)
  @kind = args[:kind] if args.key?(:kind)
  @label_fingerprint = args[:label_fingerprint] if args.key?(:label_fingerprint)
  @labels = args[:labels] if args.key?(:labels)
  @license_codes = args[:license_codes] if args.key?(:license_codes)
  @licenses = args[:licenses] if args.key?(:licenses)
  @name = args[:name] if args.key?(:name)
  @raw_disk = args[:raw_disk] if args.key?(:raw_disk)
  @self_link = args[:self_link] if args.key?(:self_link)
  @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)
  @source_image = args[:source_image] if args.key?(:source_image)
  @source_image_encryption_key = args[:source_image_encryption_key] if args.key?(:source_image_encryption_key)
  @source_image_id = args[:source_image_id] if args.key?(:source_image_id)
  @source_snapshot = args[:source_snapshot] if args.key?(:source_snapshot)
  @source_snapshot_encryption_key = args[:source_snapshot_encryption_key] if args.key?(:source_snapshot_encryption_key)
  @source_snapshot_id = args[:source_snapshot_id] if args.key?(:source_snapshot_id)
  @source_type = args[:source_type] if args.key?(:source_type)
  @status = args[:status] if args.key?(:status)
  @storage_locations = args[:storage_locations] if args.key?(:storage_locations)
end