google-cloud-dataproc-v1 0.3.0 → 0.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/LICENSE.md +188 -190
- data/README.md +66 -2
- data/lib/google/cloud/dataproc/v1.rb +3 -0
- data/lib/google/cloud/dataproc/v1/autoscaling_policies_services_pb.rb +5 -5
- data/lib/google/cloud/dataproc/v1/autoscaling_policy_service/client.rb +26 -20
- data/lib/google/cloud/dataproc/v1/autoscaling_policy_service/paths.rb +1 -1
- data/lib/google/cloud/dataproc/v1/cluster_controller.rb +1 -0
- data/lib/google/cloud/dataproc/v1/cluster_controller/client.rb +251 -47
- data/lib/google/cloud/dataproc/v1/cluster_controller/operations.rb +96 -11
- data/lib/google/cloud/dataproc/v1/cluster_controller/paths.rb +71 -0
- data/lib/google/cloud/dataproc/v1/clusters_pb.rb +60 -0
- data/lib/google/cloud/dataproc/v1/clusters_services_pb.rb +10 -6
- data/lib/google/cloud/dataproc/v1/job_controller/client.rb +57 -49
- data/lib/google/cloud/dataproc/v1/job_controller/operations.rb +96 -11
- data/lib/google/cloud/dataproc/v1/jobs_pb.rb +2 -0
- data/lib/google/cloud/dataproc/v1/jobs_services_pb.rb +7 -7
- data/lib/google/cloud/dataproc/v1/shared_pb.rb +7 -0
- data/lib/google/cloud/dataproc/v1/version.rb +1 -1
- data/lib/google/cloud/dataproc/v1/workflow_template_service/client.rb +43 -36
- data/lib/google/cloud/dataproc/v1/workflow_template_service/operations.rb +96 -11
- data/lib/google/cloud/dataproc/v1/workflow_template_service/paths.rb +39 -1
- data/lib/google/cloud/dataproc/v1/workflow_templates_pb.rb +5 -0
- data/lib/google/cloud/dataproc/v1/workflow_templates_services_pb.rb +9 -8
- data/proto_docs/google/api/field_behavior.rb +6 -0
- data/proto_docs/google/api/resource.rb +50 -14
- data/proto_docs/google/cloud/dataproc/v1/clusters.rb +240 -16
- data/proto_docs/google/cloud/dataproc/v1/jobs.rb +29 -10
- data/proto_docs/google/cloud/dataproc/v1/shared.rb +24 -1
- data/proto_docs/google/cloud/dataproc/v1/workflow_templates.rb +34 -7
- data/proto_docs/google/longrunning/operations.rb +17 -3
- data/proto_docs/google/protobuf/any.rb +5 -2
- data/proto_docs/google/protobuf/timestamp.rb +10 -1
- metadata +13 -9
@@ -24,6 +24,25 @@ module Google
|
|
24
24
|
module WorkflowTemplateService
|
25
25
|
# Path helper methods for the WorkflowTemplateService API.
|
26
26
|
module Paths
|
27
|
+
##
|
28
|
+
# Create a fully-qualified Cluster resource string.
|
29
|
+
#
|
30
|
+
# The resource will be in the following format:
|
31
|
+
#
|
32
|
+
# `projects/{project}/locations/{location}/clusters/{cluster}`
|
33
|
+
#
|
34
|
+
# @param project [String]
|
35
|
+
# @param location [String]
|
36
|
+
# @param cluster [String]
|
37
|
+
#
|
38
|
+
# @return [::String]
|
39
|
+
def cluster_path project:, location:, cluster:
|
40
|
+
raise ::ArgumentError, "project cannot contain /" if project.to_s.include? "/"
|
41
|
+
raise ::ArgumentError, "location cannot contain /" if location.to_s.include? "/"
|
42
|
+
|
43
|
+
"projects/#{project}/locations/#{location}/clusters/#{cluster}"
|
44
|
+
end
|
45
|
+
|
27
46
|
##
|
28
47
|
# Create a fully-qualified Location resource string.
|
29
48
|
#
|
@@ -58,6 +77,25 @@ module Google
|
|
58
77
|
"projects/#{project}/regions/#{region}"
|
59
78
|
end
|
60
79
|
|
80
|
+
##
|
81
|
+
# Create a fully-qualified Service resource string.
|
82
|
+
#
|
83
|
+
# The resource will be in the following format:
|
84
|
+
#
|
85
|
+
# `projects/{project}/locations/{location}/services/{service}`
|
86
|
+
#
|
87
|
+
# @param project [String]
|
88
|
+
# @param location [String]
|
89
|
+
# @param service [String]
|
90
|
+
#
|
91
|
+
# @return [::String]
|
92
|
+
def service_path project:, location:, service:
|
93
|
+
raise ::ArgumentError, "project cannot contain /" if project.to_s.include? "/"
|
94
|
+
raise ::ArgumentError, "location cannot contain /" if location.to_s.include? "/"
|
95
|
+
|
96
|
+
"projects/#{project}/locations/#{location}/services/#{service}"
|
97
|
+
end
|
98
|
+
|
61
99
|
##
|
62
100
|
# Create a fully-qualified WorkflowTemplate resource string.
|
63
101
|
#
|
@@ -82,7 +120,7 @@ module Google
|
|
82
120
|
# @return [::String]
|
83
121
|
def workflow_template_path **args
|
84
122
|
resources = {
|
85
|
-
"project:region:workflow_template"
|
123
|
+
"project:region:workflow_template" => (proc do |project:, region:, workflow_template:|
|
86
124
|
raise ::ArgumentError, "project cannot contain /" if project.to_s.include? "/"
|
87
125
|
raise ::ArgumentError, "region cannot contain /" if region.to_s.include? "/"
|
88
126
|
|
@@ -10,6 +10,7 @@ require 'google/api/resource_pb'
|
|
10
10
|
require 'google/cloud/dataproc/v1/clusters_pb'
|
11
11
|
require 'google/cloud/dataproc/v1/jobs_pb'
|
12
12
|
require 'google/longrunning/operations_pb'
|
13
|
+
require 'google/protobuf/duration_pb'
|
13
14
|
require 'google/protobuf/empty_pb'
|
14
15
|
require 'google/protobuf/timestamp_pb'
|
15
16
|
Google::Protobuf::DescriptorPool.generated_pool.build do
|
@@ -24,6 +25,7 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
|
|
24
25
|
optional :placement, :message, 7, "google.cloud.dataproc.v1.WorkflowTemplatePlacement"
|
25
26
|
repeated :jobs, :message, 8, "google.cloud.dataproc.v1.OrderedJob"
|
26
27
|
repeated :parameters, :message, 9, "google.cloud.dataproc.v1.TemplateParameter"
|
28
|
+
optional :dag_timeout, :message, 10, "google.protobuf.Duration"
|
27
29
|
end
|
28
30
|
add_message "google.cloud.dataproc.v1.WorkflowTemplatePlacement" do
|
29
31
|
oneof :placement do
|
@@ -86,6 +88,9 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
|
|
86
88
|
optional :start_time, :message, 9, "google.protobuf.Timestamp"
|
87
89
|
optional :end_time, :message, 10, "google.protobuf.Timestamp"
|
88
90
|
optional :cluster_uuid, :string, 11
|
91
|
+
optional :dag_timeout, :message, 12, "google.protobuf.Duration"
|
92
|
+
optional :dag_start_time, :message, 13, "google.protobuf.Timestamp"
|
93
|
+
optional :dag_end_time, :message, 14, "google.protobuf.Timestamp"
|
89
94
|
end
|
90
95
|
add_enum "google.cloud.dataproc.v1.WorkflowMetadata.State" do
|
91
96
|
value :UNKNOWN, 0
|
@@ -35,12 +35,12 @@ module Google
|
|
35
35
|
self.service_name = 'google.cloud.dataproc.v1.WorkflowTemplateService'
|
36
36
|
|
37
37
|
# Creates new workflow template.
|
38
|
-
rpc :CreateWorkflowTemplate, Google::Cloud::Dataproc::V1::CreateWorkflowTemplateRequest, Google::Cloud::Dataproc::V1::WorkflowTemplate
|
38
|
+
rpc :CreateWorkflowTemplate, ::Google::Cloud::Dataproc::V1::CreateWorkflowTemplateRequest, ::Google::Cloud::Dataproc::V1::WorkflowTemplate
|
39
39
|
# Retrieves the latest workflow template.
|
40
40
|
#
|
41
41
|
# Can retrieve previously instantiated template by specifying optional
|
42
42
|
# version parameter.
|
43
|
-
rpc :GetWorkflowTemplate, Google::Cloud::Dataproc::V1::GetWorkflowTemplateRequest, Google::Cloud::Dataproc::V1::WorkflowTemplate
|
43
|
+
rpc :GetWorkflowTemplate, ::Google::Cloud::Dataproc::V1::GetWorkflowTemplateRequest, ::Google::Cloud::Dataproc::V1::WorkflowTemplate
|
44
44
|
# Instantiates a template and begins execution.
|
45
45
|
#
|
46
46
|
# The returned Operation can be used to track execution of
|
@@ -61,11 +61,12 @@ module Google
|
|
61
61
|
# On successful completion,
|
62
62
|
# [Operation.response][google.longrunning.Operation.response] will be
|
63
63
|
# [Empty][google.protobuf.Empty].
|
64
|
-
rpc :InstantiateWorkflowTemplate, Google::Cloud::Dataproc::V1::InstantiateWorkflowTemplateRequest, Google::Longrunning::Operation
|
64
|
+
rpc :InstantiateWorkflowTemplate, ::Google::Cloud::Dataproc::V1::InstantiateWorkflowTemplateRequest, ::Google::Longrunning::Operation
|
65
65
|
# Instantiates a template and begins execution.
|
66
66
|
#
|
67
67
|
# This method is equivalent to executing the sequence
|
68
|
-
# [CreateWorkflowTemplate][google.cloud.dataproc.v1.WorkflowTemplateService.CreateWorkflowTemplate],
|
68
|
+
# [CreateWorkflowTemplate][google.cloud.dataproc.v1.WorkflowTemplateService.CreateWorkflowTemplate],
|
69
|
+
# [InstantiateWorkflowTemplate][google.cloud.dataproc.v1.WorkflowTemplateService.InstantiateWorkflowTemplate],
|
69
70
|
# [DeleteWorkflowTemplate][google.cloud.dataproc.v1.WorkflowTemplateService.DeleteWorkflowTemplate].
|
70
71
|
#
|
71
72
|
# The returned Operation can be used to track execution of
|
@@ -86,14 +87,14 @@ module Google
|
|
86
87
|
# On successful completion,
|
87
88
|
# [Operation.response][google.longrunning.Operation.response] will be
|
88
89
|
# [Empty][google.protobuf.Empty].
|
89
|
-
rpc :InstantiateInlineWorkflowTemplate, Google::Cloud::Dataproc::V1::InstantiateInlineWorkflowTemplateRequest, Google::Longrunning::Operation
|
90
|
+
rpc :InstantiateInlineWorkflowTemplate, ::Google::Cloud::Dataproc::V1::InstantiateInlineWorkflowTemplateRequest, ::Google::Longrunning::Operation
|
90
91
|
# Updates (replaces) workflow template. The updated template
|
91
92
|
# must contain version that matches the current server version.
|
92
|
-
rpc :UpdateWorkflowTemplate, Google::Cloud::Dataproc::V1::UpdateWorkflowTemplateRequest, Google::Cloud::Dataproc::V1::WorkflowTemplate
|
93
|
+
rpc :UpdateWorkflowTemplate, ::Google::Cloud::Dataproc::V1::UpdateWorkflowTemplateRequest, ::Google::Cloud::Dataproc::V1::WorkflowTemplate
|
93
94
|
# Lists workflows that match the specified filter in the request.
|
94
|
-
rpc :ListWorkflowTemplates, Google::Cloud::Dataproc::V1::ListWorkflowTemplatesRequest, Google::Cloud::Dataproc::V1::ListWorkflowTemplatesResponse
|
95
|
+
rpc :ListWorkflowTemplates, ::Google::Cloud::Dataproc::V1::ListWorkflowTemplatesRequest, ::Google::Cloud::Dataproc::V1::ListWorkflowTemplatesResponse
|
95
96
|
# Deletes a workflow template. It does not cancel in-progress workflows.
|
96
|
-
rpc :DeleteWorkflowTemplate, Google::Cloud::Dataproc::V1::DeleteWorkflowTemplateRequest, Google::Protobuf::Empty
|
97
|
+
rpc :DeleteWorkflowTemplate, ::Google::Cloud::Dataproc::V1::DeleteWorkflowTemplateRequest, ::Google::Protobuf::Empty
|
97
98
|
end
|
98
99
|
|
99
100
|
Stub = Service.rpc_stub_class
|
@@ -54,6 +54,12 @@ module Google
|
|
54
54
|
# This indicates that the field may be set once in a request to create a
|
55
55
|
# resource, but may not be changed thereafter.
|
56
56
|
IMMUTABLE = 5
|
57
|
+
|
58
|
+
# Denotes that a (repeated) field is an unordered list.
|
59
|
+
# This indicates that the service may provide the elements of the list
|
60
|
+
# in any arbitrary order, rather than the order the user originally
|
61
|
+
# provided. Additionally, the list's order may or may not be stable.
|
62
|
+
UNORDERED_LIST = 6
|
57
63
|
end
|
58
64
|
end
|
59
65
|
end
|
@@ -43,12 +43,12 @@ module Google
|
|
43
43
|
#
|
44
44
|
# The ResourceDescriptor Yaml config will look like:
|
45
45
|
#
|
46
|
-
#
|
47
|
-
#
|
48
|
-
#
|
49
|
-
#
|
50
|
-
#
|
51
|
-
#
|
46
|
+
# resources:
|
47
|
+
# - type: "pubsub.googleapis.com/Topic"
|
48
|
+
# name_descriptor:
|
49
|
+
# - pattern: "projects/{project}/topics/{topic}"
|
50
|
+
# parent_type: "cloudresourcemanager.googleapis.com/Project"
|
51
|
+
# parent_name_extractor: "projects/{project}"
|
52
52
|
#
|
53
53
|
# Sometimes, resources have multiple patterns, typically because they can
|
54
54
|
# live under multiple parents.
|
@@ -183,15 +183,24 @@ module Google
|
|
183
183
|
# }
|
184
184
|
# @!attribute [rw] plural
|
185
185
|
# @return [::String]
|
186
|
-
# The plural name used in the resource name, such as
|
187
|
-
# the name of 'projects/\\{project}'
|
188
|
-
#
|
186
|
+
# The plural name used in the resource name and permission names, such as
|
187
|
+
# 'projects' for the resource name of 'projects/\\{project}' and the permission
|
188
|
+
# name of 'cloudresourcemanager.googleapis.com/projects.get'. It is the same
|
189
|
+
# concept of the `plural` field in k8s CRD spec
|
189
190
|
# https://kubernetes.io/docs/tasks/access-kubernetes-api/custom-resources/custom-resource-definitions/
|
191
|
+
#
|
192
|
+
# Note: The plural form is required even for singleton resources. See
|
193
|
+
# https://aip.dev/156
|
190
194
|
# @!attribute [rw] singular
|
191
195
|
# @return [::String]
|
192
196
|
# The same concept of the `singular` field in k8s CRD spec
|
193
197
|
# https://kubernetes.io/docs/tasks/access-kubernetes-api/custom-resources/custom-resource-definitions/
|
194
198
|
# Such as "project" for the `resourcemanager.googleapis.com/Project` type.
|
199
|
+
# @!attribute [rw] style
|
200
|
+
# @return [::Array<::Google::Api::ResourceDescriptor::Style>]
|
201
|
+
# Style flag(s) for this resource.
|
202
|
+
# These indicate that a resource is expected to conform to a given
|
203
|
+
# style. See the specific style flags for additional information.
|
195
204
|
class ResourceDescriptor
|
196
205
|
include ::Google::Protobuf::MessageExts
|
197
206
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
@@ -211,6 +220,22 @@ module Google
|
|
211
220
|
# that from being necessary once there are multiple patterns.)
|
212
221
|
FUTURE_MULTI_PATTERN = 2
|
213
222
|
end
|
223
|
+
|
224
|
+
# A flag representing a specific style that a resource claims to conform to.
|
225
|
+
module Style
|
226
|
+
# The unspecified value. Do not use.
|
227
|
+
STYLE_UNSPECIFIED = 0
|
228
|
+
|
229
|
+
# This resource is intended to be "declarative-friendly".
|
230
|
+
#
|
231
|
+
# Declarative-friendly resources must be more strictly consistent, and
|
232
|
+
# setting this to true communicates to tools that this resource should
|
233
|
+
# adhere to declarative-friendly expectations.
|
234
|
+
#
|
235
|
+
# Note: This is used by the API linter (linter.aip.dev) to enable
|
236
|
+
# additional checks.
|
237
|
+
DECLARATIVE_FRIENDLY = 1
|
238
|
+
end
|
214
239
|
end
|
215
240
|
|
216
241
|
# Defines a proto annotation that describes a string field that refers to
|
@@ -226,6 +251,17 @@ module Google
|
|
226
251
|
# type: "pubsub.googleapis.com/Topic"
|
227
252
|
# }];
|
228
253
|
# }
|
254
|
+
#
|
255
|
+
# Occasionally, a field may reference an arbitrary resource. In this case,
|
256
|
+
# APIs use the special value * in their resource reference.
|
257
|
+
#
|
258
|
+
# Example:
|
259
|
+
#
|
260
|
+
# message GetIamPolicyRequest {
|
261
|
+
# string resource = 2 [(google.api.resource_reference) = {
|
262
|
+
# type: "*"
|
263
|
+
# }];
|
264
|
+
# }
|
229
265
|
# @!attribute [rw] child_type
|
230
266
|
# @return [::String]
|
231
267
|
# The resource type of a child collection that the annotated field
|
@@ -234,11 +270,11 @@ module Google
|
|
234
270
|
#
|
235
271
|
# Example:
|
236
272
|
#
|
237
|
-
#
|
238
|
-
#
|
239
|
-
#
|
240
|
-
#
|
241
|
-
#
|
273
|
+
# message ListLogEntriesRequest {
|
274
|
+
# string parent = 1 [(google.api.resource_reference) = {
|
275
|
+
# child_type: "logging.googleapis.com/LogEntry"
|
276
|
+
# };
|
277
|
+
# }
|
242
278
|
class ResourceReference
|
243
279
|
include ::Google::Protobuf::MessageExts
|
244
280
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
@@ -85,6 +85,8 @@ module Google
|
|
85
85
|
# and manage this project-level, per-location bucket (see
|
86
86
|
# [Dataproc staging
|
87
87
|
# bucket](https://cloud.google.com/dataproc/docs/concepts/configuring-clusters/staging-bucket)).
|
88
|
+
# **This field requires a Cloud Storage bucket name, not a URI to a Cloud
|
89
|
+
# Storage bucket.**
|
88
90
|
# @!attribute [rw] temp_bucket
|
89
91
|
# @return [::String]
|
90
92
|
# Optional. A Cloud Storage bucket used to store ephemeral cluster and jobs data,
|
@@ -96,6 +98,8 @@ module Google
|
|
96
98
|
# and manage this project-level, per-location bucket. The default bucket has
|
97
99
|
# a TTL of 90 days, but you can use any TTL (or none) if you specify a
|
98
100
|
# bucket.
|
101
|
+
# **This field requires a Cloud Storage bucket name, not a URI to a Cloud
|
102
|
+
# Storage bucket.**
|
99
103
|
# @!attribute [rw] gce_cluster_config
|
100
104
|
# @return [::Google::Cloud::Dataproc::V1::GceClusterConfig]
|
101
105
|
# Optional. The shared Compute Engine config settings for
|
@@ -146,11 +150,42 @@ module Google
|
|
146
150
|
# @!attribute [rw] endpoint_config
|
147
151
|
# @return [::Google::Cloud::Dataproc::V1::EndpointConfig]
|
148
152
|
# Optional. Port/endpoint configuration for this cluster
|
153
|
+
# @!attribute [rw] metastore_config
|
154
|
+
# @return [::Google::Cloud::Dataproc::V1::MetastoreConfig]
|
155
|
+
# Optional. Metastore configuration.
|
156
|
+
# @!attribute [rw] gke_cluster_config
|
157
|
+
# @return [::Google::Cloud::Dataproc::V1::GkeClusterConfig]
|
158
|
+
# Optional. BETA. The Kubernetes Engine config for Dataproc clusters deployed to
|
159
|
+
# Kubernetes. Setting this is considered mutually exclusive with Compute
|
160
|
+
# Engine-based options such as `gce_cluster_config`, `master_config`,
|
161
|
+
# `worker_config`, `secondary_worker_config`, and `autoscaling_config`.
|
149
162
|
class ClusterConfig
|
150
163
|
include ::Google::Protobuf::MessageExts
|
151
164
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
152
165
|
end
|
153
166
|
|
167
|
+
# The GKE config for this cluster.
|
168
|
+
# @!attribute [rw] namespaced_gke_deployment_target
|
169
|
+
# @return [::Google::Cloud::Dataproc::V1::GkeClusterConfig::NamespacedGkeDeploymentTarget]
|
170
|
+
# Optional. A target for the deployment.
|
171
|
+
class GkeClusterConfig
|
172
|
+
include ::Google::Protobuf::MessageExts
|
173
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
174
|
+
|
175
|
+
# A full, namespace-isolated deployment target for an existing GKE cluster.
|
176
|
+
# @!attribute [rw] target_gke_cluster
|
177
|
+
# @return [::String]
|
178
|
+
# Optional. The target GKE cluster to deploy to.
|
179
|
+
# Format: 'projects/\\{project}/locations/\\{location}/clusters/\\{cluster_id}'
|
180
|
+
# @!attribute [rw] cluster_namespace
|
181
|
+
# @return [::String]
|
182
|
+
# Optional. A namespace within the GKE cluster to deploy into.
|
183
|
+
class NamespacedGkeDeploymentTarget
|
184
|
+
include ::Google::Protobuf::MessageExts
|
185
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
186
|
+
end
|
187
|
+
end
|
188
|
+
|
154
189
|
# Endpoint config for this cluster
|
155
190
|
# @!attribute [r] http_ports
|
156
191
|
# @return [::Google::Protobuf::Map{::String => ::String}]
|
@@ -248,6 +283,9 @@ module Google
|
|
248
283
|
# instance. This `internal_ip_only` restriction can only be enabled for
|
249
284
|
# subnetwork enabled networks, and all off-cluster dependencies must be
|
250
285
|
# configured to be accessible without external IP addresses.
|
286
|
+
# @!attribute [rw] private_ipv6_google_access
|
287
|
+
# @return [::Google::Cloud::Dataproc::V1::GceClusterConfig::PrivateIpv6GoogleAccess]
|
288
|
+
# Optional. The type of IPv6 access for a cluster.
|
251
289
|
# @!attribute [rw] service_account
|
252
290
|
# @return [::String]
|
253
291
|
# Optional. The [Dataproc service
|
@@ -289,6 +327,13 @@ module Google
|
|
289
327
|
# @!attribute [rw] reservation_affinity
|
290
328
|
# @return [::Google::Cloud::Dataproc::V1::ReservationAffinity]
|
291
329
|
# Optional. Reservation Affinity for consuming Zonal reservation.
|
330
|
+
# @!attribute [rw] node_group_affinity
|
331
|
+
# @return [::Google::Cloud::Dataproc::V1::NodeGroupAffinity]
|
332
|
+
# Optional. Node Group Affinity for sole-tenant clusters.
|
333
|
+
# @!attribute [rw] shielded_instance_config
|
334
|
+
# @return [::Google::Cloud::Dataproc::V1::ShieldedInstanceConfig]
|
335
|
+
# Optional. Shielded Instance Config for clusters using [Compute Engine Shielded
|
336
|
+
# VMs](https://cloud.google.com/security/shielded-cloud/shielded-vm).
|
292
337
|
class GceClusterConfig
|
293
338
|
include ::Google::Protobuf::MessageExts
|
294
339
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
@@ -301,6 +346,64 @@ module Google
|
|
301
346
|
include ::Google::Protobuf::MessageExts
|
302
347
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
303
348
|
end
|
349
|
+
|
350
|
+
# `PrivateIpv6GoogleAccess` controls whether and how Dataproc cluster nodes
|
351
|
+
# can communicate with Google Services through gRPC over IPv6.
|
352
|
+
# These values are directly mapped to corresponding values in the
|
353
|
+
# [Compute Engine Instance
|
354
|
+
# fields](https://cloud.google.com/compute/docs/reference/rest/v1/instances).
|
355
|
+
module PrivateIpv6GoogleAccess
|
356
|
+
# If unspecified, Compute Engine default behavior will apply, which
|
357
|
+
# is the same as {::Google::Cloud::Dataproc::V1::GceClusterConfig::PrivateIpv6GoogleAccess::INHERIT_FROM_SUBNETWORK INHERIT_FROM_SUBNETWORK}.
|
358
|
+
PRIVATE_IPV6_GOOGLE_ACCESS_UNSPECIFIED = 0
|
359
|
+
|
360
|
+
# Private access to and from Google Services configuration
|
361
|
+
# inherited from the subnetwork configuration. This is the
|
362
|
+
# default Compute Engine behavior.
|
363
|
+
INHERIT_FROM_SUBNETWORK = 1
|
364
|
+
|
365
|
+
# Enables outbound private IPv6 access to Google Services from the Dataproc
|
366
|
+
# cluster.
|
367
|
+
OUTBOUND = 2
|
368
|
+
|
369
|
+
# Enables bidirectional private IPv6 access between Google Services and the
|
370
|
+
# Dataproc cluster.
|
371
|
+
BIDIRECTIONAL = 3
|
372
|
+
end
|
373
|
+
end
|
374
|
+
|
375
|
+
# Node Group Affinity for clusters using sole-tenant node groups.
|
376
|
+
# @!attribute [rw] node_group_uri
|
377
|
+
# @return [::String]
|
378
|
+
# Required. The URI of a
|
379
|
+
# sole-tenant [node group
|
380
|
+
# resource](https://cloud.google.com/compute/docs/reference/rest/v1/nodeGroups)
|
381
|
+
# that the cluster will be created on.
|
382
|
+
#
|
383
|
+
# A full URL, partial URI, or node group name are valid. Examples:
|
384
|
+
#
|
385
|
+
# * `https://www.googleapis.com/compute/v1/projects/[project_id]/zones/us-central1-a/nodeGroups/node-group-1`
|
386
|
+
# * `projects/[project_id]/zones/us-central1-a/nodeGroups/node-group-1`
|
387
|
+
# * `node-group-1`
|
388
|
+
class NodeGroupAffinity
|
389
|
+
include ::Google::Protobuf::MessageExts
|
390
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
391
|
+
end
|
392
|
+
|
393
|
+
# Shielded Instance Config for clusters using [Compute Engine Shielded
|
394
|
+
# VMs](https://cloud.google.com/security/shielded-cloud/shielded-vm).
|
395
|
+
# @!attribute [rw] enable_secure_boot
|
396
|
+
# @return [::Boolean]
|
397
|
+
# Optional. Defines whether instances have Secure Boot enabled.
|
398
|
+
# @!attribute [rw] enable_vtpm
|
399
|
+
# @return [::Boolean]
|
400
|
+
# Optional. Defines whether instances have the vTPM enabled.
|
401
|
+
# @!attribute [rw] enable_integrity_monitoring
|
402
|
+
# @return [::Boolean]
|
403
|
+
# Optional. Defines whether instances have integrity monitoring enabled.
|
404
|
+
class ShieldedInstanceConfig
|
405
|
+
include ::Google::Protobuf::MessageExts
|
406
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
304
407
|
end
|
305
408
|
|
306
409
|
# The config settings for Compute Engine resources in
|
@@ -308,7 +411,11 @@ module Google
|
|
308
411
|
# @!attribute [rw] num_instances
|
309
412
|
# @return [::Integer]
|
310
413
|
# Optional. The number of VM instances in the instance group.
|
311
|
-
# For
|
414
|
+
# For [HA
|
415
|
+
# cluster](/dataproc/docs/concepts/configuring-clusters/high-availability)
|
416
|
+
# [master_config](#FIELDS.master_config) groups, **must be set to 3**.
|
417
|
+
# For standard cluster [master_config](#FIELDS.master_config) groups,
|
418
|
+
# **must be set to 1**.
|
312
419
|
# @!attribute [r] instance_names
|
313
420
|
# @return [::Array<::String>]
|
314
421
|
# Output only. The list of instance names. Dataproc derives the names
|
@@ -450,8 +557,10 @@ module Google
|
|
450
557
|
# @!attribute [rw] boot_disk_type
|
451
558
|
# @return [::String]
|
452
559
|
# Optional. Type of the boot disk (default is "pd-standard").
|
453
|
-
# Valid values: "pd-
|
454
|
-
# "pd-
|
560
|
+
# Valid values: "pd-balanced" (Persistent Disk Balanced Solid State Drive),
|
561
|
+
# "pd-ssd" (Persistent Disk Solid State Drive),
|
562
|
+
# or "pd-standard" (Persistent Disk Hard Disk Drive).
|
563
|
+
# See [Disk types](https://cloud.google.com/compute/docs/disks#disk-types).
|
455
564
|
# @!attribute [rw] boot_disk_size_gb
|
456
565
|
# @return [::Integer]
|
457
566
|
# Optional. Size in GB of the boot disk (default is 500GB).
|
@@ -525,6 +634,15 @@ module Google
|
|
525
634
|
|
526
635
|
# The cluster is being updated. It continues to accept and process jobs.
|
527
636
|
UPDATING = 5
|
637
|
+
|
638
|
+
# The cluster is being stopped. It cannot be used.
|
639
|
+
STOPPING = 6
|
640
|
+
|
641
|
+
# The cluster is currently stopped. It is not ready for use.
|
642
|
+
STOPPED = 7
|
643
|
+
|
644
|
+
# The cluster is being started. It is not ready for use.
|
645
|
+
STARTING = 8
|
528
646
|
end
|
529
647
|
|
530
648
|
# The cluster substate.
|
@@ -547,10 +665,14 @@ module Google
|
|
547
665
|
end
|
548
666
|
end
|
549
667
|
|
550
|
-
# Security related configuration, including Kerberos.
|
668
|
+
# Security related configuration, including encryption, Kerberos, etc.
|
551
669
|
# @!attribute [rw] kerberos_config
|
552
670
|
# @return [::Google::Cloud::Dataproc::V1::KerberosConfig]
|
553
|
-
# Kerberos related configuration.
|
671
|
+
# Optional. Kerberos related configuration.
|
672
|
+
# @!attribute [rw] identity_config
|
673
|
+
# @return [::Google::Cloud::Dataproc::V1::IdentityConfig]
|
674
|
+
# Optional. Identity related configuration, including service account based
|
675
|
+
# secure multi-tenancy user mappings.
|
554
676
|
class SecurityConfig
|
555
677
|
include ::Google::Protobuf::MessageExts
|
556
678
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
@@ -563,11 +685,11 @@ module Google
|
|
563
685
|
# this field to true to enable Kerberos on a cluster.
|
564
686
|
# @!attribute [rw] root_principal_password_uri
|
565
687
|
# @return [::String]
|
566
|
-
#
|
688
|
+
# Optional. The Cloud Storage URI of a KMS encrypted file containing the root
|
567
689
|
# principal password.
|
568
690
|
# @!attribute [rw] kms_key_uri
|
569
691
|
# @return [::String]
|
570
|
-
#
|
692
|
+
# Optional. The uri of the KMS key used to encrypt various sensitive
|
571
693
|
# files.
|
572
694
|
# @!attribute [rw] keystore_uri
|
573
695
|
# @return [::String]
|
@@ -629,6 +751,25 @@ module Google
|
|
629
751
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
630
752
|
end
|
631
753
|
|
754
|
+
# Identity related configuration, including service account based
|
755
|
+
# secure multi-tenancy user mappings.
|
756
|
+
# @!attribute [rw] user_service_account_mapping
|
757
|
+
# @return [::Google::Protobuf::Map{::String => ::String}]
|
758
|
+
# Required. Map of user to service account.
|
759
|
+
class IdentityConfig
|
760
|
+
include ::Google::Protobuf::MessageExts
|
761
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
762
|
+
|
763
|
+
# @!attribute [rw] key
|
764
|
+
# @return [::String]
|
765
|
+
# @!attribute [rw] value
|
766
|
+
# @return [::String]
|
767
|
+
class UserServiceAccountMappingEntry
|
768
|
+
include ::Google::Protobuf::MessageExts
|
769
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
770
|
+
end
|
771
|
+
end
|
772
|
+
|
632
773
|
# Specifies the selection and config of software inside the cluster.
|
633
774
|
# @!attribute [rw] image_version
|
634
775
|
# @return [::String]
|
@@ -681,9 +822,9 @@ module Google
|
|
681
822
|
# @return [::Google::Protobuf::Duration]
|
682
823
|
# Optional. The duration to keep the cluster alive while idling (when no jobs
|
683
824
|
# are running). Passing this threshold will cause the cluster to be
|
684
|
-
# deleted. Minimum value is
|
825
|
+
# deleted. Minimum value is 5 minutes; maximum value is 14 days (see JSON
|
685
826
|
# representation of
|
686
|
-
# [Duration](https://developers.google.com/protocol-buffers/docs/proto3#json).
|
827
|
+
# [Duration](https://developers.google.com/protocol-buffers/docs/proto3#json)).
|
687
828
|
# @!attribute [rw] auto_delete_time
|
688
829
|
# @return [::Google::Protobuf::Timestamp]
|
689
830
|
# Optional. The time when cluster will be auto-deleted (see JSON representation of
|
@@ -705,6 +846,19 @@ module Google
|
|
705
846
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
706
847
|
end
|
707
848
|
|
849
|
+
# Specifies a Metastore configuration.
|
850
|
+
# @!attribute [rw] dataproc_metastore_service
|
851
|
+
# @return [::String]
|
852
|
+
# Required. Resource name of an existing Dataproc Metastore service.
|
853
|
+
#
|
854
|
+
# Example:
|
855
|
+
#
|
856
|
+
# * `projects/[project_id]/locations/[dataproc_region]/services/[service-name]`
|
857
|
+
class MetastoreConfig
|
858
|
+
include ::Google::Protobuf::MessageExts
|
859
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
860
|
+
end
|
861
|
+
|
708
862
|
# Contains cluster daemon metrics, such as HDFS and YARN stats.
|
709
863
|
#
|
710
864
|
# **Beta Feature**: This report is available for testing purposes only. It may
|
@@ -751,9 +905,9 @@ module Google
|
|
751
905
|
# Required. The cluster to create.
|
752
906
|
# @!attribute [rw] request_id
|
753
907
|
# @return [::String]
|
754
|
-
# Optional. A unique id used to identify the request. If the server
|
755
|
-
#
|
756
|
-
# id, then the second request will be ignored and the
|
908
|
+
# Optional. A unique id used to identify the request. If the server receives two
|
909
|
+
# [CreateClusterRequest](https://cloud.google.com/dataproc/docs/reference/rpc/google.cloud.dataproc.v1#google.cloud.dataproc.v1.CreateClusterRequest)s
|
910
|
+
# with the same id, then the second request will be ignored and the
|
757
911
|
# first {::Google::Longrunning::Operation google.longrunning.Operation} created and stored in the backend
|
758
912
|
# is returned.
|
759
913
|
#
|
@@ -848,8 +1002,9 @@ module Google
|
|
848
1002
|
# @!attribute [rw] request_id
|
849
1003
|
# @return [::String]
|
850
1004
|
# Optional. A unique id used to identify the request. If the server
|
851
|
-
# receives two
|
852
|
-
#
|
1005
|
+
# receives two
|
1006
|
+
# [UpdateClusterRequest](https://cloud.google.com/dataproc/docs/reference/rpc/google.cloud.dataproc.v1#google.cloud.dataproc.v1.UpdateClusterRequest)s
|
1007
|
+
# with the same id, then the second request will be ignored and the
|
853
1008
|
# first {::Google::Longrunning::Operation google.longrunning.Operation} created and stored in the
|
854
1009
|
# backend is returned.
|
855
1010
|
#
|
@@ -863,6 +1018,74 @@ module Google
|
|
863
1018
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
864
1019
|
end
|
865
1020
|
|
1021
|
+
# A request to stop a cluster.
|
1022
|
+
# @!attribute [rw] project_id
|
1023
|
+
# @return [::String]
|
1024
|
+
# Required. The ID of the Google Cloud Platform project the
|
1025
|
+
# cluster belongs to.
|
1026
|
+
# @!attribute [rw] region
|
1027
|
+
# @return [::String]
|
1028
|
+
# Required. The Dataproc region in which to handle the request.
|
1029
|
+
# @!attribute [rw] cluster_name
|
1030
|
+
# @return [::String]
|
1031
|
+
# Required. The cluster name.
|
1032
|
+
# @!attribute [rw] cluster_uuid
|
1033
|
+
# @return [::String]
|
1034
|
+
# Optional. Specifying the `cluster_uuid` means the RPC will fail
|
1035
|
+
# (with error NOT_FOUND) if a cluster with the specified UUID does not exist.
|
1036
|
+
# @!attribute [rw] request_id
|
1037
|
+
# @return [::String]
|
1038
|
+
# Optional. A unique id used to identify the request. If the server
|
1039
|
+
# receives two
|
1040
|
+
# [StopClusterRequest](https://cloud.google.com/dataproc/docs/reference/rpc/google.cloud.dataproc.v1#google.cloud.dataproc.v1.StopClusterRequest)s
|
1041
|
+
# with the same id, then the second request will be ignored and the
|
1042
|
+
# first {::Google::Longrunning::Operation google.longrunning.Operation} created and stored in the
|
1043
|
+
# backend is returned.
|
1044
|
+
#
|
1045
|
+
# Recommendation: Set this value to a
|
1046
|
+
# [UUID](https://en.wikipedia.org/wiki/Universally_unique_identifier).
|
1047
|
+
#
|
1048
|
+
# The id must contain only letters (a-z, A-Z), numbers (0-9),
|
1049
|
+
# underscores (_), and hyphens (-). The maximum length is 40 characters.
|
1050
|
+
class StopClusterRequest
|
1051
|
+
include ::Google::Protobuf::MessageExts
|
1052
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
1053
|
+
end
|
1054
|
+
|
1055
|
+
# A request to start a cluster.
|
1056
|
+
# @!attribute [rw] project_id
|
1057
|
+
# @return [::String]
|
1058
|
+
# Required. The ID of the Google Cloud Platform project the
|
1059
|
+
# cluster belongs to.
|
1060
|
+
# @!attribute [rw] region
|
1061
|
+
# @return [::String]
|
1062
|
+
# Required. The Dataproc region in which to handle the request.
|
1063
|
+
# @!attribute [rw] cluster_name
|
1064
|
+
# @return [::String]
|
1065
|
+
# Required. The cluster name.
|
1066
|
+
# @!attribute [rw] cluster_uuid
|
1067
|
+
# @return [::String]
|
1068
|
+
# Optional. Specifying the `cluster_uuid` means the RPC will fail
|
1069
|
+
# (with error NOT_FOUND) if a cluster with the specified UUID does not exist.
|
1070
|
+
# @!attribute [rw] request_id
|
1071
|
+
# @return [::String]
|
1072
|
+
# Optional. A unique id used to identify the request. If the server
|
1073
|
+
# receives two
|
1074
|
+
# [StartClusterRequest](https://cloud.google.com/dataproc/docs/reference/rpc/google.cloud.dataproc.v1#google.cloud.dataproc.v1.StartClusterRequest)s
|
1075
|
+
# with the same id, then the second request will be ignored and the
|
1076
|
+
# first {::Google::Longrunning::Operation google.longrunning.Operation} created and stored in the
|
1077
|
+
# backend is returned.
|
1078
|
+
#
|
1079
|
+
# Recommendation: Set this value to a
|
1080
|
+
# [UUID](https://en.wikipedia.org/wiki/Universally_unique_identifier).
|
1081
|
+
#
|
1082
|
+
# The id must contain only letters (a-z, A-Z), numbers (0-9),
|
1083
|
+
# underscores (_), and hyphens (-). The maximum length is 40 characters.
|
1084
|
+
class StartClusterRequest
|
1085
|
+
include ::Google::Protobuf::MessageExts
|
1086
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
1087
|
+
end
|
1088
|
+
|
866
1089
|
# A request to delete a cluster.
|
867
1090
|
# @!attribute [rw] project_id
|
868
1091
|
# @return [::String]
|
@@ -881,8 +1104,9 @@ module Google
|
|
881
1104
|
# @!attribute [rw] request_id
|
882
1105
|
# @return [::String]
|
883
1106
|
# Optional. A unique id used to identify the request. If the server
|
884
|
-
# receives two
|
885
|
-
#
|
1107
|
+
# receives two
|
1108
|
+
# [DeleteClusterRequest](https://cloud.google.com/dataproc/docs/reference/rpc/google.cloud.dataproc.v1#google.cloud.dataproc.v1.DeleteClusterRequest)s
|
1109
|
+
# with the same id, then the second request will be ignored and the
|
886
1110
|
# first {::Google::Longrunning::Operation google.longrunning.Operation} created and stored in the
|
887
1111
|
# backend is returned.
|
888
1112
|
#
|