Skip to content

googleServiceDirectoryService

An individual service. A service contains a name and optional metadata.

\~> Warning: This resource is in beta, and should be used with the terraform-provider-google-beta provider. See Provider Versions for more details on beta resources.

To get more information about Service, see:

Example Usage - Service Directory Service Basic

/*Provider bindings are generated by running cdktf get.
See https://cdk.tf/provider-generation for more details.*/
import * as google from "./.gen/providers/google";
/*The following providers are missing schema information and might need manual adjustments to synthesize correctly: google.
For a more precise conversion please use the --provider flag in convert.*/
const googleServiceDirectoryNamespaceExample =
  new google.serviceDirectoryNamespace.ServiceDirectoryNamespace(
    this,
    "example",
    {
      location: "us-central1",
      namespace_id: "example-namespace",
      provider: "${google-beta}",
    }
  );
const googleServiceDirectoryServiceExample =
  new google.serviceDirectoryService.ServiceDirectoryService(
    this,
    "example_1",
    {
      metadata: [
        {
          region: "us-central1",
          stage: "prod",
        },
      ],
      namespace: googleServiceDirectoryNamespaceExample.id,
      provider: "${google-beta}",
      service_id: "example-service",
    }
  );
/*This allows the Terraform resource name to match the original name. You can remove the call if you don't need them to match.*/
googleServiceDirectoryServiceExample.overrideLogicalId("example");

Argument Reference

The following arguments are supported:

  • namespace - (Required) The resource name of the namespace this service will belong to.

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


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

Attributes Reference

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 service in the format projects/*/locations/*/namespaces/*/services/*.

Timeouts

This resource provides the following Timeouts configuration options:

  • create - Default is 20 minutes.
  • update - Default is 20 minutes.
  • delete - Default is 20 minutes.

Import

Service can be imported using any of these accepted formats:

$ terraform import google_service_directory_service.default projects/{{project}}/locations/{{location}}/namespaces/{{namespace_id}}/services/{{service_id}}
$ terraform import google_service_directory_service.default {{project}}/{{location}}/{{namespace_id}}/{{service_id}}
$ terraform import google_service_directory_service.default {{location}}/{{namespace_id}}/{{service_id}}