Google Cloud Native is in preview. Google Cloud Classic is fully supported.
google-native.servicedirectory/v1.Service
Explore with Pulumi AI
Google Cloud Native is in preview. Google Cloud Classic is fully supported.
Creates a service, and returns the new service.
Create Service Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new Service(name: string, args: ServiceArgs, opts?: CustomResourceOptions);
@overload
def Service(resource_name: str,
args: ServiceArgs,
opts: Optional[ResourceOptions] = None)
@overload
def Service(resource_name: str,
opts: Optional[ResourceOptions] = None,
namespace_id: Optional[str] = None,
service_id: Optional[str] = None,
annotations: Optional[Mapping[str, str]] = None,
location: Optional[str] = None,
name: Optional[str] = None,
project: Optional[str] = None)
func NewService(ctx *Context, name string, args ServiceArgs, opts ...ResourceOption) (*Service, error)
public Service(string name, ServiceArgs args, CustomResourceOptions? opts = null)
public Service(String name, ServiceArgs args)
public Service(String name, ServiceArgs args, CustomResourceOptions options)
type: google-native:servicedirectory/v1:Service
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
Parameters
- name string
- The unique name of the resource.
- args ServiceArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- resource_name str
- The unique name of the resource.
- args ServiceArgs
- The arguments to resource properties.
- opts ResourceOptions
- Bag of options to control resource's behavior.
- ctx Context
- Context object for the current deployment.
- name string
- The unique name of the resource.
- args ServiceArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args ServiceArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args ServiceArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
Constructor example
The following reference example uses placeholder values for all input properties.
var exampleserviceResourceResourceFromServicedirectoryv1 = new GoogleNative.ServiceDirectory.V1.Service("exampleserviceResourceResourceFromServicedirectoryv1", new()
{
NamespaceId = "string",
ServiceId = "string",
Annotations =
{
{ "string", "string" },
},
Location = "string",
Name = "string",
Project = "string",
});
example, err := servicedirectory.NewService(ctx, "exampleserviceResourceResourceFromServicedirectoryv1", &servicedirectory.ServiceArgs{
NamespaceId: pulumi.String("string"),
ServiceId: pulumi.String("string"),
Annotations: pulumi.StringMap{
"string": pulumi.String("string"),
},
Location: pulumi.String("string"),
Name: pulumi.String("string"),
Project: pulumi.String("string"),
})
var exampleserviceResourceResourceFromServicedirectoryv1 = new Service("exampleserviceResourceResourceFromServicedirectoryv1", ServiceArgs.builder()
.namespaceId("string")
.serviceId("string")
.annotations(Map.of("string", "string"))
.location("string")
.name("string")
.project("string")
.build());
exampleservice_resource_resource_from_servicedirectoryv1 = google_native.servicedirectory.v1.Service("exampleserviceResourceResourceFromServicedirectoryv1",
namespace_id="string",
service_id="string",
annotations={
"string": "string",
},
location="string",
name="string",
project="string")
const exampleserviceResourceResourceFromServicedirectoryv1 = new google_native.servicedirectory.v1.Service("exampleserviceResourceResourceFromServicedirectoryv1", {
namespaceId: "string",
serviceId: "string",
annotations: {
string: "string",
},
location: "string",
name: "string",
project: "string",
});
type: google-native:servicedirectory/v1:Service
properties:
annotations:
string: string
location: string
name: string
namespaceId: string
project: string
serviceId: string
Service Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.
The Service resource accepts the following input properties:
- Namespace
Id string - Service
Id string - Required. The Resource ID must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression
[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?
which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. - Annotations Dictionary<string, string>
- Optional. Annotations for the service. This data can be consumed by service clients. Restrictions: * The entire annotations dictionary may contain up to 2000 characters, spread accoss all key-value pairs. Annotations that go beyond this limit are rejected * Valid annotation keys have two segments: an optional prefix and name, separated by a slash (/). The name segment is required and must be 63 characters or less, beginning and ending with an alphanumeric character ([a-z0-9A-Z]) with dashes (-), underscores (_), dots (.), and alphanumerics between. The prefix is optional. If specified, the prefix must be a DNS subdomain: a series of DNS labels separated by dots (.), not longer than 253 characters in total, followed by a slash (/). Annotations that fails to meet these requirements are rejected Note: This field is equivalent to the
metadata
field in the v1beta1 API. They have the same syntax and read/write to the same location in Service Directory. - Location string
- Name string
- Immutable. The resource name for the service in the format
projects/*/locations/*/namespaces/*/services/*
. - Project string
- Namespace
Id string - Service
Id string - Required. The Resource ID must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression
[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?
which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. - Annotations map[string]string
- Optional. Annotations for the service. This data can be consumed by service clients. Restrictions: * The entire annotations dictionary may contain up to 2000 characters, spread accoss all key-value pairs. Annotations that go beyond this limit are rejected * Valid annotation keys have two segments: an optional prefix and name, separated by a slash (/). The name segment is required and must be 63 characters or less, beginning and ending with an alphanumeric character ([a-z0-9A-Z]) with dashes (-), underscores (_), dots (.), and alphanumerics between. The prefix is optional. If specified, the prefix must be a DNS subdomain: a series of DNS labels separated by dots (.), not longer than 253 characters in total, followed by a slash (/). Annotations that fails to meet these requirements are rejected Note: This field is equivalent to the
metadata
field in the v1beta1 API. They have the same syntax and read/write to the same location in Service Directory. - Location string
- Name string
- Immutable. The resource name for the service in the format
projects/*/locations/*/namespaces/*/services/*
. - Project string
- namespace
Id String - service
Id String - Required. The Resource ID must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression
[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?
which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. - annotations Map<String,String>
- Optional. Annotations for the service. This data can be consumed by service clients. Restrictions: * The entire annotations dictionary may contain up to 2000 characters, spread accoss all key-value pairs. Annotations that go beyond this limit are rejected * Valid annotation keys have two segments: an optional prefix and name, separated by a slash (/). The name segment is required and must be 63 characters or less, beginning and ending with an alphanumeric character ([a-z0-9A-Z]) with dashes (-), underscores (_), dots (.), and alphanumerics between. The prefix is optional. If specified, the prefix must be a DNS subdomain: a series of DNS labels separated by dots (.), not longer than 253 characters in total, followed by a slash (/). Annotations that fails to meet these requirements are rejected Note: This field is equivalent to the
metadata
field in the v1beta1 API. They have the same syntax and read/write to the same location in Service Directory. - location String
- name String
- Immutable. The resource name for the service in the format
projects/*/locations/*/namespaces/*/services/*
. - project String
- namespace
Id string - service
Id string - Required. The Resource ID must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression
[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?
which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. - annotations {[key: string]: string}
- Optional. Annotations for the service. This data can be consumed by service clients. Restrictions: * The entire annotations dictionary may contain up to 2000 characters, spread accoss all key-value pairs. Annotations that go beyond this limit are rejected * Valid annotation keys have two segments: an optional prefix and name, separated by a slash (/). The name segment is required and must be 63 characters or less, beginning and ending with an alphanumeric character ([a-z0-9A-Z]) with dashes (-), underscores (_), dots (.), and alphanumerics between. The prefix is optional. If specified, the prefix must be a DNS subdomain: a series of DNS labels separated by dots (.), not longer than 253 characters in total, followed by a slash (/). Annotations that fails to meet these requirements are rejected Note: This field is equivalent to the
metadata
field in the v1beta1 API. They have the same syntax and read/write to the same location in Service Directory. - location string
- name string
- Immutable. The resource name for the service in the format
projects/*/locations/*/namespaces/*/services/*
. - project string
- namespace_
id str - service_
id str - Required. The Resource ID must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression
[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?
which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. - annotations Mapping[str, str]
- Optional. Annotations for the service. This data can be consumed by service clients. Restrictions: * The entire annotations dictionary may contain up to 2000 characters, spread accoss all key-value pairs. Annotations that go beyond this limit are rejected * Valid annotation keys have two segments: an optional prefix and name, separated by a slash (/). The name segment is required and must be 63 characters or less, beginning and ending with an alphanumeric character ([a-z0-9A-Z]) with dashes (-), underscores (_), dots (.), and alphanumerics between. The prefix is optional. If specified, the prefix must be a DNS subdomain: a series of DNS labels separated by dots (.), not longer than 253 characters in total, followed by a slash (/). Annotations that fails to meet these requirements are rejected Note: This field is equivalent to the
metadata
field in the v1beta1 API. They have the same syntax and read/write to the same location in Service Directory. - location str
- name str
- Immutable. The resource name for the service in the format
projects/*/locations/*/namespaces/*/services/*
. - project str
- namespace
Id String - service
Id String - Required. The Resource ID must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression
[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?
which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. - annotations Map<String>
- Optional. Annotations for the service. This data can be consumed by service clients. Restrictions: * The entire annotations dictionary may contain up to 2000 characters, spread accoss all key-value pairs. Annotations that go beyond this limit are rejected * Valid annotation keys have two segments: an optional prefix and name, separated by a slash (/). The name segment is required and must be 63 characters or less, beginning and ending with an alphanumeric character ([a-z0-9A-Z]) with dashes (-), underscores (_), dots (.), and alphanumerics between. The prefix is optional. If specified, the prefix must be a DNS subdomain: a series of DNS labels separated by dots (.), not longer than 253 characters in total, followed by a slash (/). Annotations that fails to meet these requirements are rejected Note: This field is equivalent to the
metadata
field in the v1beta1 API. They have the same syntax and read/write to the same location in Service Directory. - location String
- name String
- Immutable. The resource name for the service in the format
projects/*/locations/*/namespaces/*/services/*
. - project String
Outputs
All input properties are implicitly available as output properties. Additionally, the Service resource produces the following output properties:
- Endpoints
List<Pulumi.
Google Native. Service Directory. V1. Outputs. Endpoint Response> - Endpoints associated with this service. Returned on LookupService.ResolveService. Control plane clients should use RegistrationService.ListEndpoints.
- Id string
- The provider-assigned unique ID for this managed resource.
- Uid string
- The globally unique identifier of the service in the UUID4 format.
- Endpoints
[]Endpoint
Response - Endpoints associated with this service. Returned on LookupService.ResolveService. Control plane clients should use RegistrationService.ListEndpoints.
- Id string
- The provider-assigned unique ID for this managed resource.
- Uid string
- The globally unique identifier of the service in the UUID4 format.
- endpoints
List<Endpoint
Response> - Endpoints associated with this service. Returned on LookupService.ResolveService. Control plane clients should use RegistrationService.ListEndpoints.
- id String
- The provider-assigned unique ID for this managed resource.
- uid String
- The globally unique identifier of the service in the UUID4 format.
- endpoints
Endpoint
Response[] - Endpoints associated with this service. Returned on LookupService.ResolveService. Control plane clients should use RegistrationService.ListEndpoints.
- id string
- The provider-assigned unique ID for this managed resource.
- uid string
- The globally unique identifier of the service in the UUID4 format.
- endpoints
Sequence[Endpoint
Response] - Endpoints associated with this service. Returned on LookupService.ResolveService. Control plane clients should use RegistrationService.ListEndpoints.
- id str
- The provider-assigned unique ID for this managed resource.
- uid str
- The globally unique identifier of the service in the UUID4 format.
- endpoints List<Property Map>
- Endpoints associated with this service. Returned on LookupService.ResolveService. Control plane clients should use RegistrationService.ListEndpoints.
- id String
- The provider-assigned unique ID for this managed resource.
- uid String
- The globally unique identifier of the service in the UUID4 format.
Supporting Types
EndpointResponse, EndpointResponseArgs
- Address string
- Optional. An IPv4 or IPv6 address. Service Directory rejects bad addresses like: *
8.8.8
*8.8.8.8:53
*test:bad:address
*[::1]
*[::1]:8080
Limited to 45 characters. - Annotations Dictionary<string, string>
- Optional. Annotations for the endpoint. This data can be consumed by service clients. Restrictions: * The entire annotations dictionary may contain up to 512 characters, spread accoss all key-value pairs. Annotations that go beyond this limit are rejected * Valid annotation keys have two segments: an optional prefix and name, separated by a slash (/). The name segment is required and must be 63 characters or less, beginning and ending with an alphanumeric character ([a-z0-9A-Z]) with dashes (-), underscores (_), dots (.), and alphanumerics between. The prefix is optional. If specified, the prefix must be a DNS subdomain: a series of DNS labels separated by dots (.), not longer than 253 characters in total, followed by a slash (/) Annotations that fails to meet these requirements are rejected. Note: This field is equivalent to the
metadata
field in the v1beta1 API. They have the same syntax and read/write to the same location in Service Directory. - Name string
- Immutable. The resource name for the endpoint in the format
projects/*/locations/*/namespaces/*/services/*/endpoints/*
. - Network string
- Immutable. The Google Compute Engine network (VPC) of the endpoint in the format
projects//locations/global/networks/*
. The project must be specified by project number (project id is rejected). Incorrectly formatted networks are rejected, we also check to make sure that you have the servicedirectory.networks.attach permission on the project specified. - Port int
- Optional. Service Directory rejects values outside of
[0, 65535]
. - Uid string
- The globally unique identifier of the endpoint in the UUID4 format.
- Address string
- Optional. An IPv4 or IPv6 address. Service Directory rejects bad addresses like: *
8.8.8
*8.8.8.8:53
*test:bad:address
*[::1]
*[::1]:8080
Limited to 45 characters. - Annotations map[string]string
- Optional. Annotations for the endpoint. This data can be consumed by service clients. Restrictions: * The entire annotations dictionary may contain up to 512 characters, spread accoss all key-value pairs. Annotations that go beyond this limit are rejected * Valid annotation keys have two segments: an optional prefix and name, separated by a slash (/). The name segment is required and must be 63 characters or less, beginning and ending with an alphanumeric character ([a-z0-9A-Z]) with dashes (-), underscores (_), dots (.), and alphanumerics between. The prefix is optional. If specified, the prefix must be a DNS subdomain: a series of DNS labels separated by dots (.), not longer than 253 characters in total, followed by a slash (/) Annotations that fails to meet these requirements are rejected. Note: This field is equivalent to the
metadata
field in the v1beta1 API. They have the same syntax and read/write to the same location in Service Directory. - Name string
- Immutable. The resource name for the endpoint in the format
projects/*/locations/*/namespaces/*/services/*/endpoints/*
. - Network string
- Immutable. The Google Compute Engine network (VPC) of the endpoint in the format
projects//locations/global/networks/*
. The project must be specified by project number (project id is rejected). Incorrectly formatted networks are rejected, we also check to make sure that you have the servicedirectory.networks.attach permission on the project specified. - Port int
- Optional. Service Directory rejects values outside of
[0, 65535]
. - Uid string
- The globally unique identifier of the endpoint in the UUID4 format.
- address String
- Optional. An IPv4 or IPv6 address. Service Directory rejects bad addresses like: *
8.8.8
*8.8.8.8:53
*test:bad:address
*[::1]
*[::1]:8080
Limited to 45 characters. - annotations Map<String,String>
- Optional. Annotations for the endpoint. This data can be consumed by service clients. Restrictions: * The entire annotations dictionary may contain up to 512 characters, spread accoss all key-value pairs. Annotations that go beyond this limit are rejected * Valid annotation keys have two segments: an optional prefix and name, separated by a slash (/). The name segment is required and must be 63 characters or less, beginning and ending with an alphanumeric character ([a-z0-9A-Z]) with dashes (-), underscores (_), dots (.), and alphanumerics between. The prefix is optional. If specified, the prefix must be a DNS subdomain: a series of DNS labels separated by dots (.), not longer than 253 characters in total, followed by a slash (/) Annotations that fails to meet these requirements are rejected. Note: This field is equivalent to the
metadata
field in the v1beta1 API. They have the same syntax and read/write to the same location in Service Directory. - name String
- Immutable. The resource name for the endpoint in the format
projects/*/locations/*/namespaces/*/services/*/endpoints/*
. - network String
- Immutable. The Google Compute Engine network (VPC) of the endpoint in the format
projects//locations/global/networks/*
. The project must be specified by project number (project id is rejected). Incorrectly formatted networks are rejected, we also check to make sure that you have the servicedirectory.networks.attach permission on the project specified. - port Integer
- Optional. Service Directory rejects values outside of
[0, 65535]
. - uid String
- The globally unique identifier of the endpoint in the UUID4 format.
- address string
- Optional. An IPv4 or IPv6 address. Service Directory rejects bad addresses like: *
8.8.8
*8.8.8.8:53
*test:bad:address
*[::1]
*[::1]:8080
Limited to 45 characters. - annotations {[key: string]: string}
- Optional. Annotations for the endpoint. This data can be consumed by service clients. Restrictions: * The entire annotations dictionary may contain up to 512 characters, spread accoss all key-value pairs. Annotations that go beyond this limit are rejected * Valid annotation keys have two segments: an optional prefix and name, separated by a slash (/). The name segment is required and must be 63 characters or less, beginning and ending with an alphanumeric character ([a-z0-9A-Z]) with dashes (-), underscores (_), dots (.), and alphanumerics between. The prefix is optional. If specified, the prefix must be a DNS subdomain: a series of DNS labels separated by dots (.), not longer than 253 characters in total, followed by a slash (/) Annotations that fails to meet these requirements are rejected. Note: This field is equivalent to the
metadata
field in the v1beta1 API. They have the same syntax and read/write to the same location in Service Directory. - name string
- Immutable. The resource name for the endpoint in the format
projects/*/locations/*/namespaces/*/services/*/endpoints/*
. - network string
- Immutable. The Google Compute Engine network (VPC) of the endpoint in the format
projects//locations/global/networks/*
. The project must be specified by project number (project id is rejected). Incorrectly formatted networks are rejected, we also check to make sure that you have the servicedirectory.networks.attach permission on the project specified. - port number
- Optional. Service Directory rejects values outside of
[0, 65535]
. - uid string
- The globally unique identifier of the endpoint in the UUID4 format.
- address str
- Optional. An IPv4 or IPv6 address. Service Directory rejects bad addresses like: *
8.8.8
*8.8.8.8:53
*test:bad:address
*[::1]
*[::1]:8080
Limited to 45 characters. - annotations Mapping[str, str]
- Optional. Annotations for the endpoint. This data can be consumed by service clients. Restrictions: * The entire annotations dictionary may contain up to 512 characters, spread accoss all key-value pairs. Annotations that go beyond this limit are rejected * Valid annotation keys have two segments: an optional prefix and name, separated by a slash (/). The name segment is required and must be 63 characters or less, beginning and ending with an alphanumeric character ([a-z0-9A-Z]) with dashes (-), underscores (_), dots (.), and alphanumerics between. The prefix is optional. If specified, the prefix must be a DNS subdomain: a series of DNS labels separated by dots (.), not longer than 253 characters in total, followed by a slash (/) Annotations that fails to meet these requirements are rejected. Note: This field is equivalent to the
metadata
field in the v1beta1 API. They have the same syntax and read/write to the same location in Service Directory. - name str
- Immutable. The resource name for the endpoint in the format
projects/*/locations/*/namespaces/*/services/*/endpoints/*
. - network str
- Immutable. The Google Compute Engine network (VPC) of the endpoint in the format
projects//locations/global/networks/*
. The project must be specified by project number (project id is rejected). Incorrectly formatted networks are rejected, we also check to make sure that you have the servicedirectory.networks.attach permission on the project specified. - port int
- Optional. Service Directory rejects values outside of
[0, 65535]
. - uid str
- The globally unique identifier of the endpoint in the UUID4 format.
- address String
- Optional. An IPv4 or IPv6 address. Service Directory rejects bad addresses like: *
8.8.8
*8.8.8.8:53
*test:bad:address
*[::1]
*[::1]:8080
Limited to 45 characters. - annotations Map<String>
- Optional. Annotations for the endpoint. This data can be consumed by service clients. Restrictions: * The entire annotations dictionary may contain up to 512 characters, spread accoss all key-value pairs. Annotations that go beyond this limit are rejected * Valid annotation keys have two segments: an optional prefix and name, separated by a slash (/). The name segment is required and must be 63 characters or less, beginning and ending with an alphanumeric character ([a-z0-9A-Z]) with dashes (-), underscores (_), dots (.), and alphanumerics between. The prefix is optional. If specified, the prefix must be a DNS subdomain: a series of DNS labels separated by dots (.), not longer than 253 characters in total, followed by a slash (/) Annotations that fails to meet these requirements are rejected. Note: This field is equivalent to the
metadata
field in the v1beta1 API. They have the same syntax and read/write to the same location in Service Directory. - name String
- Immutable. The resource name for the endpoint in the format
projects/*/locations/*/namespaces/*/services/*/endpoints/*
. - network String
- Immutable. The Google Compute Engine network (VPC) of the endpoint in the format
projects//locations/global/networks/*
. The project must be specified by project number (project id is rejected). Incorrectly formatted networks are rejected, we also check to make sure that you have the servicedirectory.networks.attach permission on the project specified. - port Number
- Optional. Service Directory rejects values outside of
[0, 65535]
. - uid String
- The globally unique identifier of the endpoint in the UUID4 format.
Package Details
- Repository
- Google Cloud Native pulumi/pulumi-google-native
- License
- Apache-2.0
Google Cloud Native is in preview. Google Cloud Classic is fully supported.