Class: Google::Apis::ComputeAlpha::InstanceProperties
- Inherits:
-
Object
- Object
- Google::Apis::ComputeAlpha::InstanceProperties
- Defined in:
- generated/google/apis/compute_alpha/classes.rb,
generated/google/apis/compute_alpha/representations.rb,
generated/google/apis/compute_alpha/representations.rb
Instance Attribute Summary collapse
-
#can_ip_forward ⇒ Boolean
(also: #can_ip_forward?)
Enables instances created based on this template 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 this instance template.
-
#disks ⇒ Array<Google::Apis::ComputeAlpha::AttachedDisk>
An array of disks that are associated with the instances that are created from this template.
-
#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 the instance template.
-
#labels ⇒ Hash<String,String>
Labels to apply to instances that are created from this template.
-
#machine_type ⇒ String
The machine type to use for instances that are created from this template.
-
#metadata ⇒ Google::Apis::ComputeAlpha::Metadata
A metadata key/value entry.
-
#min_cpu_platform ⇒ String
Minimum cpu/platform to be used by this instance.
-
#network_interfaces ⇒ Array<Google::Apis::ComputeAlpha::NetworkInterface>
An array of network access configurations for this interface.
-
#post_key_revocation_action_type ⇒ String
Specifies whether this instance will be shut down on key revocation.
-
#private_ipv6_google_access ⇒ String
The private IPv6 google access type for the VM.
-
#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 this templae.
-
#scheduling ⇒ Google::Apis::ComputeAlpha::Scheduling
Sets the scheduling options for an 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.
Methods included from Google::Apis::Core::JsonObjectSupport
Methods included from Google::Apis::Core::Hashable
Constructor Details
#initialize(**args) ⇒ InstanceProperties
Returns a new instance of InstanceProperties.
14236 14237 14238 |
# File 'generated/google/apis/compute_alpha/classes.rb', line 14236 def initialize(**args) update!(**args) end |
Instance Attribute Details
#can_ip_forward ⇒ Boolean Also known as: can_ip_forward?
Enables instances created based on this template 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
14127 14128 14129 |
# File 'generated/google/apis/compute_alpha/classes.rb', line 14127 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
14133 14134 14135 |
# File 'generated/google/apis/compute_alpha/classes.rb', line 14133 def confidential_instance_config @confidential_instance_config end |
#description ⇒ String
An optional text description for the instances that are created from this
instance template.
Corresponds to the JSON property description
14139 14140 14141 |
# File 'generated/google/apis/compute_alpha/classes.rb', line 14139 def description @description end |
#disks ⇒ Array<Google::Apis::ComputeAlpha::AttachedDisk>
An array of disks that are associated with the instances that are created from
this template.
Corresponds to the JSON property disks
14145 14146 14147 |
# File 'generated/google/apis/compute_alpha/classes.rb', line 14145 def disks @disks end |
#display_device ⇒ Google::Apis::ComputeAlpha::DisplayDevice
A set of Display Device options
Corresponds to the JSON property displayDevice
14150 14151 14152 |
# File 'generated/google/apis/compute_alpha/classes.rb', line 14150 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 the instance template.
Corresponds to the JSON property guestAccelerators
14156 14157 14158 |
# File 'generated/google/apis/compute_alpha/classes.rb', line 14156 def guest_accelerators @guest_accelerators end |
#labels ⇒ Hash<String,String>
Labels to apply to instances that are created from this template.
Corresponds to the JSON property labels
14161 14162 14163 |
# File 'generated/google/apis/compute_alpha/classes.rb', line 14161 def labels @labels end |
#machine_type ⇒ String
The machine type to use for instances that are created from this template.
Corresponds to the JSON property machineType
14166 14167 14168 |
# File 'generated/google/apis/compute_alpha/classes.rb', line 14166 def machine_type @machine_type end |
#metadata ⇒ Google::Apis::ComputeAlpha::Metadata
A metadata key/value entry.
Corresponds to the JSON property metadata
14171 14172 14173 |
# File 'generated/google/apis/compute_alpha/classes.rb', line 14171 def @metadata end |
#min_cpu_platform ⇒ String
Minimum cpu/platform to be used by this instance. 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
14180 14181 14182 |
# File 'generated/google/apis/compute_alpha/classes.rb', line 14180 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
14185 14186 14187 |
# File 'generated/google/apis/compute_alpha/classes.rb', line 14185 def network_interfaces @network_interfaces end |
#post_key_revocation_action_type ⇒ String
Specifies whether this instance will be shut down on key revocation.
Corresponds to the JSON property postKeyRevocationActionType
14190 14191 14192 |
# File 'generated/google/apis/compute_alpha/classes.rb', line 14190 def post_key_revocation_action_type @post_key_revocation_action_type end |
#private_ipv6_google_access ⇒ String
The private IPv6 google access type for the VM. If not specified, use
INHERIT_FROM_SUBNETWORK as default.
Corresponds to the JSON property privateIpv6GoogleAccess
14196 14197 14198 |
# File 'generated/google/apis/compute_alpha/classes.rb', line 14196 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
14201 14202 14203 |
# File 'generated/google/apis/compute_alpha/classes.rb', line 14201 def reservation_affinity @reservation_affinity end |
#resource_policies ⇒ Array<String>
Resource policies (names, not ULRs) applied to instances created from this
templae.
Corresponds to the JSON property resourcePolicies
14207 14208 14209 |
# File 'generated/google/apis/compute_alpha/classes.rb', line 14207 def resource_policies @resource_policies end |
#scheduling ⇒ Google::Apis::ComputeAlpha::Scheduling
Sets the scheduling options for an Instance. NextID: 9
Corresponds to the JSON property scheduling
14212 14213 14214 |
# File 'generated/google/apis/compute_alpha/classes.rb', line 14212 def scheduling @scheduling 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 this
template. Use metadata queries to obtain the access tokens for these instances.
Corresponds to the JSON property serviceAccounts
14219 14220 14221 |
# File 'generated/google/apis/compute_alpha/classes.rb', line 14219 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
14224 14225 14226 |
# File 'generated/google/apis/compute_alpha/classes.rb', line 14224 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
14229 14230 14231 |
# File 'generated/google/apis/compute_alpha/classes.rb', line 14229 def shielded_vm_config @shielded_vm_config end |
#tags ⇒ Google::Apis::ComputeAlpha::Tags
A set of instance tags.
Corresponds to the JSON property tags
14234 14235 14236 |
# File 'generated/google/apis/compute_alpha/classes.rb', line 14234 def @tags end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
14241 14242 14243 14244 14245 14246 14247 14248 14249 14250 14251 14252 14253 14254 14255 14256 14257 14258 14259 14260 14261 14262 |
# File 'generated/google/apis/compute_alpha/classes.rb', line 14241 def update!(**args) @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) @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) @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 |