Class: Google::Apis::ComputeBeta::InstanceTemplate
- Inherits:
 - 
      Object
      
        
- Object
 - Google::Apis::ComputeBeta::InstanceTemplate
 
 
- 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 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, read Instance Templates.
Instance Attribute Summary collapse
- 
  
    
      #creation_timestamp  ⇒ String 
    
    
  
  
  
  
    
    
  
  
  
  
  
  
    
[Output Only] The creation timestamp for this instance template in RFC3339 text format.
 - 
  
    
      #description  ⇒ String 
    
    
  
  
  
  
    
    
  
  
  
  
  
  
    
An optional description of this resource.
 - 
  
    
      #id  ⇒ Fixnum 
    
    
  
  
  
  
    
    
  
  
  
  
  
  
    
[Output Only] A unique identifier for this instance template.
 - 
  
    
      #kind  ⇒ String 
    
    
  
  
  
  
    
    
  
  
  
  
  
  
    
[Output Only] The resource type, which is always compute#instanceTemplate for instance templates.
 - 
  
    
      #name  ⇒ String 
    
    
  
  
  
  
    
    
  
  
  
  
  
  
    
Name of the resource; provided by the client when the resource is created.
 - 
  
    
      #properties  ⇒ Google::Apis::ComputeBeta::InstanceProperties 
    
    
  
  
  
  
    
    
  
  
  
  
  
  
    
The instance properties for this instance template.
 - 
  
    
      #region  ⇒ String 
    
    
  
  
  
  
    
    
  
  
  
  
  
  
    
[Output Only] URL of the region where the instance template resides.
 - 
  
    
      #self_link  ⇒ String 
    
    
  
  
  
  
    
    
  
  
  
  
  
  
    
[Output Only] The URL for this instance template.
 - 
  
    
      #source_instance  ⇒ String 
    
    
  
  
  
  
    
    
  
  
  
  
  
  
    
The source instance used to create the template.
 - 
  
    
      #source_instance_params  ⇒ Google::Apis::ComputeBeta::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.
      19281 19282 19283  | 
    
      # File 'lib/google/apis/compute_beta/classes.rb', line 19281 def initialize(**args) update!(**args) end  | 
  
Instance Attribute Details
#creation_timestamp ⇒ String
[Output Only] The creation timestamp for this instance template in RFC3339
text format.
Corresponds to the JSON property creationTimestamp
      19221 19222 19223  | 
    
      # File 'lib/google/apis/compute_beta/classes.rb', line 19221 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
      19227 19228 19229  | 
    
      # File 'lib/google/apis/compute_beta/classes.rb', line 19227 def description @description end  | 
  
#id ⇒ Fixnum
[Output Only] A unique identifier for this instance template. The server
defines this identifier.
Corresponds to the JSON property id
      19233 19234 19235  | 
    
      # File 'lib/google/apis/compute_beta/classes.rb', line 19233 def id @id end  | 
  
#kind ⇒ String
[Output Only] The resource type, which is always compute#instanceTemplate for
instance templates.
Corresponds to the JSON property kind
      19239 19240 19241  | 
    
      # File 'lib/google/apis/compute_beta/classes.rb', line 19239 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 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
      19249 19250 19251  | 
    
      # File 'lib/google/apis/compute_beta/classes.rb', line 19249 def name @name end  | 
  
#properties ⇒ Google::Apis::ComputeBeta::InstanceProperties
The instance properties for this instance template.
Corresponds to the JSON property properties
      19254 19255 19256  | 
    
      # File 'lib/google/apis/compute_beta/classes.rb', line 19254 def properties @properties end  | 
  
#region ⇒ String
[Output Only] URL of the region where the instance template resides. Only
applicable for regional resources.
Corresponds to the JSON property region
      19260 19261 19262  | 
    
      # File 'lib/google/apis/compute_beta/classes.rb', line 19260 def region @region end  | 
  
#self_link ⇒ String
[Output Only] The URL for this instance template. The server defines this URL.
Corresponds to the JSON property selfLink
      19265 19266 19267  | 
    
      # File 'lib/google/apis/compute_beta/classes.rb', line 19265 def self_link @self_link 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
      19273 19274 19275  | 
    
      # File 'lib/google/apis/compute_beta/classes.rb', line 19273 def source_instance @source_instance end  | 
  
#source_instance_params ⇒ Google::Apis::ComputeBeta::SourceInstanceParams
A specification of the parameters to use when creating the instance template
from a source instance.
Corresponds to the JSON property sourceInstanceParams
      19279 19280 19281  | 
    
      # File 'lib/google/apis/compute_beta/classes.rb', line 19279 def source_instance_params @source_instance_params end  | 
  
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
      19286 19287 19288 19289 19290 19291 19292 19293 19294 19295 19296 19297  | 
    
      # File 'lib/google/apis/compute_beta/classes.rb', line 19286 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) @source_instance = args[:source_instance] if args.key?(:source_instance) @source_instance_params = args[:source_instance_params] if args.key?(:source_instance_params) end  |