Class: Google::Apis::ComputeAlpha::InstanceTemplate
- Inherits:
-
Object
- Object
- Google::Apis::ComputeAlpha::InstanceTemplate
- 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
Overview
Represents an Instance Template resource. Google Compute Engine has two Instance Template resources:
- Global
- Regional You can reuse a global instance template in different regions whereas you can use a regional instance template in a specified region only. If you want to reduce cross-region dependency or achieve data residency, use a regional instance template. To create VMs, managed instance groups, and reservations, you can use either global or regional instance templates. For more information, readInstance Templates.
Instance Attribute Summary collapse
-
#creation_timestamp ⇒ String
Output only.
-
#description ⇒ String
An optional description of this resource.
-
#id ⇒ Fixnum
Output only.
-
#kind ⇒ String
Output only.
-
#name ⇒ String
Name of the resource; provided by the client when the resource is created.
-
#properties ⇒ Google::Apis::ComputeAlpha::InstanceProperties
The instance properties for this instance template.
-
#region ⇒ String
Output only.
-
#self_link ⇒ String
Output only.
-
#self_link_with_id ⇒ String
Output only.
-
#source_instance ⇒ String
The source instance used to create the template.
-
#source_instance_params ⇒ Google::Apis::ComputeAlpha::SourceInstanceParams
A specification of the parameters to use when creating the instance template from a source instance.
Instance Method Summary collapse
-
#initialize(**args) ⇒ InstanceTemplate
constructor
A new instance of InstanceTemplate.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ InstanceTemplate
Returns a new instance of InstanceTemplate.
31398 31399 31400 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 31398 def initialize(**args) update!(**args) end |
Instance Attribute Details
#creation_timestamp ⇒ String
Output only. [Output Only] The creation timestamp for this instance template
inRFC3339
text format.
Corresponds to the JSON property creationTimestamp
31323 31324 31325 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 31323 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
31329 31330 31331 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 31329 def description @description end |
#id ⇒ Fixnum
Output only. [Output Only] A unique identifier for this instance template. The
server
defines this identifier.
Corresponds to the JSON property id
31336 31337 31338 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 31336 def id @id end |
#kind ⇒ String
Output only. [Output Only] The resource type, which is alwayscompute#
instanceTemplate for instance templates.
Corresponds to the JSON property kind
31342 31343 31344 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 31342 def kind @kind 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 withRFC1035.
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
31353 31354 31355 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 31353 def name @name end |
#properties ⇒ Google::Apis::ComputeAlpha::InstanceProperties
The instance properties for this instance template.
Corresponds to the JSON property properties
31358 31359 31360 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 31358 def properties @properties end |
#region ⇒ String
Output only. [Output Only] URL of the region where the instance template
resides. Only
applicable for regional resources.
Corresponds to the JSON property region
31365 31366 31367 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 31365 def region @region end |
#self_link ⇒ String
Output only. [Output Only] The URL for this instance template. The server
defines this
URL.
Corresponds to the JSON property selfLink
31372 31373 31374 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 31372 def self_link @self_link end |
#self_link_with_id ⇒ String
Output only. [Output Only] Server-defined URL for this resource with the
resource id.
Corresponds to the JSON property selfLinkWithId
31378 31379 31380 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 31378 def self_link_with_id @self_link_with_id end |
#source_instance ⇒ String
The source instance used to create the template. 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
31390 31391 31392 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 31390 def source_instance @source_instance end |
#source_instance_params ⇒ Google::Apis::ComputeAlpha::SourceInstanceParams
A specification of the parameters to use when creating the instance template
from a source instance.
Corresponds to the JSON property sourceInstanceParams
31396 31397 31398 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 31396 def source_instance_params @source_instance_params end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
31403 31404 31405 31406 31407 31408 31409 31410 31411 31412 31413 31414 31415 |
# File 'lib/google/apis/compute_alpha/classes.rb', line 31403 def update!(**args) @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp) @description = args[:description] if args.key?(:description) @id = args[:id] if args.key?(:id) @kind = args[:kind] if args.key?(:kind) @name = args[:name] if args.key?(:name) @properties = args[:properties] if args.key?(:properties) @region = args[:region] if args.key?(:region) @self_link = args[:self_link] if args.key?(:self_link) @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id) @source_instance = args[:source_instance] if args.key?(:source_instance) @source_instance_params = args[:source_instance_params] if args.key?(:source_instance_params) end |