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.



17025
17026
17027
# File 'lib/google/apis/compute_alpha/classes.rb', line 17025

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)


16964
16965
16966
# File 'lib/google/apis/compute_alpha/classes.rb', line 16964

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)


16970
16971
16972
# File 'lib/google/apis/compute_alpha/classes.rb', line 16970

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)


16976
16977
16978
# File 'lib/google/apis/compute_alpha/classes.rb', line 16976

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)


16982
16983
16984
# File 'lib/google/apis/compute_alpha/classes.rb', line 16982

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)


16992
16993
16994
# File 'lib/google/apis/compute_alpha/classes.rb', line 16992

def name
  @name
end

#propertiesGoogle::Apis::ComputeAlpha::InstanceProperties

Corresponds to the JSON property properties



16997
16998
16999
# File 'lib/google/apis/compute_alpha/classes.rb', line 16997

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)


17002
17003
17004
# File 'lib/google/apis/compute_alpha/classes.rb', line 17002

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)


17007
17008
17009
# File 'lib/google/apis/compute_alpha/classes.rb', line 17007

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)


17017
17018
17019
# File 'lib/google/apis/compute_alpha/classes.rb', line 17017

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



17023
17024
17025
# File 'lib/google/apis/compute_alpha/classes.rb', line 17023

def source_instance_params
  @source_instance_params
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



17030
17031
17032
17033
17034
17035
17036
17037
17038
17039
17040
17041
# File 'lib/google/apis/compute_alpha/classes.rb', line 17030

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