ServiceArgs

data class ServiceArgs(val metadata: Output<Map<String, String>>? = null, val namespace: Output<String>? = null, val serviceId: Output<String>? = null) : ConvertibleToJava<ServiceArgs>

An individual service. A service contains a name and optional metadata. To get more information about Service, see:

Example Usage

Service Directory Service Basic

import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const example = new gcp.servicedirectory.Namespace("example", {
namespaceId: "example-namespace",
location: "us-central1",
});
const exampleService = new gcp.servicedirectory.Service("example", {
serviceId: "example-service",
namespace: example.id,
metadata: {
stage: "prod",
region: "us-central1",
},
});
import pulumi
import pulumi_gcp as gcp
example = gcp.servicedirectory.Namespace("example",
namespace_id="example-namespace",
location="us-central1")
example_service = gcp.servicedirectory.Service("example",
service_id="example-service",
namespace=example.id,
metadata={
"stage": "prod",
"region": "us-central1",
})
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Gcp = Pulumi.Gcp;
return await Deployment.RunAsync(() =>
{
var example = new Gcp.ServiceDirectory.Namespace("example", new()
{
NamespaceId = "example-namespace",
Location = "us-central1",
});
var exampleService = new Gcp.ServiceDirectory.Service("example", new()
{
ServiceId = "example-service",
Namespace = example.Id,
Metadata =
{
{ "stage", "prod" },
{ "region", "us-central1" },
},
});
});
package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/servicedirectory"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
example, err := servicedirectory.NewNamespace(ctx, "example", &servicedirectory.NamespaceArgs{
NamespaceId: pulumi.String("example-namespace"),
Location: pulumi.String("us-central1"),
})
if err != nil {
return err
}
_, err = servicedirectory.NewService(ctx, "example", &servicedirectory.ServiceArgs{
ServiceId: pulumi.String("example-service"),
Namespace: example.ID(),
Metadata: pulumi.StringMap{
"stage": pulumi.String("prod"),
"region": pulumi.String("us-central1"),
},
})
if err != nil {
return err
}
return nil
})
}
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 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 example = new Namespace("example", NamespaceArgs.builder()
.namespaceId("example-namespace")
.location("us-central1")
.build());
var exampleService = new Service("exampleService", ServiceArgs.builder()
.serviceId("example-service")
.namespace(example.id())
.metadata(Map.ofEntries(
Map.entry("stage", "prod"),
Map.entry("region", "us-central1")
))
.build());
}
}
resources:
example:
type: gcp:servicedirectory:Namespace
properties:
namespaceId: example-namespace
location: us-central1
exampleService:
type: gcp:servicedirectory:Service
name: example
properties:
serviceId: example-service
namespace: ${example.id}
metadata:
stage: prod
region: us-central1

Import

Service can be imported using any of these accepted formats:

  • projects/{{project}}/locations/{{location}}/namespaces/{{namespace_id}}/services/{{service_id}}

  • {{project}}/{{location}}/{{namespace_id}}/{{service_id}}

  • {{location}}/{{namespace_id}}/{{service_id}} When using the pulumi import command, Service can be imported using one of the formats above. For example:

$ pulumi import gcp:servicedirectory/service:Service default projects/{{project}}/locations/{{location}}/namespaces/{{namespace_id}}/services/{{service_id}}
$ pulumi import gcp:servicedirectory/service:Service default {{project}}/{{location}}/{{namespace_id}}/{{service_id}}
$ pulumi import gcp:servicedirectory/service:Service default {{location}}/{{namespace_id}}/{{service_id}}

Constructors

Link copied to clipboard
constructor(metadata: Output<Map<String, String>>? = null, namespace: Output<String>? = null, serviceId: Output<String>? = null)

Properties

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

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.

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

The resource name of the namespace this service will belong to.

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

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

Functions

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