gcp.compute.NetworkEndpointList
Explore with Pulumi AI
A set of network endpoints belonging to a network endpoint group (NEG). A single network endpoint represents a IP address and port combination that is part of a specific network endpoint group (NEG). NEGs are zonal collections of these endpoints for GCP resources within a single subnet. NOTE: Network endpoints cannot be created outside of a network endpoint group.
This resource is authoritative for a single NEG. Any endpoints not specified by this resource will be deleted when the resource configuration is applied.
NOTE In case the Endpoint’s Instance is recreated, it’s needed to perform
apply
twice. To avoid situations like this, please use this resource with the lifecyclereplace_triggered_by
method, with the passed Instance’s ID.
To get more information about NetworkEndpoints, see:
- API documentation
- How-to Guides
Example Usage
Network Endpoints
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const myImage = gcp.compute.getImage({
family: "debian-11",
project: "debian-cloud",
});
const _default = new gcp.compute.Network("default", {
name: "neg-network",
autoCreateSubnetworks: false,
});
const defaultSubnetwork = new gcp.compute.Subnetwork("default", {
name: "neg-subnetwork",
ipCidrRange: "10.0.0.1/16",
region: "us-central1",
network: _default.id,
});
const endpoint_instance1 = new gcp.compute.Instance("endpoint-instance1", {
networkInterfaces: [{
accessConfigs: [{}],
subnetwork: defaultSubnetwork.id,
}],
name: "endpoint-instance1",
machineType: "e2-medium",
bootDisk: {
initializeParams: {
image: myImage.then(myImage => myImage.selfLink),
},
},
});
const endpoint_instance2 = new gcp.compute.Instance("endpoint-instance2", {
networkInterfaces: [{
accessConfigs: [{}],
subnetwork: defaultSubnetwork.id,
}],
name: "endpoint-instance2",
machineType: "e2-medium",
bootDisk: {
initializeParams: {
image: myImage.then(myImage => myImage.selfLink),
},
},
});
const default_endpoints = new gcp.compute.NetworkEndpointList("default-endpoints", {
networkEndpointGroup: neg.name,
networkEndpoints: [
{
instance: endpoint_instance1.name,
port: neg.defaultPort,
ipAddress: endpoint_instance1.networkInterfaces.apply(networkInterfaces => networkInterfaces[0].networkIp),
},
{
instance: endpoint_instance2.name,
port: neg.defaultPort,
ipAddress: endpoint_instance2.networkInterfaces.apply(networkInterfaces => networkInterfaces[0].networkIp),
},
],
});
const group = new gcp.compute.NetworkEndpointGroup("group", {
name: "my-lb-neg",
network: _default.id,
subnetwork: defaultSubnetwork.id,
defaultPort: 90,
zone: "us-central1-a",
});
import pulumi
import pulumi_gcp as gcp
my_image = gcp.compute.get_image(family="debian-11",
project="debian-cloud")
default = gcp.compute.Network("default",
name="neg-network",
auto_create_subnetworks=False)
default_subnetwork = gcp.compute.Subnetwork("default",
name="neg-subnetwork",
ip_cidr_range="10.0.0.1/16",
region="us-central1",
network=default.id)
endpoint_instance1 = gcp.compute.Instance("endpoint-instance1",
network_interfaces=[gcp.compute.InstanceNetworkInterfaceArgs(
access_configs=[gcp.compute.InstanceNetworkInterfaceAccessConfigArgs()],
subnetwork=default_subnetwork.id,
)],
name="endpoint-instance1",
machine_type="e2-medium",
boot_disk=gcp.compute.InstanceBootDiskArgs(
initialize_params=gcp.compute.InstanceBootDiskInitializeParamsArgs(
image=my_image.self_link,
),
))
endpoint_instance2 = gcp.compute.Instance("endpoint-instance2",
network_interfaces=[gcp.compute.InstanceNetworkInterfaceArgs(
access_configs=[gcp.compute.InstanceNetworkInterfaceAccessConfigArgs()],
subnetwork=default_subnetwork.id,
)],
name="endpoint-instance2",
machine_type="e2-medium",
boot_disk=gcp.compute.InstanceBootDiskArgs(
initialize_params=gcp.compute.InstanceBootDiskInitializeParamsArgs(
image=my_image.self_link,
),
))
default_endpoints = gcp.compute.NetworkEndpointList("default-endpoints",
network_endpoint_group=neg["name"],
network_endpoints=[
gcp.compute.NetworkEndpointListNetworkEndpointArgs(
instance=endpoint_instance1.name,
port=neg["defaultPort"],
ip_address=endpoint_instance1.network_interfaces[0].network_ip,
),
gcp.compute.NetworkEndpointListNetworkEndpointArgs(
instance=endpoint_instance2.name,
port=neg["defaultPort"],
ip_address=endpoint_instance2.network_interfaces[0].network_ip,
),
])
group = gcp.compute.NetworkEndpointGroup("group",
name="my-lb-neg",
network=default.id,
subnetwork=default_subnetwork.id,
default_port=90,
zone="us-central1-a")
package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v7/go/gcp/compute"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
myImage, err := compute.LookupImage(ctx, &compute.LookupImageArgs{
Family: pulumi.StringRef("debian-11"),
Project: pulumi.StringRef("debian-cloud"),
}, nil)
if err != nil {
return err
}
_, err = compute.NewNetwork(ctx, "default", &compute.NetworkArgs{
Name: pulumi.String("neg-network"),
AutoCreateSubnetworks: pulumi.Bool(false),
})
if err != nil {
return err
}
defaultSubnetwork, err := compute.NewSubnetwork(ctx, "default", &compute.SubnetworkArgs{
Name: pulumi.String("neg-subnetwork"),
IpCidrRange: pulumi.String("10.0.0.1/16"),
Region: pulumi.String("us-central1"),
Network: _default.ID(),
})
if err != nil {
return err
}
_, err = compute.NewInstance(ctx, "endpoint-instance1", &compute.InstanceArgs{
NetworkInterfaces: compute.InstanceNetworkInterfaceArray{
&compute.InstanceNetworkInterfaceArgs{
AccessConfigs: compute.InstanceNetworkInterfaceAccessConfigArray{
nil,
},
Subnetwork: defaultSubnetwork.ID(),
},
},
Name: pulumi.String("endpoint-instance1"),
MachineType: pulumi.String("e2-medium"),
BootDisk: &compute.InstanceBootDiskArgs{
InitializeParams: &compute.InstanceBootDiskInitializeParamsArgs{
Image: pulumi.String(myImage.SelfLink),
},
},
})
if err != nil {
return err
}
_, err = compute.NewInstance(ctx, "endpoint-instance2", &compute.InstanceArgs{
NetworkInterfaces: compute.InstanceNetworkInterfaceArray{
&compute.InstanceNetworkInterfaceArgs{
AccessConfigs: compute.InstanceNetworkInterfaceAccessConfigArray{
nil,
},
Subnetwork: defaultSubnetwork.ID(),
},
},
Name: pulumi.String("endpoint-instance2"),
MachineType: pulumi.String("e2-medium"),
BootDisk: &compute.InstanceBootDiskArgs{
InitializeParams: &compute.InstanceBootDiskInitializeParamsArgs{
Image: pulumi.String(myImage.SelfLink),
},
},
})
if err != nil {
return err
}
_, err = compute.NewNetworkEndpointList(ctx, "default-endpoints", &compute.NetworkEndpointListArgs{
NetworkEndpointGroup: pulumi.Any(neg.Name),
NetworkEndpoints: compute.NetworkEndpointListNetworkEndpointArray{
&compute.NetworkEndpointListNetworkEndpointArgs{
Instance: endpoint_instance1.Name,
Port: pulumi.Any(neg.DefaultPort),
IpAddress: endpoint_instance1.NetworkInterfaces.ApplyT(func(networkInterfaces []compute.InstanceNetworkInterface) (*string, error) {
return &networkInterfaces[0].NetworkIp, nil
}).(pulumi.StringPtrOutput),
},
&compute.NetworkEndpointListNetworkEndpointArgs{
Instance: endpoint_instance2.Name,
Port: pulumi.Any(neg.DefaultPort),
IpAddress: endpoint_instance2.NetworkInterfaces.ApplyT(func(networkInterfaces []compute.InstanceNetworkInterface) (*string, error) {
return &networkInterfaces[0].NetworkIp, nil
}).(pulumi.StringPtrOutput),
},
},
})
if err != nil {
return err
}
_, err = compute.NewNetworkEndpointGroup(ctx, "group", &compute.NetworkEndpointGroupArgs{
Name: pulumi.String("my-lb-neg"),
Network: _default.ID(),
Subnetwork: defaultSubnetwork.ID(),
DefaultPort: pulumi.Int(90),
Zone: pulumi.String("us-central1-a"),
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Gcp = Pulumi.Gcp;
return await Deployment.RunAsync(() =>
{
var myImage = Gcp.Compute.GetImage.Invoke(new()
{
Family = "debian-11",
Project = "debian-cloud",
});
var @default = new Gcp.Compute.Network("default", new()
{
Name = "neg-network",
AutoCreateSubnetworks = false,
});
var defaultSubnetwork = new Gcp.Compute.Subnetwork("default", new()
{
Name = "neg-subnetwork",
IpCidrRange = "10.0.0.1/16",
Region = "us-central1",
Network = @default.Id,
});
var endpoint_instance1 = new Gcp.Compute.Instance("endpoint-instance1", new()
{
NetworkInterfaces = new[]
{
new Gcp.Compute.Inputs.InstanceNetworkInterfaceArgs
{
AccessConfigs = new[]
{
null,
},
Subnetwork = defaultSubnetwork.Id,
},
},
Name = "endpoint-instance1",
MachineType = "e2-medium",
BootDisk = new Gcp.Compute.Inputs.InstanceBootDiskArgs
{
InitializeParams = new Gcp.Compute.Inputs.InstanceBootDiskInitializeParamsArgs
{
Image = myImage.Apply(getImageResult => getImageResult.SelfLink),
},
},
});
var endpoint_instance2 = new Gcp.Compute.Instance("endpoint-instance2", new()
{
NetworkInterfaces = new[]
{
new Gcp.Compute.Inputs.InstanceNetworkInterfaceArgs
{
AccessConfigs = new[]
{
null,
},
Subnetwork = defaultSubnetwork.Id,
},
},
Name = "endpoint-instance2",
MachineType = "e2-medium",
BootDisk = new Gcp.Compute.Inputs.InstanceBootDiskArgs
{
InitializeParams = new Gcp.Compute.Inputs.InstanceBootDiskInitializeParamsArgs
{
Image = myImage.Apply(getImageResult => getImageResult.SelfLink),
},
},
});
var default_endpoints = new Gcp.Compute.NetworkEndpointList("default-endpoints", new()
{
NetworkEndpointGroup = neg.Name,
NetworkEndpoints = new[]
{
new Gcp.Compute.Inputs.NetworkEndpointListNetworkEndpointArgs
{
Instance = endpoint_instance1.Name,
Port = neg.DefaultPort,
IpAddress = endpoint_instance1.NetworkInterfaces.Apply(networkInterfaces => networkInterfaces[0].NetworkIp),
},
new Gcp.Compute.Inputs.NetworkEndpointListNetworkEndpointArgs
{
Instance = endpoint_instance2.Name,
Port = neg.DefaultPort,
IpAddress = endpoint_instance2.NetworkInterfaces.Apply(networkInterfaces => networkInterfaces[0].NetworkIp),
},
},
});
var @group = new Gcp.Compute.NetworkEndpointGroup("group", new()
{
Name = "my-lb-neg",
Network = @default.Id,
Subnetwork = defaultSubnetwork.Id,
DefaultPort = 90,
Zone = "us-central1-a",
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.compute.ComputeFunctions;
import com.pulumi.gcp.compute.inputs.GetImageArgs;
import com.pulumi.gcp.compute.Network;
import com.pulumi.gcp.compute.NetworkArgs;
import com.pulumi.gcp.compute.Subnetwork;
import com.pulumi.gcp.compute.SubnetworkArgs;
import com.pulumi.gcp.compute.Instance;
import com.pulumi.gcp.compute.InstanceArgs;
import com.pulumi.gcp.compute.inputs.InstanceNetworkInterfaceArgs;
import com.pulumi.gcp.compute.inputs.InstanceBootDiskArgs;
import com.pulumi.gcp.compute.inputs.InstanceBootDiskInitializeParamsArgs;
import com.pulumi.gcp.compute.NetworkEndpointList;
import com.pulumi.gcp.compute.NetworkEndpointListArgs;
import com.pulumi.gcp.compute.inputs.NetworkEndpointListNetworkEndpointArgs;
import com.pulumi.gcp.compute.NetworkEndpointGroup;
import com.pulumi.gcp.compute.NetworkEndpointGroupArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
final var myImage = ComputeFunctions.getImage(GetImageArgs.builder()
.family("debian-11")
.project("debian-cloud")
.build());
var default_ = new Network("default", NetworkArgs.builder()
.name("neg-network")
.autoCreateSubnetworks(false)
.build());
var defaultSubnetwork = new Subnetwork("defaultSubnetwork", SubnetworkArgs.builder()
.name("neg-subnetwork")
.ipCidrRange("10.0.0.1/16")
.region("us-central1")
.network(default_.id())
.build());
var endpoint_instance1 = new Instance("endpoint-instance1", InstanceArgs.builder()
.networkInterfaces(InstanceNetworkInterfaceArgs.builder()
.accessConfigs()
.subnetwork(defaultSubnetwork.id())
.build())
.name("endpoint-instance1")
.machineType("e2-medium")
.bootDisk(InstanceBootDiskArgs.builder()
.initializeParams(InstanceBootDiskInitializeParamsArgs.builder()
.image(myImage.applyValue(getImageResult -> getImageResult.selfLink()))
.build())
.build())
.build());
var endpoint_instance2 = new Instance("endpoint-instance2", InstanceArgs.builder()
.networkInterfaces(InstanceNetworkInterfaceArgs.builder()
.accessConfigs()
.subnetwork(defaultSubnetwork.id())
.build())
.name("endpoint-instance2")
.machineType("e2-medium")
.bootDisk(InstanceBootDiskArgs.builder()
.initializeParams(InstanceBootDiskInitializeParamsArgs.builder()
.image(myImage.applyValue(getImageResult -> getImageResult.selfLink()))
.build())
.build())
.build());
var default_endpoints = new NetworkEndpointList("default-endpoints", NetworkEndpointListArgs.builder()
.networkEndpointGroup(neg.name())
.networkEndpoints(
NetworkEndpointListNetworkEndpointArgs.builder()
.instance(endpoint_instance1.name())
.port(neg.defaultPort())
.ipAddress(endpoint_instance1.networkInterfaces().applyValue(networkInterfaces -> networkInterfaces[0].networkIp()))
.build(),
NetworkEndpointListNetworkEndpointArgs.builder()
.instance(endpoint_instance2.name())
.port(neg.defaultPort())
.ipAddress(endpoint_instance2.networkInterfaces().applyValue(networkInterfaces -> networkInterfaces[0].networkIp()))
.build())
.build());
var group = new NetworkEndpointGroup("group", NetworkEndpointGroupArgs.builder()
.name("my-lb-neg")
.network(default_.id())
.subnetwork(defaultSubnetwork.id())
.defaultPort("90")
.zone("us-central1-a")
.build());
}
}
resources:
default-endpoints:
type: gcp:compute:NetworkEndpointList
properties:
networkEndpointGroup: ${neg.name}
networkEndpoints:
- instance: ${["endpoint-instance1"].name}
port: ${neg.defaultPort}
ipAddress: ${["endpoint-instance1"].networkInterfaces[0].networkIp}
- instance: ${["endpoint-instance2"].name}
port: ${neg.defaultPort}
ipAddress: ${["endpoint-instance2"].networkInterfaces[0].networkIp}
endpoint-instance1:
type: gcp:compute:Instance
properties:
networkInterfaces:
- accessConfigs:
- {}
subnetwork: ${defaultSubnetwork.id}
name: endpoint-instance1
machineType: e2-medium
bootDisk:
initializeParams:
image: ${myImage.selfLink}
endpoint-instance2:
type: gcp:compute:Instance
properties:
networkInterfaces:
- accessConfigs:
- {}
subnetwork: ${defaultSubnetwork.id}
name: endpoint-instance2
machineType: e2-medium
bootDisk:
initializeParams:
image: ${myImage.selfLink}
group:
type: gcp:compute:NetworkEndpointGroup
properties:
name: my-lb-neg
network: ${default.id}
subnetwork: ${defaultSubnetwork.id}
defaultPort: '90'
zone: us-central1-a
default:
type: gcp:compute:Network
properties:
name: neg-network
autoCreateSubnetworks: false
defaultSubnetwork:
type: gcp:compute:Subnetwork
name: default
properties:
name: neg-subnetwork
ipCidrRange: 10.0.0.1/16
region: us-central1
network: ${default.id}
variables:
myImage:
fn::invoke:
Function: gcp:compute:getImage
Arguments:
family: debian-11
project: debian-cloud
Create NetworkEndpointList Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new NetworkEndpointList(name: string, args: NetworkEndpointListArgs, opts?: CustomResourceOptions);
@overload
def NetworkEndpointList(resource_name: str,
args: NetworkEndpointListArgs,
opts: Optional[ResourceOptions] = None)
@overload
def NetworkEndpointList(resource_name: str,
opts: Optional[ResourceOptions] = None,
network_endpoint_group: Optional[str] = None,
network_endpoints: Optional[Sequence[NetworkEndpointListNetworkEndpointArgs]] = None,
project: Optional[str] = None,
zone: Optional[str] = None)
func NewNetworkEndpointList(ctx *Context, name string, args NetworkEndpointListArgs, opts ...ResourceOption) (*NetworkEndpointList, error)
public NetworkEndpointList(string name, NetworkEndpointListArgs args, CustomResourceOptions? opts = null)
public NetworkEndpointList(String name, NetworkEndpointListArgs args)
public NetworkEndpointList(String name, NetworkEndpointListArgs args, CustomResourceOptions options)
type: gcp:compute:NetworkEndpointList
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
Parameters
- name string
- The unique name of the resource.
- args NetworkEndpointListArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- resource_name str
- The unique name of the resource.
- args NetworkEndpointListArgs
- The arguments to resource properties.
- opts ResourceOptions
- Bag of options to control resource's behavior.
- ctx Context
- Context object for the current deployment.
- name string
- The unique name of the resource.
- args NetworkEndpointListArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args NetworkEndpointListArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args NetworkEndpointListArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
Constructor example
The following reference example uses placeholder values for all input properties.
var networkEndpointListResource = new Gcp.Compute.NetworkEndpointList("networkEndpointListResource", new()
{
NetworkEndpointGroup = "string",
NetworkEndpoints = new[]
{
new Gcp.Compute.Inputs.NetworkEndpointListNetworkEndpointArgs
{
IpAddress = "string",
Instance = "string",
Port = 0,
},
},
Project = "string",
Zone = "string",
});
example, err := compute.NewNetworkEndpointList(ctx, "networkEndpointListResource", &compute.NetworkEndpointListArgs{
NetworkEndpointGroup: pulumi.String("string"),
NetworkEndpoints: compute.NetworkEndpointListNetworkEndpointArray{
&compute.NetworkEndpointListNetworkEndpointArgs{
IpAddress: pulumi.String("string"),
Instance: pulumi.String("string"),
Port: pulumi.Int(0),
},
},
Project: pulumi.String("string"),
Zone: pulumi.String("string"),
})
var networkEndpointListResource = new NetworkEndpointList("networkEndpointListResource", NetworkEndpointListArgs.builder()
.networkEndpointGroup("string")
.networkEndpoints(NetworkEndpointListNetworkEndpointArgs.builder()
.ipAddress("string")
.instance("string")
.port(0)
.build())
.project("string")
.zone("string")
.build());
network_endpoint_list_resource = gcp.compute.NetworkEndpointList("networkEndpointListResource",
network_endpoint_group="string",
network_endpoints=[gcp.compute.NetworkEndpointListNetworkEndpointArgs(
ip_address="string",
instance="string",
port=0,
)],
project="string",
zone="string")
const networkEndpointListResource = new gcp.compute.NetworkEndpointList("networkEndpointListResource", {
networkEndpointGroup: "string",
networkEndpoints: [{
ipAddress: "string",
instance: "string",
port: 0,
}],
project: "string",
zone: "string",
});
type: gcp:compute:NetworkEndpointList
properties:
networkEndpointGroup: string
networkEndpoints:
- instance: string
ipAddress: string
port: 0
project: string
zone: string
NetworkEndpointList Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
The NetworkEndpointList resource accepts the following input properties:
- Network
Endpoint stringGroup - The network endpoint group these endpoints are part of.
- Network
Endpoints List<NetworkEndpoint List Network Endpoint> - The network endpoints to be added to the enclosing network endpoint group (NEG). Each endpoint specifies an IP address and port, along with additional information depending on the NEG type. Structure is documented below.
- Project string
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- Zone string
- Zone where the containing network endpoint group is located.
- Network
Endpoint stringGroup - The network endpoint group these endpoints are part of.
- Network
Endpoints []NetworkEndpoint List Network Endpoint Args - The network endpoints to be added to the enclosing network endpoint group (NEG). Each endpoint specifies an IP address and port, along with additional information depending on the NEG type. Structure is documented below.
- Project string
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- Zone string
- Zone where the containing network endpoint group is located.
- network
Endpoint StringGroup - The network endpoint group these endpoints are part of.
- network
Endpoints List<NetworkEndpoint List Network Endpoint> - The network endpoints to be added to the enclosing network endpoint group (NEG). Each endpoint specifies an IP address and port, along with additional information depending on the NEG type. Structure is documented below.
- project String
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- zone String
- Zone where the containing network endpoint group is located.
- network
Endpoint stringGroup - The network endpoint group these endpoints are part of.
- network
Endpoints NetworkEndpoint List Network Endpoint[] - The network endpoints to be added to the enclosing network endpoint group (NEG). Each endpoint specifies an IP address and port, along with additional information depending on the NEG type. Structure is documented below.
- project string
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- zone string
- Zone where the containing network endpoint group is located.
- network_
endpoint_ strgroup - The network endpoint group these endpoints are part of.
- network_
endpoints Sequence[NetworkEndpoint List Network Endpoint Args] - The network endpoints to be added to the enclosing network endpoint group (NEG). Each endpoint specifies an IP address and port, along with additional information depending on the NEG type. Structure is documented below.
- project str
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- zone str
- Zone where the containing network endpoint group is located.
- network
Endpoint StringGroup - The network endpoint group these endpoints are part of.
- network
Endpoints List<Property Map> - The network endpoints to be added to the enclosing network endpoint group (NEG). Each endpoint specifies an IP address and port, along with additional information depending on the NEG type. Structure is documented below.
- project String
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- zone String
- Zone where the containing network endpoint group is located.
Outputs
All input properties are implicitly available as output properties. Additionally, the NetworkEndpointList resource produces the following output properties:
- Id string
- The provider-assigned unique ID for this managed resource.
- Id string
- The provider-assigned unique ID for this managed resource.
- id String
- The provider-assigned unique ID for this managed resource.
- id string
- The provider-assigned unique ID for this managed resource.
- id str
- The provider-assigned unique ID for this managed resource.
- id String
- The provider-assigned unique ID for this managed resource.
Look up Existing NetworkEndpointList Resource
Get an existing NetworkEndpointList resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
public static get(name: string, id: Input<ID>, state?: NetworkEndpointListState, opts?: CustomResourceOptions): NetworkEndpointList
@staticmethod
def get(resource_name: str,
id: str,
opts: Optional[ResourceOptions] = None,
network_endpoint_group: Optional[str] = None,
network_endpoints: Optional[Sequence[NetworkEndpointListNetworkEndpointArgs]] = None,
project: Optional[str] = None,
zone: Optional[str] = None) -> NetworkEndpointList
func GetNetworkEndpointList(ctx *Context, name string, id IDInput, state *NetworkEndpointListState, opts ...ResourceOption) (*NetworkEndpointList, error)
public static NetworkEndpointList Get(string name, Input<string> id, NetworkEndpointListState? state, CustomResourceOptions? opts = null)
public static NetworkEndpointList get(String name, Output<String> id, NetworkEndpointListState state, CustomResourceOptions options)
Resource lookup is not supported in YAML
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- resource_name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- Network
Endpoint stringGroup - The network endpoint group these endpoints are part of.
- Network
Endpoints List<NetworkEndpoint List Network Endpoint> - The network endpoints to be added to the enclosing network endpoint group (NEG). Each endpoint specifies an IP address and port, along with additional information depending on the NEG type. Structure is documented below.
- Project string
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- Zone string
- Zone where the containing network endpoint group is located.
- Network
Endpoint stringGroup - The network endpoint group these endpoints are part of.
- Network
Endpoints []NetworkEndpoint List Network Endpoint Args - The network endpoints to be added to the enclosing network endpoint group (NEG). Each endpoint specifies an IP address and port, along with additional information depending on the NEG type. Structure is documented below.
- Project string
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- Zone string
- Zone where the containing network endpoint group is located.
- network
Endpoint StringGroup - The network endpoint group these endpoints are part of.
- network
Endpoints List<NetworkEndpoint List Network Endpoint> - The network endpoints to be added to the enclosing network endpoint group (NEG). Each endpoint specifies an IP address and port, along with additional information depending on the NEG type. Structure is documented below.
- project String
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- zone String
- Zone where the containing network endpoint group is located.
- network
Endpoint stringGroup - The network endpoint group these endpoints are part of.
- network
Endpoints NetworkEndpoint List Network Endpoint[] - The network endpoints to be added to the enclosing network endpoint group (NEG). Each endpoint specifies an IP address and port, along with additional information depending on the NEG type. Structure is documented below.
- project string
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- zone string
- Zone where the containing network endpoint group is located.
- network_
endpoint_ strgroup - The network endpoint group these endpoints are part of.
- network_
endpoints Sequence[NetworkEndpoint List Network Endpoint Args] - The network endpoints to be added to the enclosing network endpoint group (NEG). Each endpoint specifies an IP address and port, along with additional information depending on the NEG type. Structure is documented below.
- project str
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- zone str
- Zone where the containing network endpoint group is located.
- network
Endpoint StringGroup - The network endpoint group these endpoints are part of.
- network
Endpoints List<Property Map> - The network endpoints to be added to the enclosing network endpoint group (NEG). Each endpoint specifies an IP address and port, along with additional information depending on the NEG type. Structure is documented below.
- project String
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- zone String
- Zone where the containing network endpoint group is located.
Supporting Types
NetworkEndpointListNetworkEndpoint, NetworkEndpointListNetworkEndpointArgs
- Ip
Address string - IPv4 address of network endpoint. The IP address must belong to a VM in GCE (either the primary IP or as part of an aliased IP range).
- Instance string
- The name for a specific VM instance that the IP address belongs to. This is required for network endpoints of type GCE_VM_IP_PORT. The instance must be in the same zone as the network endpoint group.
- Port int
- Port number of network endpoint.
Note
port
is required unless the Network Endpoint Group is created with the type ofGCE_VM_IP
- Ip
Address string - IPv4 address of network endpoint. The IP address must belong to a VM in GCE (either the primary IP or as part of an aliased IP range).
- Instance string
- The name for a specific VM instance that the IP address belongs to. This is required for network endpoints of type GCE_VM_IP_PORT. The instance must be in the same zone as the network endpoint group.
- Port int
- Port number of network endpoint.
Note
port
is required unless the Network Endpoint Group is created with the type ofGCE_VM_IP
- ip
Address String - IPv4 address of network endpoint. The IP address must belong to a VM in GCE (either the primary IP or as part of an aliased IP range).
- instance String
- The name for a specific VM instance that the IP address belongs to. This is required for network endpoints of type GCE_VM_IP_PORT. The instance must be in the same zone as the network endpoint group.
- port Integer
- Port number of network endpoint.
Note
port
is required unless the Network Endpoint Group is created with the type ofGCE_VM_IP
- ip
Address string - IPv4 address of network endpoint. The IP address must belong to a VM in GCE (either the primary IP or as part of an aliased IP range).
- instance string
- The name for a specific VM instance that the IP address belongs to. This is required for network endpoints of type GCE_VM_IP_PORT. The instance must be in the same zone as the network endpoint group.
- port number
- Port number of network endpoint.
Note
port
is required unless the Network Endpoint Group is created with the type ofGCE_VM_IP
- ip_
address str - IPv4 address of network endpoint. The IP address must belong to a VM in GCE (either the primary IP or as part of an aliased IP range).
- instance str
- The name for a specific VM instance that the IP address belongs to. This is required for network endpoints of type GCE_VM_IP_PORT. The instance must be in the same zone as the network endpoint group.
- port int
- Port number of network endpoint.
Note
port
is required unless the Network Endpoint Group is created with the type ofGCE_VM_IP
- ip
Address String - IPv4 address of network endpoint. The IP address must belong to a VM in GCE (either the primary IP or as part of an aliased IP range).
- instance String
- The name for a specific VM instance that the IP address belongs to. This is required for network endpoints of type GCE_VM_IP_PORT. The instance must be in the same zone as the network endpoint group.
- port Number
- Port number of network endpoint.
Note
port
is required unless the Network Endpoint Group is created with the type ofGCE_VM_IP
Import
NetworkEndpoints can be imported using any of these accepted formats:
projects/{{project}}/zones/{{zone}}/networkEndpointGroups/{{network_endpoint_group}}
{{project}}/{{zone}}/{{network_endpoint_group}}
{{zone}}/{{network_endpoint_group}}
{{network_endpoint_group}}
When using the pulumi import
command, NetworkEndpoints can be imported using one of the formats above. For example:
$ pulumi import gcp:compute/networkEndpointList:NetworkEndpointList default projects/{{project}}/zones/{{zone}}/networkEndpointGroups/{{network_endpoint_group}}
$ pulumi import gcp:compute/networkEndpointList:NetworkEndpointList default {{project}}/{{zone}}/{{network_endpoint_group}}
$ pulumi import gcp:compute/networkEndpointList:NetworkEndpointList default {{zone}}/{{network_endpoint_group}}
$ pulumi import gcp:compute/networkEndpointList:NetworkEndpointList default {{network_endpoint_group}}
To learn more about importing existing cloud resources, see Importing resources.
Package Details
- Repository
- Google Cloud (GCP) Classic pulumi/pulumi-gcp
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the
google-beta
Terraform Provider.