Class: Google::Apis::ComputeBeta::InstanceTemplate

Inherits:
Object
  • Object
show all
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. 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.



15285
15286
15287
# File 'lib/google/apis/compute_beta/classes.rb', line 15285

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)


15229
15230
15231
# File 'lib/google/apis/compute_beta/classes.rb', line 15229

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)


15235
15236
15237
# File 'lib/google/apis/compute_beta/classes.rb', line 15235

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)


15241
15242
15243
# File 'lib/google/apis/compute_beta/classes.rb', line 15241

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)


15247
15248
15249
# File 'lib/google/apis/compute_beta/classes.rb', line 15247

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)


15257
15258
15259
# File 'lib/google/apis/compute_beta/classes.rb', line 15257

def name
  @name
end

#propertiesGoogle::Apis::ComputeBeta::InstanceProperties

Corresponds to the JSON property properties



15262
15263
15264
# File 'lib/google/apis/compute_beta/classes.rb', line 15262

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)


15267
15268
15269
# File 'lib/google/apis/compute_beta/classes.rb', line 15267

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)


15277
15278
15279
# File 'lib/google/apis/compute_beta/classes.rb', line 15277

def source_instance
  @source_instance
end

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



15283
15284
15285
# File 'lib/google/apis/compute_beta/classes.rb', line 15283

def source_instance_params
  @source_instance_params
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



15290
15291
15292
15293
15294
15295
15296
15297
15298
15299
15300
# File 'lib/google/apis/compute_beta/classes.rb', line 15290

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