Class: Google::Apis::ComputeAlpha::TargetInstance

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 a Target Instance resource. You can use a target instance to handle traffic for one or more forwarding rules, which is ideal for forwarding protocol traffic that is managed by a single source. For example, ESP, AH, TCP, or UDP. For more information, read Target instances.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ TargetInstance

Returns a new instance of TargetInstance.



42124
42125
42126
# File 'lib/google/apis/compute_alpha/classes.rb', line 42124

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

Instance Attribute Details

#creation_timestampString

[Output Only] Creation timestamp in RFC3339 text format. Corresponds to the JSON property creationTimestamp

Returns:

  • (String)


42054
42055
42056
# File 'lib/google/apis/compute_alpha/classes.rb', line 42054

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)


42060
42061
42062
# File 'lib/google/apis/compute_alpha/classes.rb', line 42060

def description
  @description
end

#idFixnum

[Output Only] The unique identifier for the resource. This identifier is defined by the server. Corresponds to the JSON property id

Returns:

  • (Fixnum)


42066
42067
42068
# File 'lib/google/apis/compute_alpha/classes.rb', line 42066

def id
  @id
end

#instanceString

A URL to the virtual machine instance that handles traffic for this target instance. When creating a target instance, you can provide the fully-qualified URL or a valid partial URL to the desired virtual machine. For example, the following are all valid URLs: - https://www.googleapis.com/compute/v1/projects/ project/zones/zone /instances/instance - projects/project/zones/zone/instances/ instance - zones/zone/instances/instance Corresponds to the JSON property instance

Returns:

  • (String)


42076
42077
42078
# File 'lib/google/apis/compute_alpha/classes.rb', line 42076

def instance
  @instance
end

#kindString

[Output Only] The type of the resource. Always compute#targetInstance for target instances. Corresponds to the JSON property kind

Returns:

  • (String)


42082
42083
42084
# File 'lib/google/apis/compute_alpha/classes.rb', line 42082

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)


42092
42093
42094
# File 'lib/google/apis/compute_alpha/classes.rb', line 42092

def name
  @name
end

#nat_policyString

NAT option controlling how IPs are NAT'ed to the instance. Currently only NO_NAT (default value) is supported. Corresponds to the JSON property natPolicy

Returns:

  • (String)


42098
42099
42100
# File 'lib/google/apis/compute_alpha/classes.rb', line 42098

def nat_policy
  @nat_policy
end

#networkString

The URL of the network this target instance uses to forward traffic. If not specified, the traffic will be forwarded to the network that the default network interface belongs to. Corresponds to the JSON property network

Returns:

  • (String)


42105
42106
42107
# File 'lib/google/apis/compute_alpha/classes.rb', line 42105

def network
  @network
end

[Output Only] Server-defined URL for the resource. Corresponds to the JSON property selfLink

Returns:

  • (String)


42110
42111
42112
# File 'lib/google/apis/compute_alpha/classes.rb', line 42110

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)


42115
42116
42117
# File 'lib/google/apis/compute_alpha/classes.rb', line 42115

def self_link_with_id
  @self_link_with_id
end

#zoneString

[Output Only] URL of the zone where the target instance resides. You must specify this field as part of the HTTP request URL. It is not settable as a field in the request body. Corresponds to the JSON property zone

Returns:

  • (String)


42122
42123
42124
# File 'lib/google/apis/compute_alpha/classes.rb', line 42122

def zone
  @zone
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



42129
42130
42131
42132
42133
42134
42135
42136
42137
42138
42139
42140
42141
# File 'lib/google/apis/compute_alpha/classes.rb', line 42129

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)
  @instance = args[:instance] if args.key?(:instance)
  @kind = args[:kind] if args.key?(:kind)
  @name = args[:name] if args.key?(:name)
  @nat_policy = args[:nat_policy] if args.key?(:nat_policy)
  @network = args[:network] if args.key?(:network)
  @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)
  @zone = args[:zone] if args.key?(:zone)
end