Class: Google::Apis::ComputeBeta::NetworkEndpointGroup

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 a collection of network endpoints. A network endpoint group (NEG) defines how a set of endpoints should be reached, whether they are reachable, and where they are located. For more information about using NEGs, see Setting up external HTTP(S) Load Balancing with internet NEGs, Setting up zonal NEGs, or Setting up external HTTP(S) Load Balancing with serverless NEGs. (== resource_for $api_version. networkEndpointGroups ==) (== resource_for $api_version. globalNetworkEndpointGroups ==) (== resource_for $api_version. regionNetworkEndpointGroups ==)

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ NetworkEndpointGroup

Returns a new instance of NetworkEndpointGroup.



19686
19687
19688
# File 'lib/google/apis/compute_beta/classes.rb', line 19686

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

Instance Attribute Details

#annotationsHash<String,String>

Metadata defined as annotations on the network endpoint group. Corresponds to the JSON property annotations

Returns:

  • (Hash<String,String>)


19573
19574
19575
# File 'lib/google/apis/compute_beta/classes.rb', line 19573

def annotations
  @annotations
end

#app_engineGoogle::Apis::ComputeBeta::NetworkEndpointGroupAppEngine

Configuration for an App Engine network endpoint group (NEG). The service is optional, may be provided explicitly or in the URL mask. The version is optional and can only be provided explicitly or in the URL mask when service is present. Note: App Engine service must be in the same project and located in the same region as the Serverless NEG. Corresponds to the JSON property appEngine



19583
19584
19585
# File 'lib/google/apis/compute_beta/classes.rb', line 19583

def app_engine
  @app_engine
end

#cloud_functionGoogle::Apis::ComputeBeta::NetworkEndpointGroupCloudFunction

Configuration for a Cloud Function network endpoint group (NEG). The function must be provided explicitly or in the URL mask. Note: Cloud Function must be in the same project and located in the same region as the Serverless NEG. Corresponds to the JSON property cloudFunction



19591
19592
19593
# File 'lib/google/apis/compute_beta/classes.rb', line 19591

def cloud_function
  @cloud_function
end

#cloud_runGoogle::Apis::ComputeBeta::NetworkEndpointGroupCloudRun

Configuration for a Cloud Run network endpoint group (NEG). The service must be provided explicitly or in the URL mask. The tag is optional, may be provided explicitly or in the URL mask. Note: Cloud Run service must be in the same project and located in the same region as the Serverless NEG. Corresponds to the JSON property cloudRun



19600
19601
19602
# File 'lib/google/apis/compute_beta/classes.rb', line 19600

def cloud_run
  @cloud_run
end

#creation_timestampString

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

Returns:

  • (String)


19605
19606
19607
# File 'lib/google/apis/compute_beta/classes.rb', line 19605

def creation_timestamp
  @creation_timestamp
end

#default_portFixnum

The default port used if the port number is not specified in the network endpoint. Corresponds to the JSON property defaultPort

Returns:

  • (Fixnum)


19611
19612
19613
# File 'lib/google/apis/compute_beta/classes.rb', line 19611

def default_port
  @default_port
end

#descriptionString

An optional description of this resource. Provide this property when you create the resource. Corresponds to the JSON property description

Returns:

  • (String)


19617
19618
19619
# File 'lib/google/apis/compute_beta/classes.rb', line 19617

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)


19623
19624
19625
# File 'lib/google/apis/compute_beta/classes.rb', line 19623

def id
  @id
end

#kindString

[Output Only] Type of the resource. Always compute#networkEndpointGroup for network endpoint group. Corresponds to the JSON property kind

Returns:

  • (String)


19629
19630
19631
# File 'lib/google/apis/compute_beta/classes.rb', line 19629

def kind
  @kind
end

#load_balancerGoogle::Apis::ComputeBeta::NetworkEndpointGroupLbNetworkEndpointGroup

Load balancing specific fields for network endpoint group. Corresponds to the JSON property loadBalancer



19634
19635
19636
# File 'lib/google/apis/compute_beta/classes.rb', line 19634

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


19644
19645
19646
# File 'lib/google/apis/compute_beta/classes.rb', line 19644

def name
  @name
end

#networkString

The URL of the network to which all network endpoints in the NEG belong. Uses " default" project network if unspecified. Corresponds to the JSON property network

Returns:

  • (String)


19650
19651
19652
# File 'lib/google/apis/compute_beta/classes.rb', line 19650

def network
  @network
end

#network_endpoint_typeString

Type of network endpoints in this network endpoint group. Can be one of GCE_VM_IP_PORT, NON_GCP_PRIVATE_IP_PORT, INTERNET_FQDN_PORT, INTERNET_IP_PORT, or SERVERLESS. Corresponds to the JSON property networkEndpointType

Returns:

  • (String)


19657
19658
19659
# File 'lib/google/apis/compute_beta/classes.rb', line 19657

def network_endpoint_type
  @network_endpoint_type
end

#regionString

[Output Only] The URL of the region where the network endpoint group is located. Corresponds to the JSON property region

Returns:

  • (String)


19663
19664
19665
# File 'lib/google/apis/compute_beta/classes.rb', line 19663

def region
  @region
end

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

Returns:

  • (String)


19668
19669
19670
# File 'lib/google/apis/compute_beta/classes.rb', line 19668

def self_link
  @self_link
end

#sizeFixnum

[Output only] Number of network endpoints in the network endpoint group. Corresponds to the JSON property size

Returns:

  • (Fixnum)


19673
19674
19675
# File 'lib/google/apis/compute_beta/classes.rb', line 19673

def size
  @size
end

#subnetworkString

Optional URL of the subnetwork to which all network endpoints in the NEG belong. Corresponds to the JSON property subnetwork

Returns:

  • (String)


19679
19680
19681
# File 'lib/google/apis/compute_beta/classes.rb', line 19679

def subnetwork
  @subnetwork
end

#zoneString

[Output Only] The URL of the zone where the network endpoint group is located. Corresponds to the JSON property zone

Returns:

  • (String)


19684
19685
19686
# File 'lib/google/apis/compute_beta/classes.rb', line 19684

def zone
  @zone
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



19691
19692
19693
19694
19695
19696
19697
19698
19699
19700
19701
19702
19703
19704
19705
19706
19707
19708
19709
19710
# File 'lib/google/apis/compute_beta/classes.rb', line 19691

def update!(**args)
  @annotations = args[:annotations] if args.key?(:annotations)
  @app_engine = args[:app_engine] if args.key?(:app_engine)
  @cloud_function = args[:cloud_function] if args.key?(:cloud_function)
  @cloud_run = args[:cloud_run] if args.key?(:cloud_run)
  @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
  @default_port = args[:default_port] if args.key?(:default_port)
  @description = args[:description] if args.key?(:description)
  @id = args[:id] if args.key?(:id)
  @kind = args[:kind] if args.key?(:kind)
  @load_balancer = args[:load_balancer] if args.key?(:load_balancer)
  @name = args[:name] if args.key?(:name)
  @network = args[:network] if args.key?(:network)
  @network_endpoint_type = args[:network_endpoint_type] if args.key?(:network_endpoint_type)
  @region = args[:region] if args.key?(:region)
  @self_link = args[:self_link] if args.key?(:self_link)
  @size = args[:size] if args.key?(:size)
  @subnetwork = args[:subnetwork] if args.key?(:subnetwork)
  @zone = args[:zone] if args.key?(:zone)
end