Enable client generation for v1 ManagedIdentities API.

PiperOrigin-RevId: 293515675
This commit is contained in:
Google APIs 2020-02-05 21:13:58 -08:00 committed by Copybara-Service
parent 2c17086b77
commit 45d2a569ab
4 changed files with 125 additions and 290 deletions

View File

@ -18,12 +18,13 @@ syntax = "proto3";
package google.cloud.managedidentities.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/managedidentities/v1/resource.proto";
import "google/longrunning/operations.proto";
import "google/protobuf/field_mask.proto";
import "google/protobuf/timestamp.proto";
import "google/api/client.proto";
option csharp_namespace = "Google.Cloud.ManagedIdentities.V1";
option go_package = "google.golang.org/genproto/googleapis/cloud/managedidentities/v1;managedidentities";
@ -75,6 +76,7 @@ service ManagedIdentitiesService {
post: "/v1/{parent=projects/*/locations/global}/domains"
body: "domain"
};
option (google.api.method_signature) = "parent,domain_name,domain";
option (google.longrunning.operation_info) = {
response_type: "Domain"
metadata_type: "OpMetadata"
@ -87,6 +89,7 @@ service ManagedIdentitiesService {
post: "/v1/{name=projects/*/locations/global/domains/*}:resetAdminPassword"
body: "*"
};
option (google.api.method_signature) = "name";
}
// Lists domains in a project.
@ -94,6 +97,7 @@ service ManagedIdentitiesService {
option (google.api.http) = {
get: "/v1/{parent=projects/*/locations/global}/domains"
};
option (google.api.method_signature) = "parent";
}
// Gets information about a domain.
@ -101,6 +105,7 @@ service ManagedIdentitiesService {
option (google.api.http) = {
get: "/v1/{name=projects/*/locations/global/domains/*}"
};
option (google.api.method_signature) = "name";
}
// Updates the metadata and configuration of a domain.
@ -109,6 +114,7 @@ service ManagedIdentitiesService {
patch: "/v1/{domain.name=projects/*/locations/global/domains/*}"
body: "domain"
};
option (google.api.method_signature) = "domain,update_mask";
option (google.longrunning.operation_info) = {
response_type: "Domain"
metadata_type: "OpMetadata"
@ -120,6 +126,7 @@ service ManagedIdentitiesService {
option (google.api.http) = {
delete: "/v1/{name=projects/*/locations/global/domains/*}"
};
option (google.api.method_signature) = "name";
option (google.longrunning.operation_info) = {
response_type: "google.protobuf.Empty"
metadata_type: "OpMetadata"
@ -132,6 +139,7 @@ service ManagedIdentitiesService {
post: "/v1/{name=projects/*/locations/global/domains/*}:attachTrust"
body: "*"
};
option (google.api.method_signature) = "name,trust";
option (google.longrunning.operation_info) = {
response_type: "Domain"
metadata_type: "OpMetadata"
@ -144,6 +152,7 @@ service ManagedIdentitiesService {
post: "/v1/{name=projects/*/locations/global/domains/*}:reconfigureTrust"
body: "*"
};
option (google.api.method_signature) = "name,target_domain_name,target_dns_ip_addresses";
option (google.longrunning.operation_info) = {
response_type: "Domain"
metadata_type: "OpMetadata"
@ -156,6 +165,7 @@ service ManagedIdentitiesService {
post: "/v1/{name=projects/*/locations/global/domains/*}:detachTrust"
body: "*"
};
option (google.api.method_signature) = "name,trust";
option (google.longrunning.operation_info) = {
response_type: "Domain"
metadata_type: "OpMetadata"
@ -169,6 +179,7 @@ service ManagedIdentitiesService {
post: "/v1/{name=projects/*/locations/global/domains/*}:validateTrust"
body: "*"
};
option (google.api.method_signature) = "name,trust";
option (google.longrunning.operation_info) = {
response_type: "Domain"
metadata_type: "OpMetadata"
@ -205,7 +216,12 @@ message OpMetadata {
message CreateMicrosoftAdDomainRequest {
// Required. The resource project name and location using the form:
// `projects/{project_id}/locations/global`
string parent = 1 [(google.api.field_behavior) = REQUIRED];
string parent = 1 [
(google.api.field_behavior) = REQUIRED,
(google.api.resource_reference) = {
child_type: "managedidentities.googleapis.com/Domain"
}
];
// Required. The fully qualified domain name.
// e.g. mydomain.myorganization.com, with the following restrictions:
@ -230,7 +246,12 @@ message CreateMicrosoftAdDomainRequest {
message ResetAdminPasswordRequest {
// Required. The domain resource name using the form:
// `projects/{project_id}/locations/global/domains/{domain_name}`
string name = 1 [(google.api.field_behavior) = REQUIRED];
string name = 1 [
(google.api.field_behavior) = REQUIRED,
(google.api.resource_reference) = {
type: "managedidentities.googleapis.com/Domain"
}
];
}
// Response message for
@ -245,7 +266,12 @@ message ResetAdminPasswordResponse {
message ListDomainsRequest {
// Required. The resource name of the domain location using the form:
// `projects/{project_id}/locations/global`
string parent = 1 [(google.api.field_behavior) = REQUIRED];
string parent = 1 [
(google.api.field_behavior) = REQUIRED,
(google.api.resource_reference) = {
child_type: "managedidentities.googleapis.com/Domain"
}
];
// Optional. The maximum number of items to return.
// If not specified, a default value of 1000 will be used.
@ -288,7 +314,12 @@ message ListDomainsResponse {
message GetDomainRequest {
// Required. The domain resource name using the form:
// `projects/{project_id}/locations/global/domains/{domain_name}`
string name = 1 [(google.api.field_behavior) = REQUIRED];
string name = 1 [
(google.api.field_behavior) = REQUIRED,
(google.api.resource_reference) = {
type: "managedidentities.googleapis.com/Domain"
}
];
}
// Request message for
@ -312,7 +343,12 @@ message UpdateDomainRequest {
message DeleteDomainRequest {
// Required. The domain resource name using the form:
// `projects/{project_id}/locations/global/domains/{domain_name}`
string name = 1 [(google.api.field_behavior) = REQUIRED];
string name = 1 [
(google.api.field_behavior) = REQUIRED,
(google.api.resource_reference) = {
type: "managedidentities.googleapis.com/Domain"
}
];
}
// Request message for
@ -320,7 +356,12 @@ message DeleteDomainRequest {
message AttachTrustRequest {
// Required. The resource domain name, project name and location using the form:
// `projects/{project_id}/locations/global/domains/{domain_name}`
string name = 1 [(google.api.field_behavior) = REQUIRED];
string name = 1 [
(google.api.field_behavior) = REQUIRED,
(google.api.resource_reference) = {
type: "managedidentities.googleapis.com/Domain"
}
];
// Required. The domain trust resource.
Trust trust = 2 [(google.api.field_behavior) = REQUIRED];
@ -331,7 +372,12 @@ message AttachTrustRequest {
message ReconfigureTrustRequest {
// Required. The resource domain name, project name and location using the form:
// `projects/{project_id}/locations/global/domains/{domain_name}`
string name = 1 [(google.api.field_behavior) = REQUIRED];
string name = 1 [
(google.api.field_behavior) = REQUIRED,
(google.api.resource_reference) = {
type: "managedidentities.googleapis.com/Domain"
}
];
// Required. The fully-qualified target domain name which will be in trust with current
// domain.
@ -347,7 +393,12 @@ message ReconfigureTrustRequest {
message DetachTrustRequest {
// Required. The resource domain name, project name, and location using the form:
// `projects/{project_id}/locations/global/domains/{domain_name}`
string name = 1 [(google.api.field_behavior) = REQUIRED];
string name = 1 [
(google.api.field_behavior) = REQUIRED,
(google.api.resource_reference) = {
type: "managedidentities.googleapis.com/Domain"
}
];
// Required. The domain trust resource to removed.
Trust trust = 2 [(google.api.field_behavior) = REQUIRED];
@ -358,7 +409,12 @@ message DetachTrustRequest {
message ValidateTrustRequest {
// Required. The resource domain name, project name, and location using the form:
// `projects/{project_id}/locations/global/domains/{domain_name}`
string name = 1 [(google.api.field_behavior) = REQUIRED];
string name = 1 [
(google.api.field_behavior) = REQUIRED,
(google.api.resource_reference) = {
type: "managedidentities.googleapis.com/Domain"
}
];
// Required. The domain trust to validate trust state for.
Trust trust = 2 [(google.api.field_behavior) = REQUIRED];

View File

@ -1,5 +1,5 @@
type: com.google.api.codegen.ConfigProto
config_schema_version: 1.0.0
config_schema_version: 2.0.0
# The settings of generated code in a specific language.
language_settings:
java:
@ -9,286 +9,10 @@ language_settings:
go:
package_name: cloud.google.com/go/managedidentities/apiv1
csharp:
package_name: Google.Cloud.Managedidentities.V1
package_name: Google.Cloud.ManagedIdentities.V1
ruby:
package_name: Google::Cloud::Managedidentities::V1
package_name: Google::Cloud::ManagedIdentities::V1
php:
package_name: Google\Cloud\Managedidentities\V1
package_name: Google\Cloud\ManagedIdentities\V1
nodejs:
package_name: managedidentities.v1
# A list of API interface configurations.
interfaces:
# The fully qualified name of the API interface.
- name: google.cloud.managedidentities.v1.ManagedIdentitiesService
# A list of resource collection configurations.
# Consists of a name_pattern and an entity_name.
# The name_pattern is a pattern to describe the names of the resources of this
# collection, using the platform's conventions for URI patterns. A generator
# may use this to generate methods to compose and decompose such names. The
# pattern should use named placeholders as in `shelves/{shelf}/books/{book}`;
# those will be taken as hints for the parameter names of the generated
# methods. If empty, no name methods are generated.
# The entity_name is the name to be used as a basis for generated methods and
# classes.
collections:
- name_pattern: projects/{project}/locations/global
entity_name: project_locations
- name_pattern: projects/{project}/locations/global/domains/{domain}
entity_name: domain
# Definition for retryable codes.
retry_codes_def:
- name: idempotent
retry_codes:
- DEADLINE_EXCEEDED
- UNAVAILABLE
- name: non_idempotent
retry_codes: []
# Definition for retry/backoff parameters.
retry_params_def:
- name: default
initial_retry_delay_millis: 100
retry_delay_multiplier: 1.3
max_retry_delay_millis: 60000
initial_rpc_timeout_millis: 20000
rpc_timeout_multiplier: 1
max_rpc_timeout_millis: 20000
total_timeout_millis: 600000
# A list of method configurations.
# Common properties:
#
# name - The simple name of the method.
#
# flattening - Specifies the configuration for parameter flattening.
# Describes the parameter groups for which a generator should produce method
# overloads which allow a client to directly pass request message fields as
# method parameters. This information may or may not be used, depending on
# the target language.
# Consists of groups, which each represent a list of parameters to be
# flattened. Each parameter listed must be a field of the request message.
#
# required_fields - Fields that are always required for a request to be
# valid.
#
# page_streaming - Specifies the configuration for paging.
# Describes information for generating a method which transforms a paging
# list RPC into a stream of resources.
# Consists of a request and a response.
# The request specifies request information of the list method. It defines
# which fields match the paging pattern in the request. The request consists
# of a page_size_field and a token_field. The page_size_field is the name of
# the optional field specifying the maximum number of elements to be
# returned in the response. The token_field is the name of the field in the
# request containing the page token.
# The response specifies response information of the list method. It defines
# which fields match the paging pattern in the response. The response
# consists of a token_field and a resources_field. The token_field is the
# name of the field in the response containing the next page token. The
# resources_field is the name of the field in the response containing the
# list of resources belonging to the page.
#
# retry_codes_name - Specifies the configuration for retryable codes. The
# name must be defined in interfaces.retry_codes_def.
#
# retry_params_name - Specifies the configuration for retry/backoff
# parameters. The name must be defined in interfaces.retry_params_def.
#
# field_name_patterns - Maps the field name of the request type to
# entity_name of interfaces.collections.
# Specifies the string pattern that the field must follow.
#
# timeout_millis - Specifies the default timeout for a non-retrying call. If
# the call is retrying, refer to retry_params_name instead.
methods:
- name: CreateMicrosoftAdDomain
flattening:
groups:
- parameters:
- parent
- domain_name
- domain
required_fields:
- parent
- domain_name
- domain
retry_codes_name: non_idempotent
retry_params_name: default
field_name_patterns:
parent: project_locations
long_running:
return_type: google.cloud.managedidentities.v1.Domain
metadata_type: google.cloud.managedidentities.v1.OpMetadata
initial_poll_delay_millis: 60000
poll_delay_multiplier: 1.5
max_poll_delay_millis: 360000
total_poll_timeout_millis: 54000000
timeout_millis: 60000
- name: ResetAdminPassword
flattening:
groups:
- parameters:
- name
required_fields:
- name
retry_codes_name: non_idempotent
retry_params_name: default
field_name_patterns:
name: domain
timeout_millis: 60000
- name: ListDomains
flattening:
groups:
- parameters:
- parent
- filter
- order_by
required_fields:
- parent
page_streaming:
request:
page_size_field: page_size
token_field: page_token
response:
token_field: next_page_token
resources_field: domains
retry_codes_name: idempotent
retry_params_name: default
field_name_patterns:
parent: project_locations
timeout_millis: 60000
- name: GetDomain
flattening:
groups:
- parameters:
- name
required_fields:
- name
retry_codes_name: idempotent
retry_params_name: default
field_name_patterns:
name: domain
timeout_millis: 60000
- name: UpdateDomain
flattening:
groups:
- parameters:
- domain
- update_mask
required_fields:
- domain
retry_codes_name: non_idempotent
retry_params_name: default
field_name_patterns:
domain.name: domain
long_running:
return_type: google.cloud.managedidentities.v1.Domain
metadata_type: google.cloud.managedidentities.v1.OpMetadata
initial_poll_delay_millis: 60000
poll_delay_multiplier: 1.5
max_poll_delay_millis: 360000
total_poll_timeout_millis: 54000000
timeout_millis: 60000
- name: DeleteDomain
flattening:
groups:
- parameters:
- name
required_fields:
- name
retry_codes_name: idempotent
retry_params_name: default
field_name_patterns:
name: domain
long_running:
return_type: google.protobuf.Empty
metadata_type: google.cloud.managedidentities.v1.OpMetadata
initial_poll_delay_millis: 10000
poll_delay_multiplier: 1.5
max_poll_delay_millis: 60000
total_poll_timeout_millis: 900000
timeout_millis: 60000
- name: AttachTrust
flattening:
groups:
- parameters:
- name
- trust
required_fields:
- name
- trust
retry_codes_name: non_idempotent
retry_params_name: default
field_name_patterns:
name: domain
long_running:
return_type: google.cloud.managedidentities.v1.Domain
metadata_type: google.cloud.managedidentities.v1.OpMetadata
initial_poll_delay_millis: 10000
poll_delay_multiplier: 1.5
max_poll_delay_millis: 60000
total_poll_timeout_millis: 600000
timeout_millis: 60000
- name: ReconfigureTrust
flattening:
groups:
- parameters:
- name
- target_domain_name
- target_dns_ip_addresses
required_fields:
- name
- target_domain_name
- target_dns_ip_addresses
retry_codes_name: non_idempotent
retry_params_name: default
field_name_patterns:
name: domain
long_running:
return_type: google.cloud.managedidentities.v1.Domain
metadata_type: google.cloud.managedidentities.v1.OpMetadata
initial_poll_delay_millis: 10000
poll_delay_multiplier: 1.5
max_poll_delay_millis: 60000
total_poll_timeout_millis: 600000
timeout_millis: 60000
- name: DetachTrust
flattening:
groups:
- parameters:
- name
- trust
required_fields:
- name
- trust
retry_codes_name: non_idempotent
retry_params_name: default
field_name_patterns:
name: domain
long_running:
return_type: google.cloud.managedidentities.v1.Domain
metadata_type: google.cloud.managedidentities.v1.OpMetadata
initial_poll_delay_millis: 10000
poll_delay_multiplier: 1.5
max_poll_delay_millis: 60000
total_poll_timeout_millis: 600000
timeout_millis: 60000
- name: ValidateTrust
flattening:
groups:
- parameters:
- name
- trust
required_fields:
- name
- trust
retry_codes_name: non_idempotent
retry_params_name: default
field_name_patterns:
name: domain
long_running:
return_type: google.cloud.managedidentities.v1.Domain
metadata_type: google.cloud.managedidentities.v1.OpMetadata
initial_poll_delay_millis: 10000
poll_delay_multiplier: 1.5
max_poll_delay_millis: 60000
total_poll_timeout_millis: 600000
timeout_millis: 60000

View File

@ -0,0 +1,49 @@
{
"methodConfig": [
{
"name": [
{
"service": "google.cloud.managedidentities.v1.ManagedIdentitiesService",
"method": "CreateMicrosoftAdDomain"
},
{
"service": "google.cloud.managedidentities.v1.ManagedIdentitiesService",
"method": "ResetAdminPassword"
},
{
"service": "google.cloud.managedidentities.v1.ManagedIdentitiesService",
"method": "ListDomains"
},
{
"service": "google.cloud.managedidentities.v1.ManagedIdentitiesService",
"method": "GetDomain"
},
{
"service": "google.cloud.managedidentities.v1.ManagedIdentitiesService",
"method": "UpdateDomain"
},
{
"service": "google.cloud.managedidentities.v1.ManagedIdentitiesService",
"method": "DeleteDomain"
},
{
"service": "google.cloud.managedidentities.v1.ManagedIdentitiesService",
"method": "AttachTrust"
},
{
"service": "google.cloud.managedidentities.v1.ManagedIdentitiesService",
"method": "ReconfigureTrust"
},
{
"service": "google.cloud.managedidentities.v1.ManagedIdentitiesService",
"method": "DetachTrust"
},
{
"service": "google.cloud.managedidentities.v1.ManagedIdentitiesService",
"method": "ValidateTrust"
}
],
"timeout": "60s"
}
]
}

View File

@ -18,6 +18,7 @@ syntax = "proto3";
package google.cloud.managedidentities.v1;
import "google/api/field_behavior.proto";
import "google/api/resource.proto";
import "google/protobuf/timestamp.proto";
import "google/api/annotations.proto";
@ -29,6 +30,11 @@ option java_package = "com.google.cloud.managedidentities.v1";
// Represents a managed Microsoft Active Directory domain.
message Domain {
option (google.api.resource) = {
type: "managedidentities.googleapis.com/Domain"
pattern: "projects/{project}/locations/{location}/domains/{domain}"
};
// Represents the different states of a managed domain.
enum State {
// Not set.