Class: Google::Apis::ComputeV1::NetworkEndpointGroup

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 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 for different use cases, see Network endpoint groups overview.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ NetworkEndpointGroup

Returns a new instance of NetworkEndpointGroup.



24473
24474
24475
# File 'lib/google/apis/compute_v1/classes.rb', line 24473

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>)


24354
24355
24356
# File 'lib/google/apis/compute_v1/classes.rb', line 24354

def annotations
  @annotations
end

#app_engineGoogle::Apis::ComputeV1::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



24363
24364
24365
# File 'lib/google/apis/compute_v1/classes.rb', line 24363

def app_engine
  @app_engine
end

#cloud_functionGoogle::Apis::ComputeV1::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



24370
24371
24372
# File 'lib/google/apis/compute_v1/classes.rb', line 24370

def cloud_function
  @cloud_function
end

#cloud_runGoogle::Apis::ComputeV1::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



24378
24379
24380
# File 'lib/google/apis/compute_v1/classes.rb', line 24378

def cloud_run
  @cloud_run
end

#creation_timestampString

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

Returns:

  • (String)


24383
24384
24385
# File 'lib/google/apis/compute_v1/classes.rb', line 24383

def creation_timestamp
  @creation_timestamp
end

#default_portFixnum

The default port used if the port number is not specified in the network endpoint. If the network endpoint type is either GCE_VM_IP, SERVERLESS or PRIVATE_SERVICE_CONNECT, this field must not be specified. Corresponds to the JSON property defaultPort

Returns:

  • (Fixnum)


24390
24391
24392
# File 'lib/google/apis/compute_v1/classes.rb', line 24390

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)


24396
24397
24398
# File 'lib/google/apis/compute_v1/classes.rb', line 24396

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)


24402
24403
24404
# File 'lib/google/apis/compute_v1/classes.rb', line 24402

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)


24408
24409
24410
# File 'lib/google/apis/compute_v1/classes.rb', line 24408

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)


24418
24419
24420
# File 'lib/google/apis/compute_v1/classes.rb', line 24418

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)


24424
24425
24426
# File 'lib/google/apis/compute_v1/classes.rb', line 24424

def network
  @network
end

#network_endpoint_typeString

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

Returns:

  • (String)


24431
24432
24433
# File 'lib/google/apis/compute_v1/classes.rb', line 24431

def network_endpoint_type
  @network_endpoint_type
end

#psc_dataGoogle::Apis::ComputeV1::NetworkEndpointGroupPscData

All data that is specifically relevant to only network endpoint groups of type PRIVATE_SERVICE_CONNECT. Corresponds to the JSON property pscData



24437
24438
24439
# File 'lib/google/apis/compute_v1/classes.rb', line 24437

def psc_data
  @psc_data
end

#psc_target_serviceString

The target service url used to set up private service connection to a Google API or a PSC Producer Service Attachment. An example value is: asia-northeast3- cloudkms.googleapis.com Corresponds to the JSON property pscTargetService

Returns:

  • (String)


24444
24445
24446
# File 'lib/google/apis/compute_v1/classes.rb', line 24444

def psc_target_service
  @psc_target_service
end

#regionString

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

Returns:

  • (String)


24450
24451
24452
# File 'lib/google/apis/compute_v1/classes.rb', line 24450

def region
  @region
end

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

Returns:

  • (String)


24455
24456
24457
# File 'lib/google/apis/compute_v1/classes.rb', line 24455

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)


24460
24461
24462
# File 'lib/google/apis/compute_v1/classes.rb', line 24460

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)


24466
24467
24468
# File 'lib/google/apis/compute_v1/classes.rb', line 24466

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)


24471
24472
24473
# File 'lib/google/apis/compute_v1/classes.rb', line 24471

def zone
  @zone
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



24478
24479
24480
24481
24482
24483
24484
24485
24486
24487
24488
24489
24490
24491
24492
24493
24494
24495
24496
24497
24498
# File 'lib/google/apis/compute_v1/classes.rb', line 24478

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)
  @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)
  @psc_data = args[:psc_data] if args.key?(:psc_data)
  @psc_target_service = args[:psc_target_service] if args.key?(:psc_target_service)
  @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