Class: Google::Apis::ComputeAlpha::InstanceTemplate

Inherits:
Object
  • Object
show all
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. You can use instance templates to create VM instances and managed instance groups. For more information, read Instance Templates. (== resource_for $ api_version.instanceTemplates ==)

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ InstanceTemplate

Returns a new instance of InstanceTemplate.



16742
16743
16744
# File 'lib/google/apis/compute_alpha/classes.rb', line 16742

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#creation_timestampString

[Output Only] The creation timestamp for this instance template in RFC3339 text format. Corresponds to the JSON property creationTimestamp

Returns:

  • (String)


16681
16682
16683
# File 'lib/google/apis/compute_alpha/classes.rb', line 16681

def creation_timestamp
  @creation_timestamp
end

#descriptionString

An optional description of this resource. Provide this property when you create the resource. Corresponds to the JSON property description

Returns:

  • (String)


16687
16688
16689
# File 'lib/google/apis/compute_alpha/classes.rb', line 16687

def description
  @description
end

#idFixnum

[Output Only] A unique identifier for this instance template. The server defines this identifier. Corresponds to the JSON property id

Returns:

  • (Fixnum)


16693
16694
16695
# File 'lib/google/apis/compute_alpha/classes.rb', line 16693

def id
  @id
end

#kindString

[Output Only] The resource type, which is always compute#instanceTemplate for instance templates. Corresponds to the JSON property kind

Returns:

  • (String)


16699
16700
16701
# File 'lib/google/apis/compute_alpha/classes.rb', line 16699

def kind
  @kind
end

#nameString

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

Returns:

  • (String)


16709
16710
16711
# File 'lib/google/apis/compute_alpha/classes.rb', line 16709

def name
  @name
end

#propertiesGoogle::Apis::ComputeAlpha::InstanceProperties

Corresponds to the JSON property properties



16714
16715
16716
# File 'lib/google/apis/compute_alpha/classes.rb', line 16714

def properties
  @properties
end

[Output Only] The URL for this instance template. The server defines this URL. Corresponds to the JSON property selfLink

Returns:

  • (String)


16719
16720
16721
# File 'lib/google/apis/compute_alpha/classes.rb', line 16719

def self_link
  @self_link
end

[Output Only] Server-defined URL for this resource with the resource id. Corresponds to the JSON property selfLinkWithId

Returns:

  • (String)


16724
16725
16726
# File 'lib/google/apis/compute_alpha/classes.rb', line 16724

def self_link_with_id
  @self_link_with_id
end

#source_instanceString

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:

Returns:

  • (String)


16734
16735
16736
# File 'lib/google/apis/compute_alpha/classes.rb', line 16734

def source_instance
  @source_instance
end

#source_instance_paramsGoogle::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



16740
16741
16742
# File 'lib/google/apis/compute_alpha/classes.rb', line 16740

def source_instance_params
  @source_instance_params
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



16747
16748
16749
16750
16751
16752
16753
16754
16755
16756
16757
16758
# File 'lib/google/apis/compute_alpha/classes.rb', line 16747

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)
  @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