feat!: removing the v1 API published by mistake
PiperOrigin-RevId: 333550114
This commit is contained in:
parent
cdbd491d2c
commit
8c18d1f88a
|
|
@ -1,327 +0,0 @@
|
|||
# This file was automatically generated by BuildFileGenerator
|
||||
|
||||
##############################################################################
|
||||
# Common
|
||||
##############################################################################
|
||||
load("@rules_proto//proto:defs.bzl", "proto_library")
|
||||
load(
|
||||
"@com_google_googleapis_imports//:imports.bzl",
|
||||
"csharp_gapic_assembly_pkg",
|
||||
"csharp_gapic_library",
|
||||
"csharp_grpc_library",
|
||||
"csharp_proto_library",
|
||||
"go_gapic_assembly_pkg",
|
||||
"go_gapic_library",
|
||||
"go_proto_library",
|
||||
"go_test",
|
||||
"java_gapic_assembly_gradle_pkg",
|
||||
"java_gapic_library",
|
||||
"java_gapic_test",
|
||||
"java_grpc_library",
|
||||
"java_proto_library",
|
||||
"moved_proto_library",
|
||||
"nodejs_gapic_assembly_pkg",
|
||||
"nodejs_gapic_library",
|
||||
"php_gapic_assembly_pkg",
|
||||
"php_gapic_library",
|
||||
"php_grpc_library",
|
||||
"php_proto_library",
|
||||
"proto_library_with_info",
|
||||
"py_gapic_assembly_pkg",
|
||||
"py_gapic_library",
|
||||
"py_grpc_library",
|
||||
"py_proto_library",
|
||||
"ruby_gapic_assembly_pkg",
|
||||
"ruby_gapic_library",
|
||||
"ruby_grpc_library",
|
||||
"ruby_proto_library",
|
||||
)
|
||||
|
||||
# This is an API workspace, having public visibility by default makes perfect sense.
|
||||
package(default_visibility = ["//visibility:public"])
|
||||
|
||||
proto_library(
|
||||
name = "servicedirectory_proto",
|
||||
srcs = [
|
||||
"endpoint.proto",
|
||||
"lookup_service.proto",
|
||||
"namespace.proto",
|
||||
"registration_service.proto",
|
||||
"service.proto",
|
||||
],
|
||||
deps = [
|
||||
"//google/api:annotations_proto",
|
||||
"//google/api:client_proto",
|
||||
"//google/api:field_behavior_proto",
|
||||
"//google/api:resource_proto",
|
||||
"//google/iam/v1:iam_policy_proto",
|
||||
"//google/iam/v1:policy_proto",
|
||||
"@com_google_protobuf//:empty_proto",
|
||||
"@com_google_protobuf//:field_mask_proto",
|
||||
],
|
||||
)
|
||||
|
||||
proto_library_with_info(
|
||||
name = "servicedirectory_proto_with_info",
|
||||
deps = [
|
||||
":servicedirectory_proto",
|
||||
"//google/cloud:common_resources_proto",
|
||||
],
|
||||
)
|
||||
|
||||
java_proto_library(
|
||||
name = "servicedirectory_java_proto",
|
||||
deps = [":servicedirectory_proto"],
|
||||
)
|
||||
|
||||
java_grpc_library(
|
||||
name = "servicedirectory_java_grpc",
|
||||
srcs = [":servicedirectory_proto"],
|
||||
deps = [":servicedirectory_java_proto"],
|
||||
)
|
||||
|
||||
java_gapic_library(
|
||||
name = "servicedirectory_java_gapic",
|
||||
src = ":servicedirectory_proto_with_info",
|
||||
gapic_yaml = "servicedirectory_gapic.yaml",
|
||||
grpc_service_config = "servicedirectory_grpc_service_config.json",
|
||||
package = "google.cloud.servicedirectory.v1",
|
||||
service_yaml = "servicedirectory_v1.yaml",
|
||||
test_deps = [
|
||||
":servicedirectory_java_grpc",
|
||||
"//google/iam/v1:iam_java_grpc",
|
||||
],
|
||||
deps = [
|
||||
":servicedirectory_java_proto",
|
||||
"//google/iam/v1:iam_java_proto",
|
||||
],
|
||||
)
|
||||
|
||||
java_gapic_test(
|
||||
name = "servicedirectory_java_gapic_test_suite",
|
||||
test_classes = [
|
||||
"com.google.cloud.servicedirectory.v1.LookupServiceClientTest",
|
||||
"com.google.cloud.servicedirectory.v1.RegistrationServiceClientTest",
|
||||
],
|
||||
runtime_deps = [":servicedirectory_java_gapic_test"],
|
||||
)
|
||||
|
||||
# Open Source Packages
|
||||
java_gapic_assembly_gradle_pkg(
|
||||
name = "google-cloud-servicedirectory-v1-java",
|
||||
deps = [
|
||||
":servicedirectory_java_gapic",
|
||||
":servicedirectory_java_grpc",
|
||||
":servicedirectory_java_proto",
|
||||
":servicedirectory_proto",
|
||||
],
|
||||
)
|
||||
|
||||
go_proto_library(
|
||||
name = "servicedirectory_go_proto",
|
||||
compilers = ["@io_bazel_rules_go//proto:go_grpc"],
|
||||
importpath = "google.golang.org/genproto/googleapis/cloud/servicedirectory/v1",
|
||||
protos = [":servicedirectory_proto"],
|
||||
deps = [
|
||||
"//google/api:annotations_go_proto",
|
||||
"//google/iam/v1:iam_go_proto",
|
||||
],
|
||||
)
|
||||
|
||||
go_gapic_library(
|
||||
name = "servicedirectory_go_gapic",
|
||||
srcs = [":servicedirectory_proto_with_info"],
|
||||
grpc_service_config = "servicedirectory_grpc_service_config.json",
|
||||
importpath = "cloud.google.com/go/servicedirectory/apiv1;servicedirectory",
|
||||
service_yaml = "servicedirectory_v1.yaml",
|
||||
deps = [
|
||||
":servicedirectory_go_proto",
|
||||
"//google/iam/v1:iam_go_proto",
|
||||
],
|
||||
)
|
||||
|
||||
go_test(
|
||||
name = "servicedirectory_go_gapic_test",
|
||||
srcs = [":servicedirectory_go_gapic_srcjar_test"],
|
||||
embed = [":servicedirectory_go_gapic"],
|
||||
importpath = "cloud.google.com/go/servicedirectory/apiv1",
|
||||
)
|
||||
|
||||
# Open Source Packages
|
||||
go_gapic_assembly_pkg(
|
||||
name = "gapi-cloud-servicedirectory-v1-go",
|
||||
deps = [
|
||||
":servicedirectory_go_gapic",
|
||||
":servicedirectory_go_gapic_srcjar-test.srcjar",
|
||||
":servicedirectory_go_proto",
|
||||
],
|
||||
)
|
||||
|
||||
moved_proto_library(
|
||||
name = "servicedirectory_moved_proto",
|
||||
srcs = [":servicedirectory_proto"],
|
||||
deps = [
|
||||
"//google/api:annotations_proto",
|
||||
"//google/api:client_proto",
|
||||
"//google/api:field_behavior_proto",
|
||||
"//google/api:resource_proto",
|
||||
"//google/iam/v1:iam_policy_proto",
|
||||
"//google/iam/v1:policy_proto",
|
||||
"@com_google_protobuf//:empty_proto",
|
||||
"@com_google_protobuf//:field_mask_proto",
|
||||
],
|
||||
)
|
||||
|
||||
py_proto_library(
|
||||
name = "servicedirectory_py_proto",
|
||||
plugin = "@protoc_docs_plugin//:docs_plugin",
|
||||
deps = [":servicedirectory_moved_proto"],
|
||||
)
|
||||
|
||||
py_grpc_library(
|
||||
name = "servicedirectory_py_grpc",
|
||||
srcs = [":servicedirectory_moved_proto"],
|
||||
deps = [":servicedirectory_py_proto"],
|
||||
)
|
||||
|
||||
py_gapic_library(
|
||||
name = "servicedirectory_py_gapic",
|
||||
src = ":servicedirectory_proto_with_info",
|
||||
gapic_yaml = "servicedirectory_gapic.yaml",
|
||||
grpc_service_config = "servicedirectory_grpc_service_config.json",
|
||||
package = "google.cloud.servicedirectory.v1",
|
||||
service_yaml = "servicedirectory_v1.yaml",
|
||||
deps = [
|
||||
":servicedirectory_py_grpc",
|
||||
":servicedirectory_py_proto",
|
||||
],
|
||||
)
|
||||
|
||||
# Open Source Packages
|
||||
py_gapic_assembly_pkg(
|
||||
name = "servicedirectory-v1-py",
|
||||
deps = [
|
||||
":servicedirectory_py_gapic",
|
||||
":servicedirectory_py_grpc",
|
||||
":servicedirectory_py_proto",
|
||||
],
|
||||
)
|
||||
|
||||
php_proto_library(
|
||||
name = "servicedirectory_php_proto",
|
||||
deps = [":servicedirectory_proto"],
|
||||
)
|
||||
|
||||
php_grpc_library(
|
||||
name = "servicedirectory_php_grpc",
|
||||
srcs = [":servicedirectory_proto"],
|
||||
deps = [":servicedirectory_php_proto"],
|
||||
)
|
||||
|
||||
php_gapic_library(
|
||||
name = "servicedirectory_php_gapic",
|
||||
src = ":servicedirectory_proto_with_info",
|
||||
gapic_yaml = "servicedirectory_gapic.yaml",
|
||||
grpc_service_config = "servicedirectory_grpc_service_config.json",
|
||||
package = "google.cloud.servicedirectory.v1",
|
||||
service_yaml = "servicedirectory_v1.yaml",
|
||||
deps = [
|
||||
":servicedirectory_php_grpc",
|
||||
":servicedirectory_php_proto",
|
||||
],
|
||||
)
|
||||
|
||||
# Open Source Packages
|
||||
php_gapic_assembly_pkg(
|
||||
name = "google-cloud-servicedirectory-v1-php",
|
||||
deps = [
|
||||
":servicedirectory_php_gapic",
|
||||
":servicedirectory_php_grpc",
|
||||
":servicedirectory_php_proto",
|
||||
],
|
||||
)
|
||||
|
||||
nodejs_gapic_library(
|
||||
name = "servicedirectory_nodejs_gapic",
|
||||
package_name = "@google-cloud/service-directory",
|
||||
src = ":servicedirectory_proto_with_info",
|
||||
gapic_yaml = "servicedirectory_gapic.yaml",
|
||||
grpc_service_config = "servicedirectory_grpc_service_config.json",
|
||||
main_service = "ServiceDirectory",
|
||||
package = "google.cloud.servicedirectory.v1",
|
||||
service_yaml = "servicedirectory_v1.yaml",
|
||||
deps = [],
|
||||
)
|
||||
|
||||
nodejs_gapic_assembly_pkg(
|
||||
name = "servicedirectory-v1-nodejs",
|
||||
deps = [
|
||||
":servicedirectory_nodejs_gapic",
|
||||
":servicedirectory_proto",
|
||||
],
|
||||
)
|
||||
|
||||
ruby_proto_library(
|
||||
name = "servicedirectory_ruby_proto",
|
||||
deps = [":servicedirectory_proto"],
|
||||
)
|
||||
|
||||
ruby_grpc_library(
|
||||
name = "servicedirectory_ruby_grpc",
|
||||
srcs = [":servicedirectory_proto"],
|
||||
deps = [":servicedirectory_ruby_proto"],
|
||||
)
|
||||
|
||||
ruby_gapic_library(
|
||||
name = "servicedirectory_ruby_gapic",
|
||||
src = ":servicedirectory_proto_with_info",
|
||||
gapic_yaml = "servicedirectory_gapic.yaml",
|
||||
package = "google.cloud.servicedirectory.v1",
|
||||
service_yaml = "servicedirectory_v1.yaml",
|
||||
deps = [
|
||||
":servicedirectory_ruby_grpc",
|
||||
":servicedirectory_ruby_proto",
|
||||
],
|
||||
)
|
||||
|
||||
# Open Source Packages
|
||||
ruby_gapic_assembly_pkg(
|
||||
name = "google-cloud-servicedirectory-v1-ruby",
|
||||
deps = [
|
||||
":servicedirectory_ruby_gapic",
|
||||
":servicedirectory_ruby_grpc",
|
||||
":servicedirectory_ruby_proto",
|
||||
],
|
||||
)
|
||||
|
||||
csharp_proto_library(
|
||||
name = "servicedirectory_csharp_proto",
|
||||
deps = [":servicedirectory_proto"],
|
||||
)
|
||||
|
||||
csharp_grpc_library(
|
||||
name = "servicedirectory_csharp_grpc",
|
||||
srcs = [":servicedirectory_proto"],
|
||||
deps = [":servicedirectory_csharp_proto"],
|
||||
)
|
||||
|
||||
csharp_gapic_library(
|
||||
name = "servicedirectory_csharp_gapic",
|
||||
srcs = [":servicedirectory_proto_with_info"],
|
||||
common_resources_config = "@gax_dotnet//:Google.Api.Gax/ResourceNames/CommonResourcesConfig.json",
|
||||
grpc_service_config = "servicedirectory_grpc_service_config.json",
|
||||
deps = [
|
||||
":servicedirectory_csharp_grpc",
|
||||
":servicedirectory_csharp_proto",
|
||||
],
|
||||
)
|
||||
|
||||
# Open Source Packages
|
||||
csharp_gapic_assembly_pkg(
|
||||
name = "google-cloud-servicedirectory-v1-csharp",
|
||||
deps = [
|
||||
":servicedirectory_csharp_gapic",
|
||||
":servicedirectory_csharp_grpc",
|
||||
":servicedirectory_csharp_proto",
|
||||
],
|
||||
)
|
||||
|
|
@ -1,63 +0,0 @@
|
|||
// Copyright 2020 Google LLC
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||
// you may not use this file except in compliance with the License.
|
||||
// You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing, software
|
||||
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
// See the License for the specific language governing permissions and
|
||||
// limitations under the License.
|
||||
|
||||
syntax = "proto3";
|
||||
|
||||
package google.cloud.servicedirectory.v1;
|
||||
|
||||
import "google/api/annotations.proto";
|
||||
import "google/api/field_behavior.proto";
|
||||
import "google/api/resource.proto";
|
||||
|
||||
option cc_enable_arenas = true;
|
||||
option csharp_namespace = "Google.Cloud.ServiceDirectory.V1";
|
||||
option go_package = "google.golang.org/genproto/googleapis/cloud/servicedirectory/v1;servicedirectory";
|
||||
option java_multiple_files = true;
|
||||
option java_outer_classname = "EndpointProto";
|
||||
option java_package = "com.google.cloud.servicedirectory.v1";
|
||||
option php_namespace = "Google\\Cloud\\ServiceDirectory\\V1";
|
||||
option ruby_package = "Google::Cloud::ServiceDirectory::V1";
|
||||
|
||||
// An individual endpoint that provides a
|
||||
// [service][google.cloud.servicedirectory.v1.Service]. The service must
|
||||
// already exist to create an endpoint.
|
||||
message Endpoint {
|
||||
option (google.api.resource) = {
|
||||
type: "servicedirectory.googleapis.com/Endpoint"
|
||||
pattern: "projects/{project}/locations/{location}/namespaces/{namespace}/services/{service}/endpoints/{endpoint}"
|
||||
};
|
||||
|
||||
// Immutable. The resource name for the endpoint in the format
|
||||
// 'projects/*/locations/*/namespaces/*/services/*/endpoints/*'.
|
||||
string name = 1 [(google.api.field_behavior) = IMMUTABLE];
|
||||
|
||||
// Optional. An IPv4 or IPv6 address. Service Directory will reject bad
|
||||
// addresses like:
|
||||
// "8.8.8"
|
||||
// "8.8.8.8:53"
|
||||
// "test:bad:address"
|
||||
// "[::1]"
|
||||
// "[::1]:8080"
|
||||
// Limited to 45 characters.
|
||||
string address = 2 [(google.api.field_behavior) = OPTIONAL];
|
||||
|
||||
// Optional. Service Directory will reject values outside of [0, 65535].
|
||||
int32 port = 3 [(google.api.field_behavior) = OPTIONAL];
|
||||
|
||||
// Optional. Metadata for the endpoint. This data can be consumed by service
|
||||
// clients. The entire metadata dictionary may contain up to 512 characters,
|
||||
// spread accoss all key-value pairs. Metadata that goes beyond any these
|
||||
// limits will be rejected.
|
||||
map<string, string> metadata = 4 [(google.api.field_behavior) = OPTIONAL];
|
||||
}
|
||||
|
|
@ -1,93 +0,0 @@
|
|||
// Copyright 2020 Google LLC
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||
// you may not use this file except in compliance with the License.
|
||||
// You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing, software
|
||||
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
// See the License for the specific language governing permissions and
|
||||
// limitations under the License.
|
||||
|
||||
syntax = "proto3";
|
||||
|
||||
package google.cloud.servicedirectory.v1;
|
||||
|
||||
import "google/api/annotations.proto";
|
||||
import "google/api/client.proto";
|
||||
import "google/api/field_behavior.proto";
|
||||
import "google/api/resource.proto";
|
||||
import "google/cloud/servicedirectory/v1/service.proto";
|
||||
|
||||
option cc_enable_arenas = true;
|
||||
option csharp_namespace = "Google.Cloud.ServiceDirectory.V1";
|
||||
option go_package = "google.golang.org/genproto/googleapis/cloud/servicedirectory/v1;servicedirectory";
|
||||
option java_multiple_files = true;
|
||||
option java_outer_classname = "LookupServiceProto";
|
||||
option java_package = "com.google.cloud.servicedirectory.v1";
|
||||
option php_namespace = "Google\\Cloud\\ServiceDirectory\\V1";
|
||||
option ruby_package = "Google::Cloud::ServiceDirectory::V1";
|
||||
|
||||
// Service Directory API for looking up service data at runtime.
|
||||
service LookupService {
|
||||
option (google.api.default_host) = "servicedirectory.googleapis.com";
|
||||
option (google.api.oauth_scopes) =
|
||||
"https://www.googleapis.com/auth/cloud-platform";
|
||||
|
||||
// Returns a [service][google.cloud.servicedirectory.v1.Service] and its
|
||||
// associated endpoints.
|
||||
// Resolving a service is not considered an active developer method.
|
||||
rpc ResolveService(ResolveServiceRequest) returns (ResolveServiceResponse) {
|
||||
option (google.api.http) = {
|
||||
post: "/v1/{name=projects/*/locations/*/namespaces/*/services/*}:resolve"
|
||||
body: "*"
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
// The request message for
|
||||
// [LookupService.ResolveService][google.cloud.servicedirectory.v1.LookupService.ResolveService].
|
||||
// Looks up a service by its name, returns the service and its endpoints.
|
||||
message ResolveServiceRequest {
|
||||
// Required. The name of the service to resolve.
|
||||
string name = 1 [
|
||||
(google.api.field_behavior) = REQUIRED,
|
||||
(google.api.resource_reference) = {
|
||||
type: "servicedirectory.googleapis.com/Service"
|
||||
}
|
||||
];
|
||||
|
||||
// Optional. The maximum number of endpoints to return. Defaults to 25.
|
||||
// Maximum is 100. If a value less than one is specified, the Default is used.
|
||||
// If a value greater than the Maximum is specified, the Maximum is used.
|
||||
int32 max_endpoints = 2 [(google.api.field_behavior) = OPTIONAL];
|
||||
|
||||
// Optional. The filter applied to the endpoints of the resolved service.
|
||||
//
|
||||
// General filter string syntax:
|
||||
// <field> <operator> <value> (<logical connector>)
|
||||
// <field> can be "name" or "metadata.<key>" for map field.
|
||||
// <operator> can be "<, >, <=, >=, !=, =, :". Of which ":" means HAS and is
|
||||
// roughly the same as "=".
|
||||
// <value> must be the same data type as the field.
|
||||
// <logical connector> can be "AND, OR, NOT".
|
||||
//
|
||||
// Examples of valid filters:
|
||||
// * "metadata.owner" returns Endpoints that have a label with the
|
||||
// key "owner", this is the same as "metadata:owner"
|
||||
// * "metadata.protocol=gRPC" returns Endpoints that have key/value
|
||||
// "protocol=gRPC"
|
||||
// * "metadata.owner!=sd AND metadata.foo=bar" returns
|
||||
// Endpoints that have "owner" field in metadata with a value that is not
|
||||
// "sd" AND have the key/value foo=bar.
|
||||
string endpoint_filter = 3 [(google.api.field_behavior) = OPTIONAL];
|
||||
}
|
||||
|
||||
// The response message for
|
||||
// [LookupService.ResolveService][google.cloud.servicedirectory.v1.LookupService.ResolveService].
|
||||
message ResolveServiceResponse {
|
||||
Service service = 1;
|
||||
}
|
||||
|
|
@ -1,28 +0,0 @@
|
|||
// Copyright 2020 Google LLC
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||
// you may not use this file except in compliance with the License.
|
||||
// You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing, software
|
||||
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
// See the License for the specific language governing permissions and
|
||||
// limitations under the License.
|
||||
|
||||
syntax = "proto3";
|
||||
|
||||
package google.cloud.servicedirectory.v1;
|
||||
|
||||
import "google/api/annotations.proto";
|
||||
|
||||
option cc_enable_arenas = true;
|
||||
option csharp_namespace = "Google.Cloud.ServiceDirectory.V1";
|
||||
option go_package = "google.golang.org/genproto/googleapis/cloud/servicedirectory/v1;servicedirectory";
|
||||
option java_multiple_files = true;
|
||||
option java_outer_classname = "ManagingResourceProto";
|
||||
option java_package = "com.google.cloud.servicedirectory.v1";
|
||||
option php_namespace = "Google\\Cloud\\ServiceDirectory\\V1";
|
||||
option ruby_package = "Google::Cloud::ServiceDirectory::V1";
|
||||
|
|
@ -1,49 +0,0 @@
|
|||
// Copyright 2020 Google LLC
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||
// you may not use this file except in compliance with the License.
|
||||
// You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing, software
|
||||
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
// See the License for the specific language governing permissions and
|
||||
// limitations under the License.
|
||||
|
||||
syntax = "proto3";
|
||||
|
||||
package google.cloud.servicedirectory.v1;
|
||||
|
||||
import "google/api/annotations.proto";
|
||||
import "google/api/field_behavior.proto";
|
||||
import "google/api/resource.proto";
|
||||
|
||||
option cc_enable_arenas = true;
|
||||
option csharp_namespace = "Google.Cloud.ServiceDirectory.V1";
|
||||
option go_package = "google.golang.org/genproto/googleapis/cloud/servicedirectory/v1;servicedirectory";
|
||||
option java_multiple_files = true;
|
||||
option java_outer_classname = "NamespaceProto";
|
||||
option java_package = "com.google.cloud.servicedirectory.v1";
|
||||
option php_namespace = "Google\\Cloud\\ServiceDirectory\\V1";
|
||||
option ruby_package = "Google::Cloud::ServiceDirectory::V1";
|
||||
|
||||
// A container for [services][google.cloud.servicedirectory.v1.Service].
|
||||
// Namespaces allow administrators to group services together and define
|
||||
// permissions for a collection of services.
|
||||
message Namespace {
|
||||
option (google.api.resource) = {
|
||||
type: "servicedirectory.googleapis.com/Namespace"
|
||||
pattern: "projects/{project}/locations/{location}/namespaces/{namespace}"
|
||||
};
|
||||
|
||||
// Immutable. The resource name for the namespace in the format
|
||||
// 'projects/*/locations/*/namespaces/*'.
|
||||
string name = 1 [(google.api.field_behavior) = IMMUTABLE];
|
||||
|
||||
// Optional. Resource labels associated with this Namespace.
|
||||
// No more than 64 user labels can be associated with a given resource. Label
|
||||
// keys and values can be no longer than 63 characters.
|
||||
map<string, string> labels = 2 [(google.api.field_behavior) = OPTIONAL];
|
||||
}
|
||||
|
|
@ -1,595 +0,0 @@
|
|||
// Copyright 2020 Google LLC
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||
// you may not use this file except in compliance with the License.
|
||||
// You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing, software
|
||||
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
// See the License for the specific language governing permissions and
|
||||
// limitations under the License.
|
||||
|
||||
syntax = "proto3";
|
||||
|
||||
package google.cloud.servicedirectory.v1;
|
||||
|
||||
import "google/api/annotations.proto";
|
||||
import "google/api/client.proto";
|
||||
import "google/api/field_behavior.proto";
|
||||
import "google/api/resource.proto";
|
||||
import "google/cloud/servicedirectory/v1/endpoint.proto";
|
||||
import "google/cloud/servicedirectory/v1/namespace.proto";
|
||||
import "google/cloud/servicedirectory/v1/service.proto";
|
||||
import "google/iam/v1/iam_policy.proto";
|
||||
import "google/iam/v1/policy.proto";
|
||||
import "google/protobuf/empty.proto";
|
||||
import "google/protobuf/field_mask.proto";
|
||||
|
||||
option cc_enable_arenas = true;
|
||||
option csharp_namespace = "Google.Cloud.ServiceDirectory.V1";
|
||||
option go_package = "google.golang.org/genproto/googleapis/cloud/servicedirectory/v1;servicedirectory";
|
||||
option java_multiple_files = true;
|
||||
option java_outer_classname = "RegistrationServiceProto";
|
||||
option java_package = "com.google.cloud.servicedirectory.v1";
|
||||
option php_namespace = "Google\\Cloud\\ServiceDirectory\\V1";
|
||||
option ruby_package = "Google::Cloud::ServiceDirectory::V1";
|
||||
|
||||
// Service Directory API for registering services. It defines the following
|
||||
// resource model:
|
||||
//
|
||||
// - The API has a collection of
|
||||
// [Namespace][google.cloud.servicedirectory.v1.Namespace]
|
||||
// resources, named `projects/*/locations/*/namespaces/*`.
|
||||
//
|
||||
// - Each Namespace has a collection of
|
||||
// [Service][google.cloud.servicedirectory.v1.Service] resources, named
|
||||
// `projects/*/locations/*/namespaces/*/services/*`.
|
||||
//
|
||||
// - Each Service has a collection of
|
||||
// [Endpoint][google.cloud.servicedirectory.v1.Endpoint]
|
||||
// resources, named
|
||||
// `projects/*/locations/*/namespaces/*/services/*/endpoints/*`.
|
||||
service RegistrationService {
|
||||
option (google.api.default_host) = "servicedirectory.googleapis.com";
|
||||
option (google.api.oauth_scopes) =
|
||||
"https://www.googleapis.com/auth/cloud-platform";
|
||||
|
||||
// Creates a namespace, and returns the new Namespace.
|
||||
rpc CreateNamespace(CreateNamespaceRequest) returns (Namespace) {
|
||||
option (google.api.http) = {
|
||||
post: "/v1/{parent=projects/*/locations/*}/namespaces"
|
||||
body: "namespace"
|
||||
};
|
||||
option (google.api.method_signature) = "parent,namespace,namespace_id";
|
||||
}
|
||||
|
||||
// Lists all namespaces.
|
||||
rpc ListNamespaces(ListNamespacesRequest) returns (ListNamespacesResponse) {
|
||||
option (google.api.http) = {
|
||||
get: "/v1/{parent=projects/*/locations/*}/namespaces"
|
||||
};
|
||||
option (google.api.method_signature) = "parent";
|
||||
}
|
||||
|
||||
// Gets a namespace.
|
||||
rpc GetNamespace(GetNamespaceRequest) returns (Namespace) {
|
||||
option (google.api.http) = {
|
||||
get: "/v1/{name=projects/*/locations/*/namespaces/*}"
|
||||
};
|
||||
option (google.api.method_signature) = "name";
|
||||
}
|
||||
|
||||
// Updates a namespace.
|
||||
rpc UpdateNamespace(UpdateNamespaceRequest) returns (Namespace) {
|
||||
option (google.api.http) = {
|
||||
patch: "/v1/{namespace.name=projects/*/locations/*/namespaces/*}"
|
||||
body: "namespace"
|
||||
};
|
||||
option (google.api.method_signature) = "namespace,update_mask";
|
||||
}
|
||||
|
||||
// Deletes a namespace. This also deletes all services and endpoints in
|
||||
// the namespace.
|
||||
rpc DeleteNamespace(DeleteNamespaceRequest) returns (google.protobuf.Empty) {
|
||||
option (google.api.http) = {
|
||||
delete: "/v1/{name=projects/*/locations/*/namespaces/*}"
|
||||
};
|
||||
option (google.api.method_signature) = "name";
|
||||
}
|
||||
|
||||
// Creates a service, and returns the new Service.
|
||||
rpc CreateService(CreateServiceRequest) returns (Service) {
|
||||
option (google.api.http) = {
|
||||
post: "/v1/{parent=projects/*/locations/*/namespaces/*}/services"
|
||||
body: "service"
|
||||
};
|
||||
option (google.api.method_signature) = "parent,service,service_id";
|
||||
}
|
||||
|
||||
// Lists all services belonging to a namespace.
|
||||
rpc ListServices(ListServicesRequest) returns (ListServicesResponse) {
|
||||
option (google.api.http) = {
|
||||
get: "/v1/{parent=projects/*/locations/*/namespaces/*}/services"
|
||||
};
|
||||
option (google.api.method_signature) = "parent";
|
||||
}
|
||||
|
||||
// Gets a service.
|
||||
rpc GetService(GetServiceRequest) returns (Service) {
|
||||
option (google.api.http) = {
|
||||
get: "/v1/{name=projects/*/locations/*/namespaces/*/services/*}"
|
||||
};
|
||||
option (google.api.method_signature) = "name";
|
||||
}
|
||||
|
||||
// Updates a service.
|
||||
rpc UpdateService(UpdateServiceRequest) returns (Service) {
|
||||
option (google.api.http) = {
|
||||
patch: "/v1/{service.name=projects/*/locations/*/namespaces/*/services/*}"
|
||||
body: "service"
|
||||
};
|
||||
option (google.api.method_signature) = "service,update_mask";
|
||||
}
|
||||
|
||||
// Deletes a service. This also deletes all endpoints associated with
|
||||
// the service.
|
||||
rpc DeleteService(DeleteServiceRequest) returns (google.protobuf.Empty) {
|
||||
option (google.api.http) = {
|
||||
delete: "/v1/{name=projects/*/locations/*/namespaces/*/services/*}"
|
||||
};
|
||||
option (google.api.method_signature) = "name";
|
||||
}
|
||||
|
||||
// Creates a endpoint, and returns the new Endpoint.
|
||||
rpc CreateEndpoint(CreateEndpointRequest) returns (Endpoint) {
|
||||
option (google.api.http) = {
|
||||
post: "/v1/{parent=projects/*/locations/*/namespaces/*/services/*}/endpoints"
|
||||
body: "endpoint"
|
||||
};
|
||||
option (google.api.method_signature) = "parent,endpoint,endpoint_id";
|
||||
}
|
||||
|
||||
// Lists all endpoints.
|
||||
rpc ListEndpoints(ListEndpointsRequest) returns (ListEndpointsResponse) {
|
||||
option (google.api.http) = {
|
||||
get: "/v1/{parent=projects/*/locations/*/namespaces/*/services/*}/endpoints"
|
||||
};
|
||||
option (google.api.method_signature) = "parent";
|
||||
}
|
||||
|
||||
// Gets a endpoint.
|
||||
rpc GetEndpoint(GetEndpointRequest) returns (Endpoint) {
|
||||
option (google.api.http) = {
|
||||
get: "/v1/{name=projects/*/locations/*/namespaces/*/services/*/endpoints/*}"
|
||||
};
|
||||
option (google.api.method_signature) = "name";
|
||||
}
|
||||
|
||||
// Updates a endpoint.
|
||||
rpc UpdateEndpoint(UpdateEndpointRequest) returns (Endpoint) {
|
||||
option (google.api.http) = {
|
||||
patch: "/v1/{endpoint.name=projects/*/locations/*/namespaces/*/services/*/endpoints/*}"
|
||||
body: "endpoint"
|
||||
};
|
||||
option (google.api.method_signature) = "endpoint,update_mask";
|
||||
}
|
||||
|
||||
// Deletes a endpoint.
|
||||
rpc DeleteEndpoint(DeleteEndpointRequest) returns (google.protobuf.Empty) {
|
||||
option (google.api.http) = {
|
||||
delete: "/v1/{name=projects/*/locations/*/namespaces/*/services/*/endpoints/*}"
|
||||
};
|
||||
option (google.api.method_signature) = "name";
|
||||
}
|
||||
|
||||
// Gets the IAM Policy for a resource (namespace or service only).
|
||||
rpc GetIamPolicy(google.iam.v1.GetIamPolicyRequest)
|
||||
returns (google.iam.v1.Policy) {
|
||||
option (google.api.http) = {
|
||||
post: "/v1/{resource=projects/*/locations/*/namespaces/*}:getIamPolicy"
|
||||
body: "*"
|
||||
additional_bindings {
|
||||
post: "/v1/{resource=projects/*/locations/*/namespaces/*/services/*}:getIamPolicy"
|
||||
body: "*"
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
// Sets the IAM Policy for a resource (namespace or service only).
|
||||
rpc SetIamPolicy(google.iam.v1.SetIamPolicyRequest)
|
||||
returns (google.iam.v1.Policy) {
|
||||
option (google.api.http) = {
|
||||
post: "/v1/{resource=projects/*/locations/*/namespaces/*}:setIamPolicy"
|
||||
body: "*"
|
||||
additional_bindings {
|
||||
post: "/v1/{resource=projects/*/locations/*/namespaces/*/services/*}:setIamPolicy"
|
||||
body: "*"
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
// Tests IAM permissions for a resource (namespace or service only).
|
||||
rpc TestIamPermissions(google.iam.v1.TestIamPermissionsRequest)
|
||||
returns (google.iam.v1.TestIamPermissionsResponse) {
|
||||
option (google.api.http) = {
|
||||
post: "/v1/{resource=projects/*/locations/*/namespaces/*}:testIamPermissions"
|
||||
body: "*"
|
||||
additional_bindings {
|
||||
post: "/v1/{resource=projects/*/locations/*/namespaces/*/services/*}:testIamPermissions"
|
||||
body: "*"
|
||||
}
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
// The request message for
|
||||
// [RegistrationService.CreateNamespace][google.cloud.servicedirectory.v1.RegistrationService.CreateNamespace].
|
||||
message CreateNamespaceRequest {
|
||||
// Required. The resource name of the project and location the namespace
|
||||
// will be created in.
|
||||
string parent = 1 [
|
||||
(google.api.field_behavior) = REQUIRED,
|
||||
(google.api.resource_reference) = {
|
||||
type: "locations.googleapis.com/Location"
|
||||
}
|
||||
];
|
||||
|
||||
// Required. The Resource ID must be 1-63 characters long, and comply with
|
||||
// <a href="https://www.ietf.org/rfc/rfc1035.txt" target="_blank">RFC1035</a>.
|
||||
// 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.
|
||||
string namespace_id = 2 [(google.api.field_behavior) = REQUIRED];
|
||||
|
||||
// Required. A namespace with initial fields set.
|
||||
Namespace namespace = 3 [(google.api.field_behavior) = REQUIRED];
|
||||
}
|
||||
|
||||
// The request message for
|
||||
// [RegistrationService.ListNamespaces][google.cloud.servicedirectory.v1.RegistrationService.ListNamespaces].
|
||||
message ListNamespacesRequest {
|
||||
// Required. The resource name of the project and location whose namespaces
|
||||
// we'd like to list.
|
||||
string parent = 1 [
|
||||
(google.api.field_behavior) = REQUIRED,
|
||||
(google.api.resource_reference) = {
|
||||
type: "locations.googleapis.com/Location"
|
||||
}
|
||||
];
|
||||
|
||||
// Optional. The maximum number of items to return.
|
||||
int32 page_size = 2 [(google.api.field_behavior) = OPTIONAL];
|
||||
|
||||
// Optional. The next_page_token value returned from a previous List request,
|
||||
// if any.
|
||||
string page_token = 3 [(google.api.field_behavior) = OPTIONAL];
|
||||
|
||||
// Optional. The filter to list result by.
|
||||
//
|
||||
// General filter string syntax:
|
||||
// <field> <operator> <value> (<logical connector>)
|
||||
// <field> can be "name", or "labels.<key>" for map field.
|
||||
// <operator> can be "<, >, <=, >=, !=, =, :". Of which ":" means HAS, and
|
||||
// is roughly the same as "=".
|
||||
// <value> must be the same data type as field.
|
||||
// <logical connector> can be "AND, OR, NOT".
|
||||
//
|
||||
// Examples of valid filters:
|
||||
// * "labels.owner" returns Namespaces that have a label with the key "owner"
|
||||
// this is the same as "labels:owner".
|
||||
// * "labels.protocol=gRPC" returns Namespaces that have key/value
|
||||
// "protocol=gRPC".
|
||||
// * "name>projects/my-project/locations/us-east/namespaces/namespace-c"
|
||||
// returns Namespaces that have name that is alphabetically later than the
|
||||
// string, so "namespace-e" will be returned but "namespace-a" will not be.
|
||||
// * "labels.owner!=sd AND labels.foo=bar" returns Namespaces that have
|
||||
// "owner" in label key but value is not "sd" AND have key/value foo=bar.
|
||||
// * "doesnotexist.foo=bar" returns an empty list. Note that Namespace doesn't
|
||||
// have a field called "doesnotexist". Since the filter does not match any
|
||||
// Namespaces, it returns no results.
|
||||
string filter = 4 [(google.api.field_behavior) = OPTIONAL];
|
||||
|
||||
// Optional. The order to list result by.
|
||||
//
|
||||
// General order by string syntax:
|
||||
// <field> (<asc|desc>) (,)
|
||||
// <field> allows values {"name"}
|
||||
// <asc/desc> ascending or descending order by <field>. If this is left
|
||||
// blank, "asc" is used.
|
||||
// Note that an empty order_by string result in default order, which is order
|
||||
// by name in ascending order.
|
||||
string order_by = 5 [(google.api.field_behavior) = OPTIONAL];
|
||||
}
|
||||
|
||||
// The response message for
|
||||
// [RegistrationService.ListNamespaces][google.cloud.servicedirectory.v1.RegistrationService.ListNamespaces].
|
||||
message ListNamespacesResponse {
|
||||
// The list of namespaces.
|
||||
repeated Namespace namespaces = 1;
|
||||
|
||||
// Token to retrieve the next page of results, or empty if there are no
|
||||
// more results in the list.
|
||||
string next_page_token = 2;
|
||||
}
|
||||
|
||||
// The request message for
|
||||
// [RegistrationService.GetNamespace][google.cloud.servicedirectory.v1.RegistrationService.GetNamespace].
|
||||
message GetNamespaceRequest {
|
||||
// Required. The name of the namespace to retrieve.
|
||||
string name = 1 [
|
||||
(google.api.field_behavior) = REQUIRED,
|
||||
(google.api.resource_reference) = {
|
||||
type: "servicedirectory.googleapis.com/Namespace"
|
||||
}
|
||||
];
|
||||
}
|
||||
|
||||
// The request message for
|
||||
// [RegistrationService.UpdateNamespace][google.cloud.servicedirectory.v1.RegistrationService.UpdateNamespace].
|
||||
message UpdateNamespaceRequest {
|
||||
// Required. The updated namespace.
|
||||
Namespace namespace = 1 [(google.api.field_behavior) = REQUIRED];
|
||||
|
||||
// Required. List of fields to be updated in this request.
|
||||
google.protobuf.FieldMask update_mask = 2
|
||||
[(google.api.field_behavior) = REQUIRED];
|
||||
}
|
||||
|
||||
// The request message for
|
||||
// [RegistrationService.DeleteNamespace][google.cloud.servicedirectory.v1.RegistrationService.DeleteNamespace].
|
||||
message DeleteNamespaceRequest {
|
||||
// Required. The name of the namespace to delete.
|
||||
string name = 1 [
|
||||
(google.api.field_behavior) = REQUIRED,
|
||||
(google.api.resource_reference) = {
|
||||
type: "servicedirectory.googleapis.com/Namespace"
|
||||
}
|
||||
];
|
||||
}
|
||||
|
||||
// The request message for
|
||||
// [RegistrationService.CreateService][google.cloud.servicedirectory.v1.RegistrationService.CreateService].
|
||||
message CreateServiceRequest {
|
||||
// Required. The resource name of the namespace this service will belong to.
|
||||
string parent = 1 [
|
||||
(google.api.field_behavior) = REQUIRED,
|
||||
(google.api.resource_reference) = {
|
||||
type: "servicedirectory.googleapis.com/Namespace"
|
||||
}
|
||||
];
|
||||
|
||||
// Required. The Resource ID must be 1-63 characters long, and comply with
|
||||
// <a href="https://www.ietf.org/rfc/rfc1035.txt" target="_blank">RFC1035</a>.
|
||||
// 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.
|
||||
string service_id = 2 [(google.api.field_behavior) = REQUIRED];
|
||||
|
||||
// Required. A service with initial fields set.
|
||||
Service service = 3 [(google.api.field_behavior) = REQUIRED];
|
||||
}
|
||||
|
||||
// The request message for
|
||||
// [RegistrationService.ListServices][google.cloud.servicedirectory.v1.RegistrationService.ListServices].
|
||||
message ListServicesRequest {
|
||||
// Required. The resource name of the namespace whose services we'd
|
||||
// like to list.
|
||||
string parent = 1 [
|
||||
(google.api.field_behavior) = REQUIRED,
|
||||
(google.api.resource_reference) = {
|
||||
type: "servicedirectory.googleapis.com/Namespace"
|
||||
}
|
||||
];
|
||||
|
||||
// Optional. The maximum number of items to return.
|
||||
int32 page_size = 2 [(google.api.field_behavior) = OPTIONAL];
|
||||
|
||||
// Optional. The next_page_token value returned from a previous List request,
|
||||
// if any.
|
||||
string page_token = 3 [(google.api.field_behavior) = OPTIONAL];
|
||||
|
||||
// Optional. The filter to list result by.
|
||||
//
|
||||
// General filter string syntax:
|
||||
// <field> <operator> <value> (<logical connector>)
|
||||
// <field> can be "name", or "metadata.<key>" for map field.
|
||||
// <operator> can be "<, >, <=, >=, !=, =, :". Of which ":" means HAS, and
|
||||
// is roughly the same as "=".
|
||||
// <value> must be the same data type as field.
|
||||
// <logical connector> can be "AND, OR, NOT".
|
||||
//
|
||||
// Examples of valid filters:
|
||||
// * "metadata.owner" returns Services that have a label with the key "owner"
|
||||
// this is the same as "metadata:owner".
|
||||
// * "metadata.protocol=gRPC" returns Services that have key/value
|
||||
// "protocol=gRPC".
|
||||
// * "name>projects/my-project/locations/us-east/namespaces/my-namespace/services/service-c"
|
||||
// returns Services that have name that is alphabetically later than the
|
||||
// string, so "service-e" will be returned but "service-a" will not be.
|
||||
// * "metadata.owner!=sd AND metadata.foo=bar" returns Services that have
|
||||
// "owner" in label key but value is not "sd" AND have key/value foo=bar.
|
||||
// * "doesnotexist.foo=bar" returns an empty list. Note that Service doesn't
|
||||
// have a field called "doesnotexist". Since the filter does not match any
|
||||
// Services, it returns no results.
|
||||
string filter = 4 [(google.api.field_behavior) = OPTIONAL];
|
||||
|
||||
// Optional. The order to list result by.
|
||||
string order_by = 5 [(google.api.field_behavior) = OPTIONAL];
|
||||
}
|
||||
|
||||
// The response message for
|
||||
// [RegistrationService.ListServices][google.cloud.servicedirectory.v1.RegistrationService.ListServices].
|
||||
message ListServicesResponse {
|
||||
// The list of services.
|
||||
repeated Service services = 1;
|
||||
|
||||
// Token to retrieve the next page of results, or empty if there are no
|
||||
// more results in the list.
|
||||
string next_page_token = 2;
|
||||
}
|
||||
|
||||
// The request message for
|
||||
// [RegistrationService.GetService][google.cloud.servicedirectory.v1.RegistrationService.GetService].
|
||||
// This should not be used for looking up a service. Insead, use the `resolve`
|
||||
// method as it will contain all endpoints and associated metadata.
|
||||
message GetServiceRequest {
|
||||
// Required. The name of the service to get.
|
||||
string name = 1 [
|
||||
(google.api.field_behavior) = REQUIRED,
|
||||
(google.api.resource_reference) = {
|
||||
type: "servicedirectory.googleapis.com/Service"
|
||||
}
|
||||
];
|
||||
}
|
||||
|
||||
// The request message for
|
||||
// [RegistrationService.UpdateService][google.cloud.servicedirectory.v1.RegistrationService.UpdateService].
|
||||
message UpdateServiceRequest {
|
||||
// Required. The updated service.
|
||||
Service service = 1 [(google.api.field_behavior) = REQUIRED];
|
||||
|
||||
// Required. List of fields to be updated in this request.
|
||||
google.protobuf.FieldMask update_mask = 2
|
||||
[(google.api.field_behavior) = REQUIRED];
|
||||
}
|
||||
|
||||
// The request message for
|
||||
// [RegistrationService.DeleteService][google.cloud.servicedirectory.v1.RegistrationService.DeleteService].
|
||||
message DeleteServiceRequest {
|
||||
// Required. The name of the service to delete.
|
||||
string name = 1 [
|
||||
(google.api.field_behavior) = REQUIRED,
|
||||
(google.api.resource_reference) = {
|
||||
type: "servicedirectory.googleapis.com/Service"
|
||||
}
|
||||
];
|
||||
}
|
||||
|
||||
// The request message for
|
||||
// [RegistrationService.CreateEndpoint][google.cloud.servicedirectory.v1.RegistrationService.CreateEndpoint].
|
||||
message CreateEndpointRequest {
|
||||
// Required. The resource name of the service that this endpoint provides.
|
||||
string parent = 1 [
|
||||
(google.api.field_behavior) = REQUIRED,
|
||||
(google.api.resource_reference) = {
|
||||
type: "servicedirectory.googleapis.com/Service"
|
||||
}
|
||||
];
|
||||
|
||||
// Required. The Resource ID must be 1-63 characters long, and comply with
|
||||
// <a href="https://www.ietf.org/rfc/rfc1035.txt" target="_blank">RFC1035</a>.
|
||||
// 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.
|
||||
string endpoint_id = 2 [(google.api.field_behavior) = REQUIRED];
|
||||
|
||||
// Required. A endpoint with initial fields set.
|
||||
Endpoint endpoint = 3 [(google.api.field_behavior) = REQUIRED];
|
||||
}
|
||||
|
||||
// The request message for
|
||||
// [RegistrationService.ListEndpoints][google.cloud.servicedirectory.v1.RegistrationService.ListEndpoints].
|
||||
message ListEndpointsRequest {
|
||||
// Required. The resource name of the service whose endpoints we'd like to
|
||||
// list.
|
||||
string parent = 1 [
|
||||
(google.api.field_behavior) = REQUIRED,
|
||||
(google.api.resource_reference) = {
|
||||
type: "servicedirectory.googleapis.com/Service"
|
||||
}
|
||||
];
|
||||
|
||||
// Optional. The maximum number of items to return.
|
||||
int32 page_size = 2 [(google.api.field_behavior) = OPTIONAL];
|
||||
|
||||
// Optional. The next_page_token value returned from a previous List request,
|
||||
// if any.
|
||||
string page_token = 3 [(google.api.field_behavior) = OPTIONAL];
|
||||
|
||||
// Optional. The filter to list result by.
|
||||
//
|
||||
// General filter string syntax:
|
||||
// <field> <operator> <value> (<logical connector>)
|
||||
// <field> can be "name", "address", "port" or "metadata.<key>" for map field.
|
||||
// <operator> can be "<, >, <=, >=, !=, =, :". Of which ":" means HAS, and
|
||||
// is roughly the same as "=".
|
||||
// <value> must be the same data type as field.
|
||||
// <logical connector> can be "AND, OR, NOT".
|
||||
//
|
||||
// Examples of valid filters:
|
||||
// * "metadata.owner" returns Endpoints that have a label with the key "owner"
|
||||
// this is the same as "metadata:owner".
|
||||
// * "metadata.protocol=gRPC" returns Endpoints that have key/value
|
||||
// "protocol=gRPC".
|
||||
// * "address=192.108.1.105" returns Endpoints that have this address.
|
||||
// * "port>8080" returns Endpoints that have port number larger than 8080.
|
||||
// * "name>projects/my-project/locations/us-east/namespaces/my-namespace/services/my-service/endpoints/endpoint-c"
|
||||
// returns Endpoints that have name that is alphabetically later than the
|
||||
// string, so "endpoint-e" will be returned but "endpoint-a" will not be.
|
||||
// * "metadata.owner!=sd AND metadata.foo=bar" returns Endpoints that have
|
||||
// "owner" in label key but value is not "sd" AND have key/value foo=bar.
|
||||
// * "doesnotexist.foo=bar" returns an empty list. Note that Endpoint doesn't
|
||||
// have a field called "doesnotexist". Since the filter does not match any
|
||||
// Endpoints, it returns no results.
|
||||
string filter = 4 [(google.api.field_behavior) = OPTIONAL];
|
||||
|
||||
// Optional. The order to list result by.
|
||||
string order_by = 5 [(google.api.field_behavior) = OPTIONAL];
|
||||
}
|
||||
|
||||
// The response message for
|
||||
// [RegistrationService.ListEndpoints][google.cloud.servicedirectory.v1.RegistrationService.ListEndpoints].
|
||||
message ListEndpointsResponse {
|
||||
// The list of endpoints.
|
||||
repeated Endpoint endpoints = 1;
|
||||
|
||||
// Token to retrieve the next page of results, or empty if there are no
|
||||
// more results in the list.
|
||||
string next_page_token = 2;
|
||||
}
|
||||
|
||||
// The request message for
|
||||
// [RegistrationService.GetEndpoint][google.cloud.servicedirectory.v1.RegistrationService.GetEndpoint].
|
||||
// This should not be used to lookup endpoints at runtime. Instead, use
|
||||
// the `resolve` method.
|
||||
message GetEndpointRequest {
|
||||
// Required. The name of the endpoint to get.
|
||||
string name = 1 [
|
||||
(google.api.field_behavior) = REQUIRED,
|
||||
(google.api.resource_reference) = {
|
||||
type: "servicedirectory.googleapis.com/Endpoint"
|
||||
}
|
||||
];
|
||||
}
|
||||
|
||||
// The request message for
|
||||
// [RegistrationService.UpdateEndpoint][google.cloud.servicedirectory.v1.RegistrationService.UpdateEndpoint].
|
||||
message UpdateEndpointRequest {
|
||||
// Required. The updated endpoint.
|
||||
Endpoint endpoint = 1 [(google.api.field_behavior) = REQUIRED];
|
||||
|
||||
// Required. List of fields to be updated in this request.
|
||||
google.protobuf.FieldMask update_mask = 2
|
||||
[(google.api.field_behavior) = REQUIRED];
|
||||
}
|
||||
|
||||
// The request message for
|
||||
// [RegistrationService.DeleteEndpoint][google.cloud.servicedirectory.v1.RegistrationService.DeleteEndpoint].
|
||||
message DeleteEndpointRequest {
|
||||
// Required. The name of the endpoint to delete.
|
||||
string name = 1 [
|
||||
(google.api.field_behavior) = REQUIRED,
|
||||
(google.api.resource_reference) = {
|
||||
type: "servicedirectory.googleapis.com/Endpoint"
|
||||
}
|
||||
];
|
||||
}
|
||||
|
|
@ -1,57 +0,0 @@
|
|||
// Copyright 2020 Google LLC
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||
// you may not use this file except in compliance with the License.
|
||||
// You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing, software
|
||||
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
// See the License for the specific language governing permissions and
|
||||
// limitations under the License.
|
||||
|
||||
syntax = "proto3";
|
||||
|
||||
package google.cloud.servicedirectory.v1;
|
||||
|
||||
import "google/api/annotations.proto";
|
||||
import "google/api/field_behavior.proto";
|
||||
import "google/api/resource.proto";
|
||||
import "google/cloud/servicedirectory/v1/endpoint.proto";
|
||||
|
||||
option cc_enable_arenas = true;
|
||||
option csharp_namespace = "Google.Cloud.ServiceDirectory.V1";
|
||||
option go_package = "google.golang.org/genproto/googleapis/cloud/servicedirectory/v1;servicedirectory";
|
||||
option java_multiple_files = true;
|
||||
option java_outer_classname = "ServiceProto";
|
||||
option java_package = "com.google.cloud.servicedirectory.v1";
|
||||
option php_namespace = "Google\\Cloud\\ServiceDirectory\\V1";
|
||||
option ruby_package = "Google::Cloud::ServiceDirectory::V1";
|
||||
|
||||
// An individual service. A service contains a name and optional metadata.
|
||||
// A service must exist before
|
||||
// [endpoints][google.cloud.servicedirectory.v1.Endpoint] can be
|
||||
// added to it.
|
||||
message Service {
|
||||
option (google.api.resource) = {
|
||||
type: "servicedirectory.googleapis.com/Service"
|
||||
pattern: "projects/{project}/locations/{location}/namespaces/{namespace}/services/{service}"
|
||||
};
|
||||
|
||||
// Immutable. The resource name for the service in the format
|
||||
// 'projects/*/locations/*/namespaces/*/services/*'.
|
||||
string name = 1 [(google.api.field_behavior) = IMMUTABLE];
|
||||
|
||||
// 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.
|
||||
map<string, string> metadata = 2 [(google.api.field_behavior) = OPTIONAL];
|
||||
|
||||
// Output only. Endpoints associated with this service. Returned on
|
||||
// LookupService.Resolve. Control plane clients should use
|
||||
// RegistrationService.ListEndpoints.
|
||||
repeated Endpoint endpoints = 3 [(google.api.field_behavior) = OUTPUT_ONLY];
|
||||
}
|
||||
|
|
@ -1,18 +0,0 @@
|
|||
type: com.google.api.codegen.ConfigProto
|
||||
config_schema_version: 2.0.0
|
||||
language_settings:
|
||||
java:
|
||||
package_name: com.google.cloud.servicedirectory.v1
|
||||
python:
|
||||
package_name: google.cloud.servicedirectory_v1.gapic
|
||||
go:
|
||||
package_name: cloud.google.com/go/servicedirectory/apiv1
|
||||
csharp:
|
||||
package_name: Google.Cloud.ServiceDirectory.V1
|
||||
ruby:
|
||||
package_name: Google::Cloud::ServiceDirectory::V1
|
||||
php:
|
||||
package_name: Google\Cloud\ServiceDirectory\V1
|
||||
nodejs:
|
||||
package_name: servicedirectory.v1
|
||||
domain_layer_location: google-cloud
|
||||
|
|
@ -1,26 +0,0 @@
|
|||
{
|
||||
"methodConfig": [
|
||||
{
|
||||
"name": [{ "service": "google.cloud.servicedirectory.v1.RegistrationService" }],
|
||||
"timeout": "15s",
|
||||
"retryPolicy": {
|
||||
"maxAttempts": 5,
|
||||
"initialBackoff": "1s",
|
||||
"maxBackoff": "60s",
|
||||
"backoffMultiplier": 1.3,
|
||||
"retryableStatusCodes": ["UNAVAILABLE", "UNKNOWN"]
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": [{ "service": "google.cloud.servicedirectory.v1.LookupService" }],
|
||||
"timeout": "15s",
|
||||
"retryPolicy": {
|
||||
"maxAttempts": 5,
|
||||
"initialBackoff": "1s",
|
||||
"maxBackoff": "60s",
|
||||
"backoffMultiplier": 1.3,
|
||||
"retryableStatusCodes": ["UNAVAILABLE", "UNKNOWN"]
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
|
|
@ -1,24 +0,0 @@
|
|||
type: google.api.Service
|
||||
config_version: 3
|
||||
name: servicedirectory.googleapis.com
|
||||
title: Service Directory API
|
||||
|
||||
apis:
|
||||
- name: google.cloud.servicedirectory.v1.LookupService
|
||||
- name: google.cloud.servicedirectory.v1.RegistrationService
|
||||
|
||||
documentation:
|
||||
summary: |-
|
||||
Service Directory is a platform for discovering, publishing, and connecting
|
||||
services.
|
||||
|
||||
authentication:
|
||||
rules:
|
||||
- selector: google.cloud.servicedirectory.v1.LookupService.ResolveService
|
||||
oauth:
|
||||
canonical_scopes: |-
|
||||
https://www.googleapis.com/auth/cloud-platform
|
||||
- selector: 'google.cloud.servicedirectory.v1.RegistrationService.*'
|
||||
oauth:
|
||||
canonical_scopes: |-
|
||||
https://www.googleapis.com/auth/cloud-platform
|
||||
Loading…
Reference in New Issue