Class: Google::Apis::ComputeBeta::MachineImage
- Inherits:
-
Object
- Object
- Google::Apis::ComputeBeta::MachineImage
- Includes:
- Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
- Defined in:
- lib/google/apis/compute_beta/classes.rb,
lib/google/apis/compute_beta/representations.rb,
lib/google/apis/compute_beta/representations.rb
Overview
Represents a machine image resource. A machine image is a Compute Engine resource that stores all the configuration, metadata, permissions, and data from one or more disks required to create a Virtual machine (VM) instance. For more information, see Machine images.
Instance Attribute Summary collapse
-
#creation_timestamp ⇒ String
[Output Only] The creation timestamp for this machine image in RFC3339 text format.
-
#description ⇒ String
An optional description of this resource.
-
#guest_flush ⇒ Boolean
(also: #guest_flush?)
[Input Only] Whether to attempt an application consistent machine image by informing the OS to prepare for the snapshot process.
-
#id ⇒ Fixnum
[Output Only] A unique identifier for this machine image.
-
#instance_properties ⇒ Google::Apis::ComputeBeta::InstanceProperties
[Output Only] Properties of source instance Corresponds to the JSON property
instanceProperties. -
#kind ⇒ String
[Output Only] The resource type, which is always compute#machineImage for machine image.
-
#machine_image_encryption_key ⇒ Google::Apis::ComputeBeta::CustomerEncryptionKey
Encrypts the machine image using a customer-supplied encryption key.
-
#name ⇒ String
Name of the resource; provided by the client when the resource is created.
-
#satisfies_pzi ⇒ Boolean
(also: #satisfies_pzi?)
Output only.
-
#satisfies_pzs ⇒ Boolean
(also: #satisfies_pzs?)
[Output Only] Reserved for future use.
-
#saved_disks ⇒ Array<Google::Apis::ComputeBeta::SavedDisk>
An array of Machine Image specific properties for disks attached to the source instance Corresponds to the JSON property
savedDisks. -
#self_link ⇒ String
[Output Only] The URL for this machine image.
-
#source_disk_encryption_keys ⇒ Array<Google::Apis::ComputeBeta::SourceDiskEncryptionKey>
[Input Only] The customer-supplied encryption key of the disks attached to the source instance.
-
#source_instance ⇒ String
The source instance used to create the machine image.
-
#source_instance_properties ⇒ Google::Apis::ComputeBeta::SourceInstanceProperties
DEPRECATED: Please use compute#instanceProperties instead.
-
#status ⇒ String
[Output Only] The status of the machine image.
-
#storage_locations ⇒ Array<String>
The regional or multi-regional Cloud Storage bucket location where the machine image is stored.
-
#total_storage_bytes ⇒ Fixnum
[Output Only] Total size of the storage used by the machine image.
Instance Method Summary collapse
-
#initialize(**args) ⇒ MachineImage
constructor
A new instance of MachineImage.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ MachineImage
Returns a new instance of MachineImage.
23669 23670 23671 |
# File 'lib/google/apis/compute_beta/classes.rb', line 23669 def initialize(**args) update!(**args) end |
Instance Attribute Details
#creation_timestamp ⇒ String
[Output Only] The creation timestamp for this machine image in RFC3339 text
format.
Corresponds to the JSON property creationTimestamp
23553 23554 23555 |
# File 'lib/google/apis/compute_beta/classes.rb', line 23553 def @creation_timestamp end |
#description ⇒ String
An optional description of this resource. Provide this property when you
create the resource.
Corresponds to the JSON property description
23559 23560 23561 |
# File 'lib/google/apis/compute_beta/classes.rb', line 23559 def description @description end |
#guest_flush ⇒ Boolean Also known as: guest_flush?
[Input Only] Whether to attempt an application consistent machine image by
informing the OS to prepare for the snapshot process.
Corresponds to the JSON property guestFlush
23565 23566 23567 |
# File 'lib/google/apis/compute_beta/classes.rb', line 23565 def guest_flush @guest_flush end |
#id ⇒ Fixnum
[Output Only] A unique identifier for this machine image. The server defines
this identifier.
Corresponds to the JSON property id
23572 23573 23574 |
# File 'lib/google/apis/compute_beta/classes.rb', line 23572 def id @id end |
#instance_properties ⇒ Google::Apis::ComputeBeta::InstanceProperties
[Output Only] Properties of source instance
Corresponds to the JSON property instanceProperties
23577 23578 23579 |
# File 'lib/google/apis/compute_beta/classes.rb', line 23577 def instance_properties @instance_properties end |
#kind ⇒ String
[Output Only] The resource type, which is always compute#machineImage for
machine image.
Corresponds to the JSON property kind
23583 23584 23585 |
# File 'lib/google/apis/compute_beta/classes.rb', line 23583 def kind @kind end |
#machine_image_encryption_key ⇒ Google::Apis::ComputeBeta::CustomerEncryptionKey
Encrypts the machine image using a customer-supplied encryption key. After you
encrypt a machine image using a customer-supplied key, you must provide the
same key if you use the machine image later. For example, you must provide the
encryption key when you create an instance from the encrypted machine image in
a future request. Customer-supplied encryption keys do not protect access to
metadata of the machine image. If you do not provide an encryption key when
creating the machine image, then the machine image will be encrypted using an
automatically generated key and you do not need to provide a key to use the
machine image later.
Corresponds to the JSON property machineImageEncryptionKey
23596 23597 23598 |
# File 'lib/google/apis/compute_beta/classes.rb', line 23596 def machine_image_encryption_key @machine_image_encryption_key end |
#name ⇒ String
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
23606 23607 23608 |
# File 'lib/google/apis/compute_beta/classes.rb', line 23606 def name @name end |
#satisfies_pzi ⇒ Boolean Also known as: satisfies_pzi?
Output only. Reserved for future use.
Corresponds to the JSON property satisfiesPzi
23611 23612 23613 |
# File 'lib/google/apis/compute_beta/classes.rb', line 23611 def satisfies_pzi @satisfies_pzi end |
#satisfies_pzs ⇒ Boolean Also known as: satisfies_pzs?
[Output Only] Reserved for future use.
Corresponds to the JSON property satisfiesPzs
23617 23618 23619 |
# File 'lib/google/apis/compute_beta/classes.rb', line 23617 def satisfies_pzs @satisfies_pzs end |
#saved_disks ⇒ Array<Google::Apis::ComputeBeta::SavedDisk>
An array of Machine Image specific properties for disks attached to the source
instance
Corresponds to the JSON property savedDisks
23624 23625 23626 |
# File 'lib/google/apis/compute_beta/classes.rb', line 23624 def saved_disks @saved_disks end |
#self_link ⇒ String
[Output Only] The URL for this machine image. The server defines this URL.
Corresponds to the JSON property selfLink
23629 23630 23631 |
# File 'lib/google/apis/compute_beta/classes.rb', line 23629 def self_link @self_link end |
#source_disk_encryption_keys ⇒ Array<Google::Apis::ComputeBeta::SourceDiskEncryptionKey>
[Input Only] The customer-supplied encryption key of the disks attached to the
source instance. Required if the source disk is protected by a customer-
supplied encryption key.
Corresponds to the JSON property sourceDiskEncryptionKeys
23636 23637 23638 |
# File 'lib/google/apis/compute_beta/classes.rb', line 23636 def source_disk_encryption_keys @source_disk_encryption_keys end |
#source_instance ⇒ String
The source instance used to create the machine image. You can provide this as
a partial or full URL to the resource. For example, the following are valid
values: - https://www.googleapis.com/compute/v1/projects/project/zones/zone /
instances/instance - projects/project/zones/zone/instances/instance
Corresponds to the JSON property sourceInstance
23644 23645 23646 |
# File 'lib/google/apis/compute_beta/classes.rb', line 23644 def source_instance @source_instance end |
#source_instance_properties ⇒ Google::Apis::ComputeBeta::SourceInstanceProperties
DEPRECATED: Please use compute#instanceProperties instead. New properties will
not be added to this field.
Corresponds to the JSON property sourceInstanceProperties
23650 23651 23652 |
# File 'lib/google/apis/compute_beta/classes.rb', line 23650 def source_instance_properties @source_instance_properties end |
#status ⇒ String
[Output Only] The status of the machine image. One of the following values:
INVALID, CREATING, READY, DELETING, and UPLOADING.
Corresponds to the JSON property status
23656 23657 23658 |
# File 'lib/google/apis/compute_beta/classes.rb', line 23656 def status @status end |
#storage_locations ⇒ Array<String>
The regional or multi-regional Cloud Storage bucket location where the machine
image is stored.
Corresponds to the JSON property storageLocations
23662 23663 23664 |
# File 'lib/google/apis/compute_beta/classes.rb', line 23662 def storage_locations @storage_locations end |
#total_storage_bytes ⇒ Fixnum
[Output Only] Total size of the storage used by the machine image.
Corresponds to the JSON property totalStorageBytes
23667 23668 23669 |
# File 'lib/google/apis/compute_beta/classes.rb', line 23667 def total_storage_bytes @total_storage_bytes end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
23674 23675 23676 23677 23678 23679 23680 23681 23682 23683 23684 23685 23686 23687 23688 23689 23690 23691 23692 23693 |
# File 'lib/google/apis/compute_beta/classes.rb', line 23674 def update!(**args) @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp) @description = args[:description] if args.key?(:description) @guest_flush = args[:guest_flush] if args.key?(:guest_flush) @id = args[:id] if args.key?(:id) @instance_properties = args[:instance_properties] if args.key?(:instance_properties) @kind = args[:kind] if args.key?(:kind) @machine_image_encryption_key = args[:machine_image_encryption_key] if args.key?(:machine_image_encryption_key) @name = args[:name] if args.key?(:name) @satisfies_pzi = args[:satisfies_pzi] if args.key?(:satisfies_pzi) @satisfies_pzs = args[:satisfies_pzs] if args.key?(:satisfies_pzs) @saved_disks = args[:saved_disks] if args.key?(:saved_disks) @self_link = args[:self_link] if args.key?(:self_link) @source_disk_encryption_keys = args[:source_disk_encryption_keys] if args.key?(:source_disk_encryption_keys) @source_instance = args[:source_instance] if args.key?(:source_instance) @source_instance_properties = args[:source_instance_properties] if args.key?(:source_instance_properties) @status = args[:status] if args.key?(:status) @storage_locations = args[:storage_locations] if args.key?(:storage_locations) @total_storage_bytes = args[:total_storage_bytes] if args.key?(:total_storage_bytes) end |