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.



14395
14396
14397
# File 'lib/google/apis/compute_v1/classes.rb', line 14395

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)


14339
14340
14341
# File 'lib/google/apis/compute_v1/classes.rb', line 14339

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)


14345
14346
14347
# File 'lib/google/apis/compute_v1/classes.rb', line 14345

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)


14351
14352
14353
# File 'lib/google/apis/compute_v1/classes.rb', line 14351

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)


14357
14358
14359
# File 'lib/google/apis/compute_v1/classes.rb', line 14357

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)


14367
14368
14369
# File 'lib/google/apis/compute_v1/classes.rb', line 14367

def name
  @name
end

#propertiesGoogle::Apis::ComputeV1::InstanceProperties

Corresponds to the JSON property properties



14372
14373
14374
# File 'lib/google/apis/compute_v1/classes.rb', line 14372

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)


14377
14378
14379
# File 'lib/google/apis/compute_v1/classes.rb', line 14377

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)


14387
14388
14389
# File 'lib/google/apis/compute_v1/classes.rb', line 14387

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



14393
14394
14395
# File 'lib/google/apis/compute_v1/classes.rb', line 14393

def source_instance_params
  @source_instance_params
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



14400
14401
14402
14403
14404
14405
14406
14407
14408
14409
14410
# File 'lib/google/apis/compute_v1/classes.rb', line 14400

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