EndpointArgs

data class EndpointArgs(val address: Output<String>? = null, val endpointId: Output<String>? = null, val metadata: Output<Map<String, String>>? = null, val network: Output<String>? = null, val port: Output<Int>? = null, val service: Output<String>? = null) : ConvertibleToJava<EndpointArgs>

An individual endpoint that provides a service. To get more information about Endpoint, see:

Example Usage

Service Directory Endpoint Basic

package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.servicedirectory.Namespace;
import com.pulumi.gcp.servicedirectory.NamespaceArgs;
import com.pulumi.gcp.servicedirectory.Service;
import com.pulumi.gcp.servicedirectory.ServiceArgs;
import com.pulumi.gcp.servicedirectory.Endpoint;
import com.pulumi.gcp.servicedirectory.EndpointArgs;
import com.pulumi.resources.CustomResourceOptions;
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) {
var exampleNamespace = new Namespace("exampleNamespace", NamespaceArgs.builder()
.namespaceId("example-namespace")
.location("us-central1")
.build(), CustomResourceOptions.builder()
.provider(google_beta)
.build());
var exampleService = new Service("exampleService", ServiceArgs.builder()
.serviceId("example-service")
.namespace(exampleNamespace.id())
.build(), CustomResourceOptions.builder()
.provider(google_beta)
.build());
var exampleEndpoint = new Endpoint("exampleEndpoint", EndpointArgs.builder()
.endpointId("example-endpoint")
.service(exampleService.id())
.metadata(Map.ofEntries(
Map.entry("stage", "prod"),
Map.entry("region", "us-central1")
))
.address("1.2.3.4")
.port(5353)
.build(), CustomResourceOptions.builder()
.provider(google_beta)
.build());
}
}

Service Directory Endpoint With Network

package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.organizations.OrganizationsFunctions;
import com.pulumi.gcp.organizations.inputs.GetProjectArgs;
import com.pulumi.gcp.compute.Network;
import com.pulumi.gcp.compute.NetworkArgs;
import com.pulumi.gcp.servicedirectory.Namespace;
import com.pulumi.gcp.servicedirectory.NamespaceArgs;
import com.pulumi.gcp.servicedirectory.Service;
import com.pulumi.gcp.servicedirectory.ServiceArgs;
import com.pulumi.gcp.servicedirectory.Endpoint;
import com.pulumi.gcp.servicedirectory.EndpointArgs;
import com.pulumi.resources.CustomResourceOptions;
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 project = OrganizationsFunctions.getProject();
var exampleNetwork = new Network("exampleNetwork", NetworkArgs.Empty, CustomResourceOptions.builder()
.provider(google_beta)
.build());
var exampleNamespace = new Namespace("exampleNamespace", NamespaceArgs.builder()
.namespaceId("example-namespace")
.location("us-central1")
.build(), CustomResourceOptions.builder()
.provider(google_beta)
.build());
var exampleService = new Service("exampleService", ServiceArgs.builder()
.serviceId("example-service")
.namespace(exampleNamespace.id())
.build(), CustomResourceOptions.builder()
.provider(google_beta)
.build());
var exampleEndpoint = new Endpoint("exampleEndpoint", EndpointArgs.builder()
.endpointId("example-endpoint")
.service(exampleService.id())
.metadata(Map.ofEntries(
Map.entry("stage", "prod"),
Map.entry("region", "us-central1")
))
.network(exampleNetwork.name().applyValue(name -> String.format("projects/%s/locations/global/networks/%s", project.applyValue(getProjectResult -> getProjectResult.number()),name)))
.address("1.2.3.4")
.port(5353)
.build(), CustomResourceOptions.builder()
.provider(google_beta)
.build());
}
}

Import

Endpoint can be imported using any of these accepted formats

$ pulumi import gcp:servicedirectory/endpoint:Endpoint default projects/{{project}}/locations/{{location}}/namespaces/{{namespace_id}}/services/{{service_id}}/endpoints/{{endpoint_id}}
$ pulumi import gcp:servicedirectory/endpoint:Endpoint default {{project}}/{{location}}/{{namespace_id}}/{{service_id}}/{{endpoint_id}}
$ pulumi import gcp:servicedirectory/endpoint:Endpoint default {{location}}/{{namespace_id}}/{{service_id}}/{{endpoint_id}}

Constructors

Link copied to clipboard
constructor(address: Output<String>? = null, endpointId: Output<String>? = null, metadata: Output<Map<String, String>>? = null, network: Output<String>? = null, port: Output<Int>? = null, service: Output<String>? = null)

Properties

Link copied to clipboard
val address: Output<String>? = null

IPv4 or IPv6 address of the endpoint.

Link copied to clipboard
val endpointId: Output<String>? = null

The Resource ID must be 1-63 characters long, including digits, lowercase letters or the hyphen character.

Link copied to clipboard
val metadata: Output<Map<String, String>>? = null

Metadata for the endpoint. This data can be consumed by service clients. The entire metadata dictionary may contain up to 512 characters, spread across all key-value pairs. Metadata that goes beyond any these limits will be rejected.

Link copied to clipboard
val network: Output<String>? = null

The URL to the network, such as projects/PROJECT_NUMBER/locations/global/networks/NETWORK_NAME.

Link copied to clipboard
val port: Output<Int>? = null

Port that the endpoint is running on, must be in the range of 0, 65535. If unspecified, the default is 0.

Link copied to clipboard
val service: Output<String>? = null

The resource name of the service that this endpoint provides.

Functions

Link copied to clipboard
open override fun toJava(): EndpointArgs