Class: Google::Apis::ComputeV1::InstanceTemplate

Inherits:
Object
  • Object
show all
Includes:
Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
Defined in:
lib/google/apis/compute_v1/classes.rb,
lib/google/apis/compute_v1/representations.rb,
lib/google/apis/compute_v1/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.



14729
14730
14731
# File 'lib/google/apis/compute_v1/classes.rb', line 14729

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)


14673
14674
14675
# File 'lib/google/apis/compute_v1/classes.rb', line 14673

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)


14679
14680
14681
# File 'lib/google/apis/compute_v1/classes.rb', line 14679

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)


14685
14686
14687
# File 'lib/google/apis/compute_v1/classes.rb', line 14685

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)


14691
14692
14693
# File 'lib/google/apis/compute_v1/classes.rb', line 14691

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)


14701
14702
14703
# File 'lib/google/apis/compute_v1/classes.rb', line 14701

def name
  @name
end

#propertiesGoogle::Apis::ComputeV1::InstanceProperties

Corresponds to the JSON property properties



14706
14707
14708
# File 'lib/google/apis/compute_v1/classes.rb', line 14706

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)


14711
14712
14713
# File 'lib/google/apis/compute_v1/classes.rb', line 14711

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


14721
14722
14723
# File 'lib/google/apis/compute_v1/classes.rb', line 14721

def source_instance
  @source_instance
end

#source_instance_paramsGoogle::Apis::ComputeV1::SourceInstanceParams

A specification of the parameters to use when creating the instance template from a source instance. Corresponds to the JSON property sourceInstanceParams



14727
14728
14729
# File 'lib/google/apis/compute_v1/classes.rb', line 14727

def source_instance_params
  @source_instance_params
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



14734
14735
14736
14737
14738
14739
14740
14741
14742
14743
14744
# File 'lib/google/apis/compute_v1/classes.rb', line 14734

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)
  @source_instance = args[:source_instance] if args.key?(:source_instance)
  @source_instance_params = args[:source_instance_params] if args.key?(:source_instance_params)
end