An individual endpoint that provides a service.
To get more information about Endpoint, see:
resource "google_service_directory_namespace" "example" {
provider = google-beta
namespace_id = "example-namespace"
location = "us-central1"
}
resource "google_service_directory_service" "example" {
provider = google-beta
service_id = "example-service"
namespace = google_service_directory_namespace.example.id
}
resource "google_service_directory_endpoint" "example" {
provider = google-beta
endpoint_id = "example-endpoint"
service = google_service_directory_service.example.id
metadata = {
stage = "prod"
region = "us-central1"
}
address = "1.2.3.4"
port = 5353
}
data "google_project" "project" {
provider = google-beta
}
resource "google_compute_network" "example" {
provider = google-beta
name = "example-network"
}
resource "google_service_directory_namespace" "example" {
provider = google-beta
namespace_id = "example-namespace"
location = "us-central1"
}
resource "google_service_directory_service" "example" {
provider = google-beta
service_id = "example-service"
namespace = google_service_directory_namespace.example.id
}
resource "google_service_directory_endpoint" "example" {
provider = google-beta
endpoint_id = "example-endpoint"
service = google_service_directory_service.example.id
metadata = {
stage = "prod"
region = "us-central1"
}
network = "projects/${data.google_project.project.number}/locations/global/networks/${google_compute_network.example.name}"
address = "1.2.3.4"
port = 5353
}
The following arguments are supported:
service
-
(Required)
The resource name of the service that this endpoint provides.
endpoint_id
-
(Required)
The Resource ID must be 1-63 characters long, including digits,
lowercase letters or the hyphen character.
address
-
(Optional)
IPv4 or IPv6 address of the endpoint.
port
-
(Optional)
Port that the endpoint is running on, must be in the
range of [0, 65535]. If unspecified, the default is 0.
metadata
-
(Optional)
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.
network
-
(Optional)
The URL to the network, such as projects/PROJECT_NUMBER/locations/global/networks/NETWORK_NAME.
In addition to the arguments listed above, the following computed attributes are exported:
id
- an identifier for the resource with format {{name}}
name
-
The resource name for the endpoint in the format
projects/*/locations/*/namespaces/*/services/*/endpoints/*
.
This resource provides the following Timeouts configuration options:
create
- Default is 20 minutes.update
- Default is 20 minutes.delete
- Default is 20 minutes.Endpoint can be imported using any of these accepted formats:
projects/{{project}}/locations/{{location}}/namespaces/{{namespace_id}}/services/{{service_id}}/endpoints/{{endpoint_id}}
{{project}}/{{location}}/{{namespace_id}}/{{service_id}}/{{endpoint_id}}
{{location}}/{{namespace_id}}/{{service_id}}/{{endpoint_id}}
In Terraform v1.5.0 and later, use an import
block to import Endpoint using one of the formats above. For example:
import {
id = "projects/{{project}}/locations/{{location}}/namespaces/{{namespace_id}}/services/{{service_id}}/endpoints/{{endpoint_id}}"
to = google_service_directory_endpoint.default
}
When using the terraform import
command, Endpoint can be imported using one of the formats above. For example:
$ terraform import google_service_directory_endpoint.default projects/{{project}}/locations/{{location}}/namespaces/{{namespace_id}}/services/{{service_id}}/endpoints/{{endpoint_id}}
$ terraform import google_service_directory_endpoint.default {{project}}/{{location}}/{{namespace_id}}/{{service_id}}/{{endpoint_id}}
$ terraform import google_service_directory_endpoint.default {{location}}/{{namespace_id}}/{{service_id}}/{{endpoint_id}}