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.



41706
41707
41708
# File 'lib/google/apis/compute_alpha/classes.rb', line 41706

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)


41636
41637
41638
# File 'lib/google/apis/compute_alpha/classes.rb', line 41636

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)


41642
41643
41644
# File 'lib/google/apis/compute_alpha/classes.rb', line 41642

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)


41648
41649
41650
# File 'lib/google/apis/compute_alpha/classes.rb', line 41648

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)


41658
41659
41660
# File 'lib/google/apis/compute_alpha/classes.rb', line 41658

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)


41664
41665
41666
# File 'lib/google/apis/compute_alpha/classes.rb', line 41664

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)


41674
41675
41676
# File 'lib/google/apis/compute_alpha/classes.rb', line 41674

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)


41680
41681
41682
# File 'lib/google/apis/compute_alpha/classes.rb', line 41680

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)


41687
41688
41689
# File 'lib/google/apis/compute_alpha/classes.rb', line 41687

def network
  @network
end

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

Returns:

  • (String)


41692
41693
41694
# File 'lib/google/apis/compute_alpha/classes.rb', line 41692

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)


41697
41698
41699
# File 'lib/google/apis/compute_alpha/classes.rb', line 41697

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)


41704
41705
41706
# File 'lib/google/apis/compute_alpha/classes.rb', line 41704

def zone
  @zone
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



41711
41712
41713
41714
41715
41716
41717
41718
41719
41720
41721
41722
41723
# File 'lib/google/apis/compute_alpha/classes.rb', line 41711

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