google-cloud-dataproc-v1 0.5.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.
@@ -42,6 +42,10 @@ module Google
42
42
  # [Operation.metadata][google.longrunning.Operation.metadata] will be
43
43
  # [ClusterOperationMetadata](https://cloud.google.com/dataproc/docs/reference/rpc/google.cloud.dataproc.v1#clusteroperationmetadata).
44
44
  rpc :UpdateCluster, ::Google::Cloud::Dataproc::V1::UpdateClusterRequest, ::Google::Longrunning::Operation
45
+ # Stops a cluster in a project.
46
+ rpc :StopCluster, ::Google::Cloud::Dataproc::V1::StopClusterRequest, ::Google::Longrunning::Operation
47
+ # Starts a cluster in a project.
48
+ rpc :StartCluster, ::Google::Cloud::Dataproc::V1::StartClusterRequest, ::Google::Longrunning::Operation
45
49
  # Deletes a cluster in a project. The returned
46
50
  # [Operation.metadata][google.longrunning.Operation.metadata] will be
47
51
  # [ClusterOperationMetadata](https://cloud.google.com/dataproc/docs/reference/rpc/google.cloud.dataproc.v1#clusteroperationmetadata).
@@ -243,8 +243,9 @@ module Google
243
243
  # Required. The job resource.
244
244
  # @param request_id [::String]
245
245
  # Optional. A unique id used to identify the request. If the server
246
- # receives two {::Google::Cloud::Dataproc::V1::SubmitJobRequest SubmitJobRequest} requests with the same
247
- # id, then the second request will be ignored and the
246
+ # receives two
247
+ # [SubmitJobRequest](https://cloud.google.com/dataproc/docs/reference/rpc/google.cloud.dataproc.v1#google.cloud.dataproc.v1.SubmitJobRequest)s
248
+ # with the same id, then the second request will be ignored and the
248
249
  # first {::Google::Cloud::Dataproc::V1::Job Job} created and stored in the backend
249
250
  # is returned.
250
251
  #
@@ -327,8 +328,9 @@ module Google
327
328
  # Required. The job resource.
328
329
  # @param request_id [::String]
329
330
  # Optional. A unique id used to identify the request. If the server
330
- # receives two {::Google::Cloud::Dataproc::V1::SubmitJobRequest SubmitJobRequest} requests with the same
331
- # id, then the second request will be ignored and the
331
+ # receives two
332
+ # [SubmitJobRequest](https://cloud.google.com/dataproc/docs/reference/rpc/google.cloud.dataproc.v1#google.cloud.dataproc.v1.SubmitJobRequest)s
333
+ # with the same id, then the second request will be ignored and the
332
334
  # first {::Google::Cloud::Dataproc::V1::Job Job} created and stored in the backend
333
335
  # is returned.
334
336
  #
@@ -116,6 +116,7 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
116
116
  add_message "google.cloud.dataproc.v1.JobPlacement" do
117
117
  optional :cluster_name, :string, 1
118
118
  optional :cluster_uuid, :string, 2
119
+ map :cluster_labels, :string, :string, 3
119
120
  end
120
121
  add_message "google.cloud.dataproc.v1.JobStatus" do
121
122
  optional :state, :enum, 1, "google.cloud.dataproc.v1.JobStatus.State"
@@ -187,6 +188,7 @@ Google::Protobuf::DescriptorPool.generated_pool.build do
187
188
  end
188
189
  add_message "google.cloud.dataproc.v1.JobScheduling" do
189
190
  optional :max_failures_per_hour, :int32, 1
191
+ optional :max_failures_total, :int32, 2
190
192
  end
191
193
  add_message "google.cloud.dataproc.v1.SubmitJobRequest" do
192
194
  optional :project_id, :string, 1
@@ -4,14 +4,21 @@
4
4
  require 'google/protobuf'
5
5
 
6
6
  require 'google/api/annotations_pb'
7
+ require 'google/api/field_behavior_pb'
7
8
  Google::Protobuf::DescriptorPool.generated_pool.build do
8
9
  add_file("google/cloud/dataproc/v1/shared.proto", :syntax => :proto3) do
9
10
  add_enum "google.cloud.dataproc.v1.Component" do
10
11
  value :COMPONENT_UNSPECIFIED, 0
11
12
  value :ANACONDA, 5
13
+ value :DOCKER, 13
14
+ value :DRUID, 9
15
+ value :FLINK, 14
16
+ value :HBASE, 11
12
17
  value :HIVE_WEBHCAT, 3
13
18
  value :JUPYTER, 1
14
19
  value :PRESTO, 6
20
+ value :RANGER, 12
21
+ value :SOLR, 10
15
22
  value :ZEPPELIN, 4
16
23
  value :ZOOKEEPER, 8
17
24
  end
@@ -21,7 +21,7 @@ module Google
21
21
  module Cloud
22
22
  module Dataproc
23
23
  module V1
24
- VERSION = "0.5.0"
24
+ VERSION = "0.6.0"
25
25
  end
26
26
  end
27
27
  end
@@ -446,7 +446,7 @@ module Google
446
446
  # underscores (_), and hyphens (-). The maximum length is 40 characters.
447
447
  # @param parameters [::Hash{::String => ::String}]
448
448
  # Optional. Map from parameter names to values that should be used for those
449
- # parameters. Values may not exceed 100 characters.
449
+ # parameters. Values may not exceed 1000 characters.
450
450
  #
451
451
  # @yield [response, operation] Access the result along with the RPC operation
452
452
  # @yieldparam response [::Gapic::Operation]
@@ -498,7 +498,8 @@ module Google
498
498
  # Instantiates a template and begins execution.
499
499
  #
500
500
  # This method is equivalent to executing the sequence
501
- # {::Google::Cloud::Dataproc::V1::WorkflowTemplateService::Client#create_workflow_template CreateWorkflowTemplate}, {::Google::Cloud::Dataproc::V1::WorkflowTemplateService::Client#instantiate_workflow_template InstantiateWorkflowTemplate},
501
+ # {::Google::Cloud::Dataproc::V1::WorkflowTemplateService::Client#create_workflow_template CreateWorkflowTemplate},
502
+ # {::Google::Cloud::Dataproc::V1::WorkflowTemplateService::Client#instantiate_workflow_template InstantiateWorkflowTemplate},
502
503
  # {::Google::Cloud::Dataproc::V1::WorkflowTemplateService::Client#delete_workflow_template DeleteWorkflowTemplate}.
503
504
  #
504
505
  # The returned Operation can be used to track execution of
@@ -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
  #
@@ -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
@@ -65,7 +65,8 @@ module Google
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], [InstantiateWorkflowTemplate][google.cloud.dataproc.v1.WorkflowTemplateService.InstantiateWorkflowTemplate],
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
@@ -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 master instance groups, must be set to 1.
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-ssd" (Persistent Disk Solid State Drive) or
454
- # "pd-standard" (Persistent Disk Hard Disk Drive).
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
- # Required. The Cloud Storage URI of a KMS encrypted file containing the root
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
- # Required. The uri of the KMS key used to encrypt various sensitive
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 10 minutes; maximum value is 14 days (see JSON
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
- # receives two {::Google::Cloud::Dataproc::V1::CreateClusterRequest CreateClusterRequest} requests with the same
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 {::Google::Cloud::Dataproc::V1::UpdateClusterRequest UpdateClusterRequest} requests with the same
852
- # id, then the second request will be ignored and the
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 {::Google::Cloud::Dataproc::V1::DeleteClusterRequest DeleteClusterRequest} requests with the same
885
- # id, then the second request will be ignored and the
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
  #