Endpoint

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

Properties

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

IPv4 or IPv6 address of the endpoint.

Link copied to clipboard
val endpointId: Output<String>

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

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

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 name: Output<String>

The resource name for the endpoint in the format projects/*/locations/*/namespaces/*/services/*/endpoints/*. ////*/

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

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

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

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
Link copied to clipboard
Link copied to clipboard
val service: Output<String>

The resource name of the service that this endpoint provides.

Link copied to clipboard
val urn: Output<String>