Class: Google::Apis::ComputeAlpha::InstanceProperties
- Inherits:
-
Object
- Object
- Google::Apis::ComputeAlpha::InstanceProperties
- Includes:
- Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
- Defined in:
- lib/google/apis/compute_alpha/classes.rb,
lib/google/apis/compute_alpha/representations.rb,
lib/google/apis/compute_alpha/representations.rb
Instance Attribute Summary collapse
-
#advanced_machine_features ⇒ Google::Apis::ComputeAlpha::AdvancedMachineFeatures
Specifies options for controlling advanced machine features.
-
#can_ip_forward ⇒ Boolean
(also: #can_ip_forward?)
Enables instances created based on these properties to send packets with source IP addresses other than their own and receive packets with destination IP addresses other than their own.
-
#confidential_instance_config ⇒ Google::Apis::ComputeAlpha::ConfidentialInstanceConfig
A set of Confidential Instance options.
-
#description ⇒ String
An optional text description for the instances that are created from these properties.
-
#disks ⇒ Array<Google::Apis::ComputeAlpha::AttachedDisk>
An array of disks that are associated with the instances that are created from these properties.
-
#display_device ⇒ Google::Apis::ComputeAlpha::DisplayDevice
A set of Display Device options Corresponds to the JSON property
displayDevice
. -
#guest_accelerators ⇒ Array<Google::Apis::ComputeAlpha::AcceleratorConfig>
A list of guest accelerator cards' type and count to use for instances created from these properties.
-
#labels ⇒ Hash<String,String>
Labels to apply to instances that are created from these properties.
-
#machine_type ⇒ String
The machine type to use for instances that are created from these properties.
-
#metadata ⇒ Google::Apis::ComputeAlpha::Metadata
A metadata key/value entry.
-
#min_cpu_platform ⇒ String
Minimum cpu/platform to be used by instances.
-
#network_interfaces ⇒ Array<Google::Apis::ComputeAlpha::NetworkInterface>
An array of network access configurations for this interface.
-
#network_performance_config ⇒ Google::Apis::ComputeAlpha::NetworkPerformanceConfig
Corresponds to the JSON property
networkPerformanceConfig
. -
#post_key_revocation_action_type ⇒ String
PostKeyRevocationActionType of the instance.
-
#private_ipv6_google_access ⇒ String
The private IPv6 google access type for VMs.
-
#reservation_affinity ⇒ Google::Apis::ComputeAlpha::ReservationAffinity
Specifies the reservations that this instance can consume from.
-
#resource_policies ⇒ Array<String>
Resource policies (names, not ULRs) applied to instances created from these properties.
-
#scheduling ⇒ Google::Apis::ComputeAlpha::Scheduling
Sets the scheduling options for an Instance.
-
#secure_tags ⇒ Array<String>
[Input Only] Secure tags to apply to this instance.
-
#service_accounts ⇒ Array<Google::Apis::ComputeAlpha::ServiceAccount>
A list of service accounts with specified scopes.
-
#shielded_instance_config ⇒ Google::Apis::ComputeAlpha::ShieldedInstanceConfig
A set of Shielded Instance options.
-
#shielded_vm_config ⇒ Google::Apis::ComputeAlpha::ShieldedVmConfig
A set of Shielded VM options.
-
#tags ⇒ Google::Apis::ComputeAlpha::Tags
A set of instance tags.
Instance Method Summary collapse
-
#initialize(**args) ⇒ InstanceProperties
constructor
A new instance of InstanceProperties.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ InstanceProperties
Returns a new instance of InstanceProperties.
17330 17331 17332 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 17330 def initialize(**args) update!(**args) end |
Instance Attribute Details
#advanced_machine_features ⇒ Google::Apis::ComputeAlpha::AdvancedMachineFeatures
Specifies options for controlling advanced machine features. Options that
would traditionally be configured in a BIOS belong here. Features that require
operating system support may have corresponding entries in the GuestOsFeatures
of an Image (e.g., whether or not the OS in the Image supports nested
virtualization being enabled or disabled).
Corresponds to the JSON property advancedMachineFeatures
17199 17200 17201 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 17199 def advanced_machine_features @advanced_machine_features end |
#can_ip_forward ⇒ Boolean Also known as: can_ip_forward?
Enables instances created based on these properties to send packets with
source IP addresses other than their own and receive packets with destination
IP addresses other than their own. If these instances will be used as an IP
gateway or it will be set as the next-hop in a Route resource, specify true.
If unsure, leave this set to false. See the Enable IP forwarding documentation
for more information.
Corresponds to the JSON property canIpForward
17209 17210 17211 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 17209 def can_ip_forward @can_ip_forward end |
#confidential_instance_config ⇒ Google::Apis::ComputeAlpha::ConfidentialInstanceConfig
A set of Confidential Instance options.
Corresponds to the JSON property confidentialInstanceConfig
17215 17216 17217 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 17215 def confidential_instance_config @confidential_instance_config end |
#description ⇒ String
An optional text description for the instances that are created from these
properties.
Corresponds to the JSON property description
17221 17222 17223 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 17221 def description @description end |
#disks ⇒ Array<Google::Apis::ComputeAlpha::AttachedDisk>
An array of disks that are associated with the instances that are created from
these properties.
Corresponds to the JSON property disks
17227 17228 17229 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 17227 def disks @disks end |
#display_device ⇒ Google::Apis::ComputeAlpha::DisplayDevice
A set of Display Device options
Corresponds to the JSON property displayDevice
17232 17233 17234 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 17232 def display_device @display_device end |
#guest_accelerators ⇒ Array<Google::Apis::ComputeAlpha::AcceleratorConfig>
A list of guest accelerator cards' type and count to use for instances created
from these properties.
Corresponds to the JSON property guestAccelerators
17238 17239 17240 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 17238 def guest_accelerators @guest_accelerators end |
#labels ⇒ Hash<String,String>
Labels to apply to instances that are created from these properties.
Corresponds to the JSON property labels
17243 17244 17245 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 17243 def labels @labels end |
#machine_type ⇒ String
The machine type to use for instances that are created from these properties.
Corresponds to the JSON property machineType
17248 17249 17250 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 17248 def machine_type @machine_type end |
#metadata ⇒ Google::Apis::ComputeAlpha::Metadata
A metadata key/value entry.
Corresponds to the JSON property metadata
17253 17254 17255 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 17253 def @metadata end |
#min_cpu_platform ⇒ String
Minimum cpu/platform to be used by instances. The instance may be scheduled on
the specified or newer cpu/platform. Applicable values are the friendly names
of CPU platforms, such as minCpuPlatform: "Intel Haswell" or minCpuPlatform: "
Intel Sandy Bridge". For more information, read Specifying a Minimum CPU
Platform.
Corresponds to the JSON property minCpuPlatform
17262 17263 17264 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 17262 def min_cpu_platform @min_cpu_platform end |
#network_interfaces ⇒ Array<Google::Apis::ComputeAlpha::NetworkInterface>
An array of network access configurations for this interface.
Corresponds to the JSON property networkInterfaces
17267 17268 17269 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 17267 def network_interfaces @network_interfaces end |
#network_performance_config ⇒ Google::Apis::ComputeAlpha::NetworkPerformanceConfig
Corresponds to the JSON property networkPerformanceConfig
17272 17273 17274 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 17272 def network_performance_config @network_performance_config end |
#post_key_revocation_action_type ⇒ String
PostKeyRevocationActionType of the instance.
Corresponds to the JSON property postKeyRevocationActionType
17277 17278 17279 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 17277 def post_key_revocation_action_type @post_key_revocation_action_type end |
#private_ipv6_google_access ⇒ String
The private IPv6 google access type for VMs. If not specified, use
INHERIT_FROM_SUBNETWORK as default.
Corresponds to the JSON property privateIpv6GoogleAccess
17283 17284 17285 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 17283 def private_ipv6_google_access @private_ipv6_google_access end |
#reservation_affinity ⇒ Google::Apis::ComputeAlpha::ReservationAffinity
Specifies the reservations that this instance can consume from.
Corresponds to the JSON property reservationAffinity
17288 17289 17290 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 17288 def reservation_affinity @reservation_affinity end |
#resource_policies ⇒ Array<String>
Resource policies (names, not ULRs) applied to instances created from these
properties.
Corresponds to the JSON property resourcePolicies
17294 17295 17296 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 17294 def resource_policies @resource_policies end |
#scheduling ⇒ Google::Apis::ComputeAlpha::Scheduling
Sets the scheduling options for an Instance. NextID: 21
Corresponds to the JSON property scheduling
17299 17300 17301 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 17299 def scheduling @scheduling end |
#secure_tags ⇒ Array<String>
[Input Only] Secure tags to apply to this instance. Maximum number of secure
tags allowed is 50.
Corresponds to the JSON property secureTags
17305 17306 17307 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 17305 def @secure_tags end |
#service_accounts ⇒ Array<Google::Apis::ComputeAlpha::ServiceAccount>
A list of service accounts with specified scopes. Access tokens for these
service accounts are available to the instances that are created from these
properties. Use metadata queries to obtain the access tokens for these
instances.
Corresponds to the JSON property serviceAccounts
17313 17314 17315 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 17313 def service_accounts @service_accounts end |
#shielded_instance_config ⇒ Google::Apis::ComputeAlpha::ShieldedInstanceConfig
A set of Shielded Instance options.
Corresponds to the JSON property shieldedInstanceConfig
17318 17319 17320 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 17318 def shielded_instance_config @shielded_instance_config end |
#shielded_vm_config ⇒ Google::Apis::ComputeAlpha::ShieldedVmConfig
A set of Shielded VM options.
Corresponds to the JSON property shieldedVmConfig
17323 17324 17325 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 17323 def shielded_vm_config @shielded_vm_config end |
#tags ⇒ Google::Apis::ComputeAlpha::Tags
A set of instance tags.
Corresponds to the JSON property tags
17328 17329 17330 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 17328 def @tags end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
17335 17336 17337 17338 17339 17340 17341 17342 17343 17344 17345 17346 17347 17348 17349 17350 17351 17352 17353 17354 17355 17356 17357 17358 17359 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 17335 def update!(**args) @advanced_machine_features = args[:advanced_machine_features] if args.key?(:advanced_machine_features) @can_ip_forward = args[:can_ip_forward] if args.key?(:can_ip_forward) @confidential_instance_config = args[:confidential_instance_config] if args.key?(:confidential_instance_config) @description = args[:description] if args.key?(:description) @disks = args[:disks] if args.key?(:disks) @display_device = args[:display_device] if args.key?(:display_device) @guest_accelerators = args[:guest_accelerators] if args.key?(:guest_accelerators) @labels = args[:labels] if args.key?(:labels) @machine_type = args[:machine_type] if args.key?(:machine_type) @metadata = args[:metadata] if args.key?(:metadata) @min_cpu_platform = args[:min_cpu_platform] if args.key?(:min_cpu_platform) @network_interfaces = args[:network_interfaces] if args.key?(:network_interfaces) @network_performance_config = args[:network_performance_config] if args.key?(:network_performance_config) @post_key_revocation_action_type = args[:post_key_revocation_action_type] if args.key?(:post_key_revocation_action_type) @private_ipv6_google_access = args[:private_ipv6_google_access] if args.key?(:private_ipv6_google_access) @reservation_affinity = args[:reservation_affinity] if args.key?(:reservation_affinity) @resource_policies = args[:resource_policies] if args.key?(:resource_policies) @scheduling = args[:scheduling] if args.key?(:scheduling) @secure_tags = args[:secure_tags] if args.key?(:secure_tags) @service_accounts = args[:service_accounts] if args.key?(:service_accounts) @shielded_instance_config = args[:shielded_instance_config] if args.key?(:shielded_instance_config) @shielded_vm_config = args[:shielded_vm_config] if args.key?(:shielded_vm_config) @tags = args[:tags] if args.key?(:tags) end |