chore: turn on gapic v2 for Dataproc API.

fix:
- add missing method signatures
- remove resource_reference not on a string field
- adjust resource name pattern orders

PiperOrigin-RevId: 303431167
This commit is contained in:
Google APIs 2020-03-27 16:35:33 -07:00 committed by Copybara-Service
parent 8eb444cf5f
commit 558b800ed5
7 changed files with 995 additions and 1435 deletions

View File

@ -17,11 +17,11 @@ syntax = "proto3";
package google.cloud.dataproc.v1;
import "google/api/annotations.proto";
import "google/api/client.proto";
import "google/api/field_behavior.proto";
import "google/api/resource.proto";
import "google/protobuf/duration.proto";
import "google/protobuf/empty.proto";
import "google/api/client.proto";
option go_package = "google.golang.org/genproto/googleapis/cloud/dataproc/v1;dataproc";
option java_multiple_files = true;
@ -36,10 +36,12 @@ option (google.api.resource_definition) = {
// Dataproc API.
service AutoscalingPolicyService {
option (google.api.default_host) = "dataproc.googleapis.com";
option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/cloud-platform";
option (google.api.oauth_scopes) =
"https://www.googleapis.com/auth/cloud-platform";
// Creates new autoscaling policy.
rpc CreateAutoscalingPolicy(CreateAutoscalingPolicyRequest) returns (AutoscalingPolicy) {
rpc CreateAutoscalingPolicy(CreateAutoscalingPolicyRequest)
returns (AutoscalingPolicy) {
option (google.api.http) = {
post: "/v1/{parent=projects/*/locations/*}/autoscalingPolicies"
body: "policy"
@ -48,13 +50,15 @@ service AutoscalingPolicyService {
body: "policy"
}
};
option (google.api.method_signature) = "parent,policy";
}
// Updates (replaces) autoscaling policy.
//
// Disabled check for update_mask, because all updates will be full
// replacements.
rpc UpdateAutoscalingPolicy(UpdateAutoscalingPolicyRequest) returns (AutoscalingPolicy) {
rpc UpdateAutoscalingPolicy(UpdateAutoscalingPolicyRequest)
returns (AutoscalingPolicy) {
option (google.api.http) = {
put: "/v1/{policy.name=projects/*/locations/*/autoscalingPolicies/*}"
body: "policy"
@ -63,37 +67,44 @@ service AutoscalingPolicyService {
body: "policy"
}
};
option (google.api.method_signature) = "policy";
}
// Retrieves autoscaling policy.
rpc GetAutoscalingPolicy(GetAutoscalingPolicyRequest) returns (AutoscalingPolicy) {
rpc GetAutoscalingPolicy(GetAutoscalingPolicyRequest)
returns (AutoscalingPolicy) {
option (google.api.http) = {
get: "/v1/{name=projects/*/locations/*/autoscalingPolicies/*}"
additional_bindings {
get: "/v1/{name=projects/*/regions/*/autoscalingPolicies/*}"
}
};
option (google.api.method_signature) = "name";
}
// Lists autoscaling policies in the project.
rpc ListAutoscalingPolicies(ListAutoscalingPoliciesRequest) returns (ListAutoscalingPoliciesResponse) {
rpc ListAutoscalingPolicies(ListAutoscalingPoliciesRequest)
returns (ListAutoscalingPoliciesResponse) {
option (google.api.http) = {
get: "/v1/{parent=projects/*/locations/*}/autoscalingPolicies"
additional_bindings {
get: "/v1/{parent=projects/*/regions/*}/autoscalingPolicies"
}
};
option (google.api.method_signature) = "parent";
}
// Deletes an autoscaling policy. It is an error to delete an autoscaling
// policy that is in use by one or more clusters.
rpc DeleteAutoscalingPolicy(DeleteAutoscalingPolicyRequest) returns (google.protobuf.Empty) {
rpc DeleteAutoscalingPolicy(DeleteAutoscalingPolicyRequest)
returns (google.protobuf.Empty) {
option (google.api.http) = {
delete: "/v1/{name=projects/*/locations/*/autoscalingPolicies/*}"
additional_bindings {
delete: "/v1/{name=projects/*/regions/*/autoscalingPolicies/*}"
}
};
option (google.api.method_signature) = "name";
}
}
@ -127,26 +138,31 @@ message AutoscalingPolicy {
// Autoscaling algorithm for policy.
oneof algorithm {
BasicAutoscalingAlgorithm basic_algorithm = 3 [(google.api.field_behavior) = REQUIRED];
BasicAutoscalingAlgorithm basic_algorithm = 3
[(google.api.field_behavior) = REQUIRED];
}
// Required. Describes how the autoscaler will operate for primary workers.
InstanceGroupAutoscalingPolicyConfig worker_config = 4 [(google.api.field_behavior) = REQUIRED];
InstanceGroupAutoscalingPolicyConfig worker_config = 4
[(google.api.field_behavior) = REQUIRED];
// Optional. Describes how the autoscaler will operate for secondary workers.
InstanceGroupAutoscalingPolicyConfig secondary_worker_config = 5 [(google.api.field_behavior) = OPTIONAL];
InstanceGroupAutoscalingPolicyConfig secondary_worker_config = 5
[(google.api.field_behavior) = OPTIONAL];
}
// Basic algorithm for autoscaling.
message BasicAutoscalingAlgorithm {
// Required. YARN autoscaling configuration.
BasicYarnAutoscalingConfig yarn_config = 1 [(google.api.field_behavior) = REQUIRED];
BasicYarnAutoscalingConfig yarn_config = 1
[(google.api.field_behavior) = REQUIRED];
// Optional. Duration between scaling events. A scaling period starts after
// the update operation from the previous event has completed.
//
// Bounds: [2m, 1d]. Default: 2m.
google.protobuf.Duration cooldown_period = 2 [(google.api.field_behavior) = OPTIONAL];
google.protobuf.Duration cooldown_period = 2
[(google.api.field_behavior) = OPTIONAL];
}
// Basic autoscaling configurations for YARN.
@ -157,7 +173,8 @@ message BasicYarnAutoscalingConfig {
// downscaling operations.
//
// Bounds: [0s, 1d].
google.protobuf.Duration graceful_decommission_timeout = 5 [(google.api.field_behavior) = REQUIRED];
google.protobuf.Duration graceful_decommission_timeout = 5
[(google.api.field_behavior) = REQUIRED];
// Required. Fraction of average pending memory in the last cooldown period
// for which to add workers. A scale-up factor of 1.0 will result in scaling
@ -184,7 +201,8 @@ message BasicYarnAutoscalingConfig {
// on any recommended change.
//
// Bounds: [0.0, 1.0]. Default: 0.0.
double scale_up_min_worker_fraction = 3 [(google.api.field_behavior) = OPTIONAL];
double scale_up_min_worker_fraction = 3
[(google.api.field_behavior) = OPTIONAL];
// Optional. Minimum scale-down threshold as a fraction of total cluster size
// before scaling occurs. For example, in a 20-worker cluster, a threshold of
@ -193,7 +211,8 @@ message BasicYarnAutoscalingConfig {
// on any recommended change.
//
// Bounds: [0.0, 1.0]. Default: 0.0.
double scale_down_min_worker_fraction = 4 [(google.api.field_behavior) = OPTIONAL];
double scale_down_min_worker_fraction = 4
[(google.api.field_behavior) = OPTIONAL];
}
// Configuration for the size bounds of an instance group, including its
@ -336,7 +355,8 @@ message ListAutoscalingPoliciesRequest {
// A response to a request to list autoscaling policies in a project.
message ListAutoscalingPoliciesResponse {
// Output only. Autoscaling policies list.
repeated AutoscalingPolicy policies = 1 [(google.api.field_behavior) = OUTPUT_ONLY];
repeated AutoscalingPolicy policies = 1
[(google.api.field_behavior) = OUTPUT_ONLY];
// Output only. This token is included in the response if there are more
// results to fetch.

View File

@ -0,0 +1,778 @@
type: com.google.api.codegen.ConfigProto
config_schema_version: 1.0.0
# The settings of generated code in a specific language.
language_settings:
java:
package_name: com.google.cloud.dataproc.v1
python:
package_name: google.cloud.dataproc_v1.gapic
go:
package_name: cloud.google.com/go/dataproc/apiv1
csharp:
package_name: Google.Cloud.Dataproc.V1
ruby:
package_name: Google::Cloud::Dataproc::V1
php:
package_name: Google\Cloud\Dataproc\V1
nodejs:
package_name: dataproc.v1
domain_layer_location: google-cloud
# A list of API interface configurations.
interfaces:
# The fully qualified name of the API interface.
- name: google.cloud.dataproc.v1.AutoscalingPolicyService
# 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}/regions/{region}
entity_name: region
- name_pattern: projects/{project}/regions/{region}/autoscalingPolicies/{autoscaling_policy}
entity_name: autoscaling_policy
# 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: CreateAutoscalingPolicy
flattening:
groups:
- parameters:
- parent
- policy
required_fields:
- parent
- policy
retry_codes_name: non_idempotent
retry_params_name: default
field_name_patterns:
parent: region
timeout_millis: 60000
- name: UpdateAutoscalingPolicy
flattening:
groups:
- parameters:
- policy
required_fields:
- policy
retry_codes_name: idempotent
retry_params_name: default
field_name_patterns:
policy.name: autoscaling_policy
timeout_millis: 60000
- name: GetAutoscalingPolicy
flattening:
groups:
- parameters:
- name
required_fields:
- name
retry_codes_name: idempotent
retry_params_name: default
field_name_patterns:
name: autoscaling_policy
timeout_millis: 60000
- name: ListAutoscalingPolicies
flattening:
groups:
- parameters:
- parent
required_fields:
- parent
page_streaming:
request:
page_size_field: page_size
token_field: page_token
response:
token_field: next_page_token
resources_field: policies
retry_codes_name: idempotent
retry_params_name: default
field_name_patterns:
parent: region
timeout_millis: 60000
- name: DeleteAutoscalingPolicy
flattening:
groups:
- parameters:
- name
required_fields:
- name
retry_codes_name: non_idempotent
retry_params_name: default
field_name_patterns:
name: autoscaling_policy
timeout_millis: 60000
- name: google.cloud.dataproc.v1.ClusterController
# 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: []
# Definition for smoke test.
smoke_test:
method: ListClusters
init_fields:
- project_id=$PROJECT_ID
- region="global"
# Definition for retryable codes.
retry_codes_def:
- name: idempotent
retry_codes:
- INTERNAL
- DEADLINE_EXCEEDED
- UNAVAILABLE
- name: non_idempotent
retry_codes:
- UNAVAILABLE
# 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: 10000
rpc_timeout_multiplier: 1
max_rpc_timeout_millis: 10000
total_timeout_millis: 300000
# 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: CreateCluster
flattening:
groups:
- parameters:
- project_id
- region
- cluster
required_fields:
- project_id
- region
- cluster
retry_codes_name: non_idempotent
retry_params_name: default
timeout_millis: 30000
long_running:
return_type: google.cloud.dataproc.v1.Cluster
metadata_type: google.cloud.dataproc.v1.ClusterOperationMetadata
implements_delete: false
implements_cancel: false
initial_poll_delay_millis: 1000
poll_delay_multiplier: 2
max_poll_delay_millis: 10000
total_poll_timeout_millis: 900000
- name: UpdateCluster
flattening:
groups:
- parameters:
- project_id
- region
- cluster_name
- cluster
- update_mask
required_fields:
- project_id
- region
- cluster_name
- cluster
- update_mask
retry_codes_name: non_idempotent
retry_params_name: default
timeout_millis: 30000
long_running:
return_type: google.cloud.dataproc.v1.Cluster
metadata_type: google.cloud.dataproc.v1.ClusterOperationMetadata
implements_delete: false
implements_cancel: false
initial_poll_delay_millis: 1000
poll_delay_multiplier: 2
max_poll_delay_millis: 10000
total_poll_timeout_millis: 900000
- name: DeleteCluster
flattening:
groups:
- parameters:
- project_id
- region
- cluster_name
required_fields:
- project_id
- region
- cluster_name
retry_codes_name: non_idempotent
retry_params_name: default
timeout_millis: 30000
long_running:
return_type: google.protobuf.Empty
metadata_type: google.cloud.dataproc.v1.ClusterOperationMetadata
implements_delete: false
implements_cancel: false
initial_poll_delay_millis: 1000
poll_delay_multiplier: 2
max_poll_delay_millis: 10000
total_poll_timeout_millis: 900000
- name: GetCluster
flattening:
groups:
- parameters:
- project_id
- region
- cluster_name
required_fields:
- project_id
- region
- cluster_name
retry_codes_name: idempotent
retry_params_name: default
timeout_millis: 60000
- name: ListClusters
flattening:
groups:
- parameters:
- project_id
- region
- parameters:
- project_id
- region
- filter
required_fields:
- project_id
- region
page_streaming:
request:
page_size_field: page_size
token_field: page_token
response:
token_field: next_page_token
resources_field: clusters
retry_codes_name: idempotent
retry_params_name: default
timeout_millis: 60000
- name: DiagnoseCluster
flattening:
groups:
- parameters:
- project_id
- region
- cluster_name
required_fields:
- project_id
- region
- cluster_name
retry_codes_name: non_idempotent
retry_params_name: default
timeout_millis: 60000
long_running:
return_type: google.protobuf.Empty
metadata_type: google.cloud.dataproc.v1.DiagnoseClusterResults
implements_delete: false
implements_cancel: false
initial_poll_delay_millis: 1000
poll_delay_multiplier: 2
max_poll_delay_millis: 10000
total_poll_timeout_millis: 30000
# The fully qualified name of the API interface.
- name: google.cloud.dataproc.v1.JobController
# 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: []
# Definition for retryable codes.
retry_codes_def:
- name: idempotent
retry_codes:
- DEADLINE_EXCEEDED
- INTERNAL
- UNAVAILABLE
- name: non_idempotent
retry_codes:
- UNAVAILABLE
# 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: 30000
rpc_timeout_multiplier: 1
max_rpc_timeout_millis: 30000
total_timeout_millis: 900000
# 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: SubmitJob
flattening:
groups:
- parameters:
- project_id
- region
- job
required_fields:
- project_id
- region
- job
retry_codes_name: non_idempotent
retry_params_name: default
timeout_millis: 30000
- name: GetJob
flattening:
groups:
- parameters:
- project_id
- region
- job_id
required_fields:
- project_id
- region
- job_id
retry_codes_name: idempotent
retry_params_name: default
timeout_millis: 30000
- name: ListJobs
flattening:
groups:
- parameters:
- project_id
- region
- parameters:
- project_id
- region
- filter
required_fields:
- project_id
- region
page_streaming:
request:
page_size_field: page_size
token_field: page_token
response:
token_field: next_page_token
resources_field: jobs
retry_codes_name: idempotent
retry_params_name: default
timeout_millis: 30000
- name: UpdateJob
required_fields:
- project_id
- region
- job_id
- job
- update_mask
retry_codes_name: non_idempotent
retry_params_name: default
timeout_millis: 30000
- name: CancelJob
flattening:
groups:
- parameters:
- project_id
- region
- job_id
required_fields:
- project_id
- region
- job_id
retry_codes_name: idempotent
retry_params_name: default
timeout_millis: 30000
- name: DeleteJob
flattening:
groups:
- parameters:
- project_id
- region
- job_id
required_fields:
- project_id
- region
- job_id
retry_codes_name: non_idempotent
retry_params_name: default
timeout_millis: 30000
# The fully qualified name of the API interface.
- name: google.cloud.dataproc.v1.WorkflowTemplateService
# 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}/regions/{region}
entity_name: region
- name_pattern: projects/{project}/regions/{region}/workflowTemplates/{workflow_template}
entity_name: workflow_template
# Definition for retryable codes.
retry_codes_def:
- name: idempotent
retry_codes:
- DEADLINE_EXCEEDED
- INTERNAL
- UNAVAILABLE
- name: non_idempotent
retry_codes:
- UNAVAILABLE
# 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: CreateWorkflowTemplate
flattening:
groups:
- parameters:
- parent
- template
required_fields:
- parent
- template
retry_codes_name: non_idempotent
retry_params_name: default
field_name_patterns:
parent: region
timeout_millis: 30000
- name: GetWorkflowTemplate
# params.
flattening:
groups:
- parameters:
- name
required_fields:
- name
retry_codes_name: idempotent
retry_params_name: default
field_name_patterns:
name: workflow_template
timeout_millis: 60000
- name: InstantiateWorkflowTemplate
flattening:
groups:
- parameters:
- name
- parameters:
- name
- parameters
required_fields:
- name
retry_codes_name: non_idempotent
retry_params_name: default
field_name_patterns:
name: workflow_template
timeout_millis: 60000
long_running:
return_type: google.protobuf.Empty
metadata_type: google.cloud.dataproc.v1.WorkflowMetadata
implements_delete: false
implements_cancel: false
initial_poll_delay_millis: 1000
poll_delay_multiplier: 2
max_poll_delay_millis: 10000
total_poll_timeout_millis: 43200000
- name: InstantiateInlineWorkflowTemplate
flattening:
groups:
- parameters:
- parent
- template
required_fields:
- parent
- template
retry_codes_name: non_idempotent
retry_params_name: default
field_name_patterns:
parent: region
timeout_millis: 60000
long_running:
return_type: google.protobuf.Empty
metadata_type: google.cloud.dataproc.v1.WorkflowMetadata
implements_delete: false
implements_cancel: false
initial_poll_delay_millis: 1000
poll_delay_multiplier: 2
max_poll_delay_millis: 10000
total_poll_timeout_millis: 43200000
- name: UpdateWorkflowTemplate
flattening:
groups:
- parameters:
- template
required_fields:
- template
retry_codes_name: non_idempotent
retry_params_name: default
field_name_patterns:
template.name: workflow_template
timeout_millis: 60000
- name: ListWorkflowTemplates
flattening:
groups:
- parameters:
- parent
required_fields:
- parent
page_streaming:
request:
page_size_field: page_size
token_field: page_token
response:
token_field: next_page_token
resources_field: templates
retry_codes_name: idempotent
retry_params_name: default
field_name_patterns:
parent: region
timeout_millis: 60000
- name: DeleteWorkflowTemplate
flattening:
groups:
- parameters:
- name
required_fields:
- name
retry_codes_name: non_idempotent
retry_params_name: default
field_name_patterns:
name: workflow_template
timeout_millis: 60000
resource_name_generation:
- message_name: WorkflowTemplate
field_entity_map:
name: workflow_template
- message_name: CreateWorkflowTemplateRequest
field_entity_map:
parent: region
- message_name: GetWorkflowTemplateRequest
field_entity_map:
name: workflow_template
- message_name: InstantiateWorkflowTemplateRequest
field_entity_map:
name: workflow_template
- message_name: InstantiateInlineWorkflowTemplateRequest
field_entity_map:
parent: region
- message_name: ListWorkflowTemplatesRequest
field_entity_map:
parent: region
- message_name: DeleteWorkflowTemplateRequest
field_entity_map:
name: workflow_template

View File

@ -1,6 +1,5 @@
type: com.google.api.codegen.ConfigProto
config_schema_version: 1.0.0
# The settings of generated code in a specific language.
config_schema_version: 2.0.0
language_settings:
java:
package_name: com.google.cloud.dataproc.v1
@ -17,177 +16,13 @@ language_settings:
nodejs:
package_name: dataproc.v1
domain_layer_location: google-cloud
# A list of API interface configurations.
interfaces:
# The fully qualified name of the API interface.
- name: google.cloud.dataproc.v1.AutoscalingPolicyService
# 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}/regions/{region}
entity_name: region
- name_pattern: projects/{project}/regions/{region}/autoscalingPolicies/{autoscaling_policy}
entity_name: autoscaling_policy
# 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: CreateAutoscalingPolicy
flattening:
groups:
- parameters:
- parent
- policy
required_fields:
- parent
- policy
retry_codes_name: non_idempotent
retry_params_name: default
field_name_patterns:
parent: region
timeout_millis: 60000
- name: UpdateAutoscalingPolicy
flattening:
groups:
- parameters:
- policy
required_fields:
- policy
retry_codes_name: idempotent
retry_params_name: default
field_name_patterns:
policy.name: autoscaling_policy
timeout_millis: 60000
- name: GetAutoscalingPolicy
flattening:
groups:
- parameters:
- name
required_fields:
- name
retry_codes_name: idempotent
retry_params_name: default
field_name_patterns:
name: autoscaling_policy
timeout_millis: 60000
- name: ListAutoscalingPolicies
flattening:
groups:
- parameters:
- parent
required_fields:
- parent
page_streaming:
request:
page_size_field: page_size
token_field: page_token
response:
token_field: next_page_token
resources_field: policies
retry_codes_name: idempotent
retry_params_name: default
field_name_patterns:
parent: region
timeout_millis: 60000
- name: DeleteAutoscalingPolicy
flattening:
groups:
- parameters:
- name
required_fields:
- name
retry_codes_name: non_idempotent
retry_params_name: default
field_name_patterns:
name: autoscaling_policy
timeout_millis: 60000
- name: google.cloud.dataproc.v1.ClusterController
# 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: []
# Definition for smoke test.
smoke_test:
method: ListClusters
init_fields:
- project_id=$PROJECT_ID
- region="global"
# Definition for retryable codes.
retry_codes_def:
- name: idempotent
retry_codes:
@ -197,209 +32,20 @@ interfaces:
- name: non_idempotent
retry_codes:
- UNAVAILABLE
# 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: 10000
rpc_timeout_multiplier: 1
max_rpc_timeout_millis: 10000
total_timeout_millis: 300000
# 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: CreateCluster
flattening:
groups:
- parameters:
- project_id
- region
- cluster
required_fields:
- project_id
- region
- cluster
retry_codes_name: non_idempotent
retry_params_name: default
timeout_millis: 30000
long_running:
return_type: google.cloud.dataproc.v1.Cluster
metadata_type: google.cloud.dataproc.v1.ClusterOperationMetadata
implements_delete: false
implements_cancel: false
initial_poll_delay_millis: 1000
poll_delay_multiplier: 2
max_poll_delay_millis: 10000
total_poll_timeout_millis: 900000
- name: UpdateCluster
flattening:
groups:
- parameters:
- project_id
- region
- cluster_name
- cluster
- update_mask
required_fields:
- project_id
- region
- cluster_name
- cluster
- update_mask
retry_codes_name: non_idempotent
retry_params_name: default
timeout_millis: 30000
long_running:
return_type: google.cloud.dataproc.v1.Cluster
metadata_type: google.cloud.dataproc.v1.ClusterOperationMetadata
implements_delete: false
implements_cancel: false
initial_poll_delay_millis: 1000
poll_delay_multiplier: 2
max_poll_delay_millis: 10000
total_poll_timeout_millis: 900000
- name: DeleteCluster
flattening:
groups:
- parameters:
- project_id
- region
- cluster_name
required_fields:
- project_id
- region
- cluster_name
retry_codes_name: non_idempotent
retry_params_name: default
timeout_millis: 30000
long_running:
return_type: google.protobuf.Empty
metadata_type: google.cloud.dataproc.v1.ClusterOperationMetadata
implements_delete: false
implements_cancel: false
initial_poll_delay_millis: 1000
poll_delay_multiplier: 2
max_poll_delay_millis: 10000
total_poll_timeout_millis: 900000
- name: GetCluster
flattening:
groups:
- parameters:
- project_id
- region
- cluster_name
required_fields:
- project_id
- region
- cluster_name
retry_codes_name: idempotent
retry_params_name: default
timeout_millis: 60000
- name: ListClusters
flattening:
groups:
- parameters:
- project_id
- region
- parameters:
- project_id
- region
- filter
required_fields:
- project_id
- region
page_streaming:
request:
page_size_field: page_size
token_field: page_token
response:
token_field: next_page_token
resources_field: clusters
retry_codes_name: idempotent
retry_params_name: default
timeout_millis: 60000
- name: DiagnoseCluster
flattening:
groups:
- parameters:
- project_id
- region
- cluster_name
required_fields:
- project_id
- region
- cluster_name
retry_codes_name: non_idempotent
retry_params_name: default
timeout_millis: 60000
long_running:
return_type: google.protobuf.Empty
metadata_type: google.cloud.dataproc.v1.DiagnoseClusterResults
implements_delete: false
implements_cancel: false
initial_poll_delay_millis: 1000
poll_delay_multiplier: 2
max_poll_delay_millis: 10000
total_poll_timeout_millis: 30000
# The fully qualified name of the API interface.
- name: google.cloud.dataproc.v1.JobController
# 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: []
# Definition for retryable codes.
retry_codes_def:
- name: idempotent
retry_codes:
@ -409,7 +55,6 @@ interfaces:
- name: non_idempotent
retry_codes:
- UNAVAILABLE
# Definition for retry/backoff parameters.
retry_params_def:
- name: default
initial_retry_delay_millis: 100
@ -419,159 +64,20 @@ interfaces:
rpc_timeout_multiplier: 1
max_rpc_timeout_millis: 30000
total_timeout_millis: 900000
# 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: SubmitJob
flattening:
groups:
- parameters:
- project_id
- region
- job
required_fields:
- project_id
- region
- job
retry_codes_name: non_idempotent
retry_params_name: default
timeout_millis: 30000
- name: GetJob
flattening:
groups:
- parameters:
- project_id
- region
- job_id
required_fields:
- project_id
- region
- job_id
retry_codes_name: idempotent
retry_params_name: default
timeout_millis: 30000
- name: ListJobs
flattening:
groups:
- parameters:
- project_id
- region
- parameters:
- project_id
- region
- filter
required_fields:
- project_id
- region
page_streaming:
request:
page_size_field: page_size
token_field: page_token
response:
token_field: next_page_token
resources_field: jobs
retry_codes_name: idempotent
retry_params_name: default
timeout_millis: 30000
- name: UpdateJob
required_fields:
- project_id
- region
- job_id
- job
- update_mask
retry_codes_name: non_idempotent
retry_params_name: default
timeout_millis: 30000
- name: CancelJob
flattening:
groups:
- parameters:
- project_id
- region
- job_id
required_fields:
- project_id
- region
- job_id
retry_codes_name: idempotent
retry_params_name: default
timeout_millis: 30000
- name: DeleteJob
flattening:
groups:
- parameters:
- project_id
- region
- job_id
required_fields:
- project_id
- region
- job_id
retry_codes_name: non_idempotent
retry_params_name: default
timeout_millis: 30000
# The fully qualified name of the API interface.
- name: google.cloud.dataproc.v1.WorkflowTemplateService
# 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}/regions/{region}
entity_name: region
- name_pattern: projects/{project}/regions/{region}/workflowTemplates/{workflow_template}
entity_name: workflow_template
# Definition for retryable codes.
retry_codes_def:
- name: idempotent
retry_codes:
@ -581,198 +87,18 @@ interfaces:
- name: non_idempotent
retry_codes:
- UNAVAILABLE
# 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: CreateWorkflowTemplate
flattening:
groups:
- parameters:
- parent
- template
required_fields:
- parent
- template
retry_codes_name: non_idempotent
retry_params_name: default
field_name_patterns:
parent: region
timeout_millis: 30000
- name: GetWorkflowTemplate
# params.
flattening:
groups:
- parameters:
- name
required_fields:
- name
retry_codes_name: idempotent
retry_params_name: default
field_name_patterns:
name: workflow_template
timeout_millis: 60000
- name: InstantiateWorkflowTemplate
flattening:
groups:
- parameters:
- name
- parameters:
- name
- parameters
required_fields:
- name
retry_codes_name: non_idempotent
retry_params_name: default
field_name_patterns:
name: workflow_template
timeout_millis: 60000
long_running:
return_type: google.protobuf.Empty
metadata_type: google.cloud.dataproc.v1.WorkflowMetadata
implements_delete: false
implements_cancel: false
initial_poll_delay_millis: 1000
poll_delay_multiplier: 2
max_poll_delay_millis: 10000
total_poll_timeout_millis: 43200000
- name: InstantiateInlineWorkflowTemplate
flattening:
groups:
- parameters:
- parent
- template
required_fields:
- parent
- template
retry_codes_name: non_idempotent
retry_params_name: default
field_name_patterns:
parent: region
timeout_millis: 60000
long_running:
return_type: google.protobuf.Empty
metadata_type: google.cloud.dataproc.v1.WorkflowMetadata
implements_delete: false
implements_cancel: false
initial_poll_delay_millis: 1000
poll_delay_multiplier: 2
max_poll_delay_millis: 10000
total_poll_timeout_millis: 43200000
- name: UpdateWorkflowTemplate
flattening:
groups:
- parameters:
- template
required_fields:
- template
retry_codes_name: non_idempotent
retry_params_name: default
field_name_patterns:
template.name: workflow_template
timeout_millis: 60000
- name: ListWorkflowTemplates
flattening:
groups:
- parameters:
- parent
required_fields:
- parent
page_streaming:
request:
page_size_field: page_size
token_field: page_token
response:
token_field: next_page_token
resources_field: templates
retry_codes_name: idempotent
retry_params_name: default
field_name_patterns:
parent: region
timeout_millis: 60000
- name: DeleteWorkflowTemplate
flattening:
groups:
- parameters:
- name
required_fields:
- name
retry_codes_name: non_idempotent
retry_params_name: default
field_name_patterns:
name: workflow_template
timeout_millis: 60000
resource_name_generation:
- message_name: WorkflowTemplate
field_entity_map:
name: workflow_template
- message_name: CreateWorkflowTemplateRequest
field_entity_map:
parent: region
- message_name: GetWorkflowTemplateRequest
field_entity_map:
name: workflow_template
- message_name: InstantiateWorkflowTemplateRequest
field_entity_map:
name: workflow_template
- message_name: InstantiateInlineWorkflowTemplateRequest
field_entity_map:
parent: region
- message_name: ListWorkflowTemplatesRequest
field_entity_map:
parent: region
- message_name: DeleteWorkflowTemplateRequest
field_entity_map:
name: workflow_template

View File

@ -27,15 +27,21 @@ option go_package = "google.golang.org/genproto/googleapis/cloud/dataproc/v1beta
option java_multiple_files = true;
option java_outer_classname = "AutoscalingPoliciesProto";
option java_package = "com.google.cloud.dataproc.v1beta2";
option (google.api.resource_definition) = {
type: "dataproc.googleapis.com/Region"
pattern: "projects/{project}/regions/{region}"
};
// The API interface for managing autoscaling policies in the
// Cloud Dataproc API.
service AutoscalingPolicyService {
option (google.api.default_host) = "dataproc.googleapis.com";
option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/cloud-platform";
option (google.api.oauth_scopes) =
"https://www.googleapis.com/auth/cloud-platform";
// Creates new autoscaling policy.
rpc CreateAutoscalingPolicy(CreateAutoscalingPolicyRequest) returns (AutoscalingPolicy) {
rpc CreateAutoscalingPolicy(CreateAutoscalingPolicyRequest)
returns (AutoscalingPolicy) {
option (google.api.http) = {
post: "/v1beta2/{parent=projects/*/locations/*}/autoscalingPolicies"
body: "policy"
@ -51,7 +57,8 @@ service AutoscalingPolicyService {
//
// Disabled check for update_mask, because all updates will be full
// replacements.
rpc UpdateAutoscalingPolicy(UpdateAutoscalingPolicyRequest) returns (AutoscalingPolicy) {
rpc UpdateAutoscalingPolicy(UpdateAutoscalingPolicyRequest)
returns (AutoscalingPolicy) {
option (google.api.http) = {
put: "/v1beta2/{policy.name=projects/*/locations/*/autoscalingPolicies/*}"
body: "policy"
@ -64,7 +71,8 @@ service AutoscalingPolicyService {
}
// Retrieves autoscaling policy.
rpc GetAutoscalingPolicy(GetAutoscalingPolicyRequest) returns (AutoscalingPolicy) {
rpc GetAutoscalingPolicy(GetAutoscalingPolicyRequest)
returns (AutoscalingPolicy) {
option (google.api.http) = {
get: "/v1beta2/{name=projects/*/locations/*/autoscalingPolicies/*}"
additional_bindings {
@ -75,7 +83,8 @@ service AutoscalingPolicyService {
}
// Lists autoscaling policies in the project.
rpc ListAutoscalingPolicies(ListAutoscalingPoliciesRequest) returns (ListAutoscalingPoliciesResponse) {
rpc ListAutoscalingPolicies(ListAutoscalingPoliciesRequest)
returns (ListAutoscalingPoliciesResponse) {
option (google.api.http) = {
get: "/v1beta2/{parent=projects/*/locations/*}/autoscalingPolicies"
additional_bindings {
@ -87,7 +96,8 @@ service AutoscalingPolicyService {
// Deletes an autoscaling policy. It is an error to delete an autoscaling
// policy that is in use by one or more clusters.
rpc DeleteAutoscalingPolicy(DeleteAutoscalingPolicyRequest) returns (google.protobuf.Empty) {
rpc DeleteAutoscalingPolicy(DeleteAutoscalingPolicyRequest)
returns (google.protobuf.Empty) {
option (google.api.http) = {
delete: "/v1beta2/{name=projects/*/locations/*/autoscalingPolicies/*}"
additional_bindings {
@ -102,8 +112,8 @@ service AutoscalingPolicyService {
message AutoscalingPolicy {
option (google.api.resource) = {
type: "dataproc.googleapis.com/AutoscalingPolicy"
pattern: "projects/{project}/regions/{region}/autoscalingPolicies/{autoscaling_policy}"
pattern: "projects/{project}/locations/{location}/autoscalingPolicies/{autoscaling_policy}"
pattern: "projects/{project}/regions/{region}/autoscalingPolicies/{autoscaling_policy}"
history: ORIGINALLY_SINGLE_PATTERN
};
@ -132,22 +142,26 @@ message AutoscalingPolicy {
}
// Required. Describes how the autoscaler will operate for primary workers.
InstanceGroupAutoscalingPolicyConfig worker_config = 4 [(google.api.field_behavior) = REQUIRED];
InstanceGroupAutoscalingPolicyConfig worker_config = 4
[(google.api.field_behavior) = REQUIRED];
// Optional. Describes how the autoscaler will operate for secondary workers.
InstanceGroupAutoscalingPolicyConfig secondary_worker_config = 5 [(google.api.field_behavior) = OPTIONAL];
InstanceGroupAutoscalingPolicyConfig secondary_worker_config = 5
[(google.api.field_behavior) = OPTIONAL];
}
// Basic algorithm for autoscaling.
message BasicAutoscalingAlgorithm {
// Required. YARN autoscaling configuration.
BasicYarnAutoscalingConfig yarn_config = 1 [(google.api.field_behavior) = REQUIRED];
BasicYarnAutoscalingConfig yarn_config = 1
[(google.api.field_behavior) = REQUIRED];
// Optional. Duration between scaling events. A scaling period starts after
// the update operation from the previous event has completed.
//
// Bounds: [2m, 1d]. Default: 2m.
google.protobuf.Duration cooldown_period = 2 [(google.api.field_behavior) = OPTIONAL];
google.protobuf.Duration cooldown_period = 2
[(google.api.field_behavior) = OPTIONAL];
}
// Basic autoscaling configurations for YARN.
@ -158,7 +172,8 @@ message BasicYarnAutoscalingConfig {
// downscaling operations.
//
// Bounds: [0s, 1d].
google.protobuf.Duration graceful_decommission_timeout = 5 [(google.api.field_behavior) = REQUIRED];
google.protobuf.Duration graceful_decommission_timeout = 5
[(google.api.field_behavior) = REQUIRED];
// Required. Fraction of average pending memory in the last cooldown period
// for which to add workers. A scale-up factor of 1.0 will result in scaling
@ -185,7 +200,8 @@ message BasicYarnAutoscalingConfig {
// on any recommended change.
//
// Bounds: [0.0, 1.0]. Default: 0.0.
double scale_up_min_worker_fraction = 3 [(google.api.field_behavior) = OPTIONAL];
double scale_up_min_worker_fraction = 3
[(google.api.field_behavior) = OPTIONAL];
// Optional. Minimum scale-down threshold as a fraction of total cluster size
// before scaling occurs. For example, in a 20-worker cluster, a threshold of
@ -194,7 +210,8 @@ message BasicYarnAutoscalingConfig {
// on any recommended change.
//
// Bounds: [0.0, 1.0]. Default: 0.0.
double scale_down_min_worker_fraction = 4 [(google.api.field_behavior) = OPTIONAL];
double scale_down_min_worker_fraction = 4
[(google.api.field_behavior) = OPTIONAL];
}
// Configuration for the size bounds of an instance group, including its
@ -281,12 +298,7 @@ message GetAutoscalingPolicyRequest {
// A request to update an autoscaling policy.
message UpdateAutoscalingPolicyRequest {
// Required. The updated autoscaling policy.
AutoscalingPolicy policy = 1 [
(google.api.field_behavior) = REQUIRED,
(google.api.resource_reference) = {
type: "dataproc.googleapis.com/AutoscalingPolicy"
}
];
AutoscalingPolicy policy = 1 [(google.api.field_behavior) = REQUIRED];
}
// A request to delete an autoscaling policy.
@ -342,7 +354,8 @@ message ListAutoscalingPoliciesRequest {
// A response to a request to list autoscaling policies in a project.
message ListAutoscalingPoliciesResponse {
// Output only. Autoscaling policies list.
repeated AutoscalingPolicy policies = 1 [(google.api.field_behavior) = OUTPUT_ONLY];
repeated AutoscalingPolicy policies = 1
[(google.api.field_behavior) = OUTPUT_ONLY];
// Output only. This token is included in the response if there are more
// results to fetch.

View File

@ -0,0 +1,96 @@
type: com.google.api.codegen.ConfigProto
config_schema_version: 2.0.0
language_settings:
java:
package_name: com.google.cloud.dataproc.v1beta2
python:
package_name: google.cloud.dataproc_v1beta2.gapic
go:
package_name: cloud.google.com/go/dataproc/apiv1beta2
csharp:
package_name: Google.Cloud.Dataproc.V1Beta2
ruby:
package_name: Google::Cloud::Dataproc::V1beta2
php:
package_name: Google\Cloud\Dataproc\V1beta2
nodejs:
package_name: dataproc.v1beta2
domain_layer_location: google-cloud
interfaces:
- name: google.cloud.dataproc.v1beta2.ClusterController
smoke_test:
method: ListClusters
init_fields:
- project_id=$PROJECT_ID
- region="global"
# Definition for retryable codes.
retry_codes_def:
- name: idempotent
retry_codes:
- INTERNAL
- DEADLINE_EXCEEDED
- UNAVAILABLE
- name: non_idempotent
retry_codes:
- UNAVAILABLE
methods:
- name: CreateCluster
retry_codes_name: non_idempotent
- name: UpdateCluster
retry_codes_name: non_idempotent
- name: DeleteCluster
retry_codes_name: non_idempotent
- name: GetCluster
retry_codes_name: idempotent
- name: ListClusters
retry_codes_name: idempotent
- name: DiagnoseCluster
retry_codes_name: non_idempotent
- name: google.cloud.dataproc.v1beta2.JobController
retry_codes_def:
- name: idempotent
retry_codes:
- DEADLINE_EXCEEDED
- INTERNAL
- UNAVAILABLE
- name: non_idempotent
retry_codes:
- UNAVAILABLE
methods:
- name: SubmitJob
retry_codes_name: non_idempotent
- name: GetJob
retry_codes_name: idempotent
- name: ListJobs
retry_codes_name: idempotent
- name: UpdateJob
retry_codes_name: non_idempotent
- name: CancelJob
retry_codes_name: idempotent
- name: DeleteJob
retry_codes_name: non_idempotent
- name: google.cloud.dataproc.v1beta2.WorkflowTemplateService
retry_codes_def:
- name: idempotent
retry_codes:
- DEADLINE_EXCEEDED
- INTERNAL
- UNAVAILABLE
- name: non_idempotent
retry_codes:
- UNAVAILABLE
methods:
- name: CreateWorkflowTemplate
retry_codes_name: non_idempotent
- name: GetWorkflowTemplate
retry_codes_name: idempotent
- name: InstantiateWorkflowTemplate
retry_codes_name: non_idempotent
- name: InstantiateInlineWorkflowTemplate
retry_codes_name: non_idempotent
- name: UpdateWorkflowTemplate
retry_codes_name: non_idempotent
- name: ListWorkflowTemplates
retry_codes_name: idempotent
- name: DeleteWorkflowTemplate
retry_codes_name: non_idempotent

View File

@ -1,6 +1,5 @@
type: com.google.api.codegen.ConfigProto
config_schema_version: 1.0.0
# The settings of generated code in a specific language.
config_schema_version: 2.0.0
language_settings:
java:
package_name: com.google.cloud.dataproc.v1beta2
@ -17,172 +16,8 @@ language_settings:
nodejs:
package_name: dataproc.v1beta2
domain_layer_location: google-cloud
# A list of API interface configurations.
interfaces:
# The fully qualified name of the API interface.
- name: google.cloud.dataproc.v1beta2.AutoscalingPolicyService
# 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}/regions/{region}
entity_name: region
- name_pattern: projects/{project}/regions/{region}/autoscalingPolicies/{autoscaling_policy}
entity_name: autoscaling_policy
# 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: CreateAutoscalingPolicy
flattening:
groups:
- parameters:
- parent
- policy
required_fields:
- parent
- policy
retry_codes_name: non_idempotent
retry_params_name: default
field_name_patterns:
parent: region
timeout_millis: 60000
- name: UpdateAutoscalingPolicy
flattening:
groups:
- parameters:
- policy
required_fields:
- policy
retry_codes_name: idempotent
retry_params_name: default
field_name_patterns:
policy.name: autoscaling_policy
timeout_millis: 60000
- name: GetAutoscalingPolicy
flattening:
groups:
- parameters:
- name
required_fields:
- name
retry_codes_name: idempotent
retry_params_name: default
field_name_patterns:
name: autoscaling_policy
timeout_millis: 60000
- name: ListAutoscalingPolicies
flattening:
groups:
- parameters:
- parent
required_fields:
- parent
page_streaming:
request:
page_size_field: page_size
token_field: page_token
response:
token_field: next_page_token
resources_field: policies
retry_codes_name: idempotent
retry_params_name: default
field_name_patterns:
parent: region
timeout_millis: 60000
- name: DeleteAutoscalingPolicy
flattening:
groups:
- parameters:
- name
required_fields:
- name
retry_codes_name: non_idempotent
retry_params_name: default
field_name_patterns:
name: autoscaling_policy
timeout_millis: 60000
# The fully qualified name of the API interface.
- name: google.cloud.dataproc.v1beta2.ClusterController
# 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: []
# Definition for smoke test.
smoke_test:
method: ListClusters
init_fields:
@ -198,209 +33,20 @@ interfaces:
- name: non_idempotent
retry_codes:
- UNAVAILABLE
# 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: 10000
rpc_timeout_multiplier: 1
max_rpc_timeout_millis: 10000
total_timeout_millis: 300000
# 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: CreateCluster
flattening:
groups:
- parameters:
- project_id
- region
- cluster
required_fields:
- project_id
- region
- cluster
retry_codes_name: non_idempotent
retry_params_name: default
timeout_millis: 30000
long_running:
return_type: google.cloud.dataproc.v1beta2.Cluster
metadata_type: google.cloud.dataproc.v1beta2.ClusterOperationMetadata
implements_delete: false
implements_cancel: false
initial_poll_delay_millis: 1000
poll_delay_multiplier: 2
max_poll_delay_millis: 10000
total_poll_timeout_millis: 900000
- name: UpdateCluster
flattening:
groups:
- parameters:
- project_id
- region
- cluster_name
- cluster
- update_mask
required_fields:
- project_id
- region
- cluster_name
- cluster
- update_mask
retry_codes_name: non_idempotent
retry_params_name: default
timeout_millis: 30000
long_running:
return_type: google.cloud.dataproc.v1beta2.Cluster
metadata_type: google.cloud.dataproc.v1beta2.ClusterOperationMetadata
implements_delete: false
implements_cancel: false
initial_poll_delay_millis: 1000
poll_delay_multiplier: 2
max_poll_delay_millis: 10000
total_poll_timeout_millis: 900000
- name: DeleteCluster
flattening:
groups:
- parameters:
- project_id
- region
- cluster_name
required_fields:
- project_id
- region
- cluster_name
retry_codes_name: non_idempotent
retry_params_name: default
timeout_millis: 30000
long_running:
return_type: google.protobuf.Empty
metadata_type: google.cloud.dataproc.v1beta2.ClusterOperationMetadata
implements_delete: false
implements_cancel: false
initial_poll_delay_millis: 1000
poll_delay_multiplier: 2
max_poll_delay_millis: 10000
total_poll_timeout_millis: 900000
- name: GetCluster
flattening:
groups:
- parameters:
- project_id
- region
- cluster_name
required_fields:
- project_id
- region
- cluster_name
retry_codes_name: idempotent
retry_params_name: default
timeout_millis: 60000
- name: ListClusters
flattening:
groups:
- parameters:
- project_id
- region
- parameters:
- project_id
- region
- filter
required_fields:
- project_id
- region
page_streaming:
request:
page_size_field: page_size
token_field: page_token
response:
token_field: next_page_token
resources_field: clusters
retry_codes_name: idempotent
retry_params_name: default
timeout_millis: 60000
- name: DiagnoseCluster
flattening:
groups:
- parameters:
- project_id
- region
- cluster_name
required_fields:
- project_id
- region
- cluster_name
retry_codes_name: non_idempotent
retry_params_name: default
timeout_millis: 60000
long_running:
return_type: google.protobuf.Empty
metadata_type: google.cloud.dataproc.v1beta2.DiagnoseClusterResults
implements_delete: false
implements_cancel: false
initial_poll_delay_millis: 1000
poll_delay_multiplier: 2
max_poll_delay_millis: 10000
total_poll_timeout_millis: 30000
# The fully qualified name of the API interface.
- name: google.cloud.dataproc.v1beta2.JobController
# 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: []
# Definition for retryable codes.
retry_codes_def:
- name: idempotent
retry_codes:
@ -410,169 +56,20 @@ interfaces:
- name: non_idempotent
retry_codes:
- UNAVAILABLE
# 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: 30000
rpc_timeout_multiplier: 1
max_rpc_timeout_millis: 30000
total_timeout_millis: 900000
# 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: SubmitJob
flattening:
groups:
- parameters:
- project_id
- region
- job
required_fields:
- project_id
- region
- job
retry_codes_name: non_idempotent
retry_params_name: default
timeout_millis: 30000
- name: GetJob
flattening:
groups:
- parameters:
- project_id
- region
- job_id
required_fields:
- project_id
- region
- job_id
retry_codes_name: idempotent
retry_params_name: default
timeout_millis: 30000
- name: ListJobs
flattening:
groups:
- parameters:
- project_id
- region
- parameters:
- project_id
- region
- filter
required_fields:
- project_id
- region
page_streaming:
request:
page_size_field: page_size
token_field: page_token
response:
token_field: next_page_token
resources_field: jobs
retry_codes_name: idempotent
retry_params_name: default
timeout_millis: 30000
- name: UpdateJob
required_fields:
- project_id
- region
- job_id
- job
- update_mask
retry_codes_name: non_idempotent
retry_params_name: default
timeout_millis: 30000
- name: CancelJob
flattening:
groups:
- parameters:
- project_id
- region
- job_id
required_fields:
- project_id
- region
- job_id
retry_codes_name: idempotent
retry_params_name: default
timeout_millis: 30000
- name: DeleteJob
flattening:
groups:
- parameters:
- project_id
- region
- job_id
required_fields:
- project_id
- region
- job_id
retry_codes_name: non_idempotent
retry_params_name: default
timeout_millis: 30000
# The fully qualified name of the API interface.
- name: google.cloud.dataproc.v1beta2.WorkflowTemplateService
# 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}/regions/{region}
entity_name: region
- name_pattern: projects/{project}/regions/{region}/workflowTemplates/{workflow_template}
entity_name: workflow_template
# Definition for retryable codes.
retry_codes_def:
- name: idempotent
retry_codes:
@ -582,212 +79,18 @@ interfaces:
- name: non_idempotent
retry_codes:
- UNAVAILABLE
# 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: CreateWorkflowTemplate
flattening:
groups:
- parameters:
- parent
- template
required_fields:
- parent
- template
retry_codes_name: non_idempotent
retry_params_name: default
field_name_patterns:
parent: region
timeout_millis: 30000
- name: GetWorkflowTemplate
flattening:
groups:
- parameters:
- name
required_fields:
- name
retry_codes_name: idempotent
retry_params_name: default
field_name_patterns:
name: workflow_template
timeout_millis: 60000
- name: InstantiateWorkflowTemplate
flattening:
groups:
- parameters:
- name
- parameters:
- name
- parameters
required_fields:
- name
retry_codes_name: non_idempotent
retry_params_name: default
field_name_patterns:
name: workflow_template
timeout_millis: 60000
long_running:
return_type: google.protobuf.Empty
metadata_type: google.cloud.dataproc.v1beta2.WorkflowMetadata
implements_delete: false
implements_cancel: false
initial_poll_delay_millis: 1000
poll_delay_multiplier: 2
max_poll_delay_millis: 10000
total_poll_timeout_millis: 43200000
- name: InstantiateInlineWorkflowTemplate
flattening:
groups:
- parameters:
- parent
- template
required_fields:
- parent
- template
retry_codes_name: non_idempotent
retry_params_name: default
field_name_patterns:
parent: region
timeout_millis: 60000
long_running:
return_type: google.protobuf.Empty
metadata_type: google.cloud.dataproc.v1beta2.WorkflowMetadata
implements_delete: false
implements_cancel: false
initial_poll_delay_millis: 1000
poll_delay_multiplier: 2
max_poll_delay_millis: 10000
total_poll_timeout_millis: 43200000
- name: UpdateWorkflowTemplate
flattening:
groups:
- parameters:
- template
required_fields:
- template
retry_codes_name: non_idempotent
retry_params_name: default
field_name_patterns:
template.name: workflow_template
timeout_millis: 60000
- name: ListWorkflowTemplates
flattening:
groups:
- parameters:
- parent
required_fields:
- parent
page_streaming:
request:
page_size_field: page_size
token_field: page_token
response:
token_field: next_page_token
resources_field: templates
retry_codes_name: idempotent
retry_params_name: default
field_name_patterns:
parent: region
timeout_millis: 60000
- name: DeleteWorkflowTemplate
flattening:
groups:
- parameters:
- name
required_fields:
- name
retry_codes_name: non_idempotent
retry_params_name: default
field_name_patterns:
name: workflow_template
timeout_millis: 60000
resource_name_generation:
- message_name: AutoscalingPolicy
field_entity_map:
name: autoscaling_policy
- message_name: CreateAutoscalingPolicyRequest
field_entity_map:
parent: region
- message_name: GetAutoscalingPolicyRequest
field_entity_map:
name: autoscaling_policy
- message_name: ListAutoscalingPoliciesRequest
field_entity_map:
parent: region
- message_name: DeleteAutoscalingPolicyRequest
field_entity_map:
name: autoscaling_policy
- message_name: WorkflowTemplate
field_entity_map:
name: workflow_template
- message_name: CreateWorkflowTemplateRequest
field_entity_map:
parent: region
- message_name: GetWorkflowTemplateRequest
field_entity_map:
name: workflow_template
- message_name: InstantiateWorkflowTemplateRequest
field_entity_map:
name: workflow_template
- message_name: InstantiateInlineWorkflowTemplateRequest
field_entity_map:
parent: region
- message_name: ListWorkflowTemplatesRequest
field_entity_map:
parent: region
- message_name: DeleteWorkflowTemplateRequest
field_entity_map:
name: workflow_template

View File

@ -35,10 +35,12 @@ option java_package = "com.google.cloud.dataproc.v1beta2";
// Dataproc API.
service WorkflowTemplateService {
option (google.api.default_host) = "dataproc.googleapis.com";
option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/cloud-platform";
option (google.api.oauth_scopes) =
"https://www.googleapis.com/auth/cloud-platform";
// Creates new workflow template.
rpc CreateWorkflowTemplate(CreateWorkflowTemplateRequest) returns (WorkflowTemplate) {
rpc CreateWorkflowTemplate(CreateWorkflowTemplateRequest)
returns (WorkflowTemplate) {
option (google.api.http) = {
post: "/v1beta2/{parent=projects/*/regions/*}/workflowTemplates"
body: "template"
@ -54,7 +56,8 @@ service WorkflowTemplateService {
//
// Can retrieve previously instantiated template by specifying optional
// version parameter.
rpc GetWorkflowTemplate(GetWorkflowTemplateRequest) returns (WorkflowTemplate) {
rpc GetWorkflowTemplate(GetWorkflowTemplateRequest)
returns (WorkflowTemplate) {
option (google.api.http) = {
get: "/v1beta2/{name=projects/*/regions/*/workflowTemplates/*}"
additional_bindings {
@ -84,7 +87,8 @@ service WorkflowTemplateService {
// On successful completion,
// [Operation.response][google.longrunning.Operation.response] will be
// [Empty][google.protobuf.Empty].
rpc InstantiateWorkflowTemplate(InstantiateWorkflowTemplateRequest) returns (google.longrunning.Operation) {
rpc InstantiateWorkflowTemplate(InstantiateWorkflowTemplateRequest)
returns (google.longrunning.Operation) {
option (google.api.http) = {
post: "/v1beta2/{name=projects/*/regions/*/workflowTemplates/*}:instantiate"
body: "*"
@ -104,7 +108,8 @@ service WorkflowTemplateService {
// Instantiates a template and begins execution.
//
// This method is equivalent to executing the sequence
// [CreateWorkflowTemplate][google.cloud.dataproc.v1beta2.WorkflowTemplateService.CreateWorkflowTemplate], [InstantiateWorkflowTemplate][google.cloud.dataproc.v1beta2.WorkflowTemplateService.InstantiateWorkflowTemplate],
// [CreateWorkflowTemplate][google.cloud.dataproc.v1beta2.WorkflowTemplateService.CreateWorkflowTemplate],
// [InstantiateWorkflowTemplate][google.cloud.dataproc.v1beta2.WorkflowTemplateService.InstantiateWorkflowTemplate],
// [DeleteWorkflowTemplate][google.cloud.dataproc.v1beta2.WorkflowTemplateService.DeleteWorkflowTemplate].
//
// The returned Operation can be used to track execution of
@ -125,7 +130,9 @@ service WorkflowTemplateService {
// On successful completion,
// [Operation.response][google.longrunning.Operation.response] will be
// [Empty][google.protobuf.Empty].
rpc InstantiateInlineWorkflowTemplate(InstantiateInlineWorkflowTemplateRequest) returns (google.longrunning.Operation) {
rpc InstantiateInlineWorkflowTemplate(
InstantiateInlineWorkflowTemplateRequest)
returns (google.longrunning.Operation) {
option (google.api.http) = {
post: "/v1beta2/{parent=projects/*/locations/*}/workflowTemplates:instantiateInline"
body: "template"
@ -143,7 +150,8 @@ service WorkflowTemplateService {
// Updates (replaces) workflow template. The updated template
// must contain version that matches the current server version.
rpc UpdateWorkflowTemplate(UpdateWorkflowTemplateRequest) returns (WorkflowTemplate) {
rpc UpdateWorkflowTemplate(UpdateWorkflowTemplateRequest)
returns (WorkflowTemplate) {
option (google.api.http) = {
put: "/v1beta2/{template.name=projects/*/regions/*/workflowTemplates/*}"
body: "template"
@ -156,7 +164,8 @@ service WorkflowTemplateService {
}
// Lists workflows that match the specified filter in the request.
rpc ListWorkflowTemplates(ListWorkflowTemplatesRequest) returns (ListWorkflowTemplatesResponse) {
rpc ListWorkflowTemplates(ListWorkflowTemplatesRequest)
returns (ListWorkflowTemplatesResponse) {
option (google.api.http) = {
get: "/v1beta2/{parent=projects/*/regions/*}/workflowTemplates"
additional_bindings {
@ -167,7 +176,8 @@ service WorkflowTemplateService {
}
// Deletes a workflow template. It does not cancel in-progress workflows.
rpc DeleteWorkflowTemplate(DeleteWorkflowTemplateRequest) returns (google.protobuf.Empty) {
rpc DeleteWorkflowTemplate(DeleteWorkflowTemplateRequest)
returns (google.protobuf.Empty) {
option (google.api.http) = {
delete: "/v1beta2/{name=projects/*/regions/*/workflowTemplates/*}"
additional_bindings {
@ -220,10 +230,12 @@ message WorkflowTemplate {
int32 version = 3 [(google.api.field_behavior) = OPTIONAL];
// Output only. The time template was created.
google.protobuf.Timestamp create_time = 4 [(google.api.field_behavior) = OUTPUT_ONLY];
google.protobuf.Timestamp create_time = 4
[(google.api.field_behavior) = OUTPUT_ONLY];
// Output only. The time template was last updated.
google.protobuf.Timestamp update_time = 5 [(google.api.field_behavior) = OUTPUT_ONLY];
google.protobuf.Timestamp update_time = 5
[(google.api.field_behavior) = OUTPUT_ONLY];
// Optional. The labels to associate with this template. These labels
// will be propagated to all jobs and clusters created by the workflow
@ -248,7 +260,8 @@ message WorkflowTemplate {
// Optional. Template parameters whose values are substituted into the
// template. Values for parameters must be provided when the template is
// instantiated.
repeated TemplateParameter parameters = 9 [(google.api.field_behavior) = OPTIONAL];
repeated TemplateParameter parameters = 9
[(google.api.field_behavior) = OPTIONAL];
}
// Specifies workflow execution target.
@ -316,8 +329,8 @@ message OrderedJob {
//
// The step id is used as prefix for job id, as job
// `goog-dataproc-workflow-step-id` label, and in
// [prerequisiteStepIds][google.cloud.dataproc.v1beta2.OrderedJob.prerequisite_step_ids] field from other
// steps.
// [prerequisiteStepIds][google.cloud.dataproc.v1beta2.OrderedJob.prerequisite_step_ids]
// field from other steps.
//
// The id must contain only letters (a-z, A-Z), numbers (0-9),
// underscores (_), and hyphens (-). Cannot begin or end with underscore
@ -382,10 +395,10 @@ message TemplateParameter {
// A field is allowed to appear in at most one parameter's list of field
// paths.
//
// A field path is similar in syntax to a [google.protobuf.FieldMask][google.protobuf.FieldMask].
// For example, a field path that references the zone field of a workflow
// template's cluster selector would be specified as
// `placement.clusterSelector.zone`.
// A field path is similar in syntax to a
// [google.protobuf.FieldMask][google.protobuf.FieldMask]. For example, a
// field path that references the zone field of a workflow template's cluster
// selector would be specified as `placement.clusterSelector.zone`.
//
// Also, field paths can reference fields using the following syntax:
//
@ -492,13 +505,15 @@ message WorkflowMetadata {
int32 version = 2 [(google.api.field_behavior) = OUTPUT_ONLY];
// Output only. The create cluster operation metadata.
ClusterOperation create_cluster = 3 [(google.api.field_behavior) = OUTPUT_ONLY];
ClusterOperation create_cluster = 3
[(google.api.field_behavior) = OUTPUT_ONLY];
// Output only. The workflow graph.
WorkflowGraph graph = 4 [(google.api.field_behavior) = OUTPUT_ONLY];
// Output only. The delete cluster operation metadata.
ClusterOperation delete_cluster = 5 [(google.api.field_behavior) = OUTPUT_ONLY];
ClusterOperation delete_cluster = 5
[(google.api.field_behavior) = OUTPUT_ONLY];
// Output only. The workflow state.
State state = 6 [(google.api.field_behavior) = OUTPUT_ONLY];
@ -510,10 +525,12 @@ message WorkflowMetadata {
map<string, string> parameters = 8;
// Output only. Workflow start time.
google.protobuf.Timestamp start_time = 9 [(google.api.field_behavior) = OUTPUT_ONLY];
google.protobuf.Timestamp start_time = 9
[(google.api.field_behavior) = OUTPUT_ONLY];
// Output only. Workflow end time.
google.protobuf.Timestamp end_time = 10 [(google.api.field_behavior) = OUTPUT_ONLY];
google.protobuf.Timestamp end_time = 10
[(google.api.field_behavior) = OUTPUT_ONLY];
// Output only. The UUID of target cluster.
string cluster_uuid = 11 [(google.api.field_behavior) = OUTPUT_ONLY];
@ -565,7 +582,8 @@ message WorkflowNode {
string step_id = 1 [(google.api.field_behavior) = OUTPUT_ONLY];
// Output only. Node's prerequisite nodes.
repeated string prerequisite_step_ids = 2 [(google.api.field_behavior) = OUTPUT_ONLY];
repeated string prerequisite_step_ids = 2
[(google.api.field_behavior) = OUTPUT_ONLY];
// Output only. The job id; populated after the node enters RUNNING state.
string job_id = 3 [(google.api.field_behavior) = OUTPUT_ONLY];
@ -729,7 +747,12 @@ message ListWorkflowTemplatesRequest {
// * For `projects.locations.workflowTemplates.list`, the
// resource name of the location has the following format:
// `projects/{project_id}/locations/{location}`
string parent = 1 [(google.api.field_behavior) = REQUIRED];
string parent = 1 [
(google.api.field_behavior) = REQUIRED,
(google.api.resource_reference) = {
child_type: "dataproc.googleapis.com/WorkflowTemplate"
}
];
// Optional. The maximum number of results to return in each response.
int32 page_size = 2;
@ -742,7 +765,8 @@ message ListWorkflowTemplatesRequest {
// A response to a request to list workflow templates in a project.
message ListWorkflowTemplatesResponse {
// Output only. WorkflowTemplates list.
repeated WorkflowTemplate templates = 1 [(google.api.field_behavior) = OUTPUT_ONLY];
repeated WorkflowTemplate templates = 1
[(google.api.field_behavior) = OUTPUT_ONLY];
// Output only. This token is included in the response if there are more
// results to fetch. To fetch additional results, provide this value as the