google-cloud-dataproc-v1 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (53) hide show
  1. checksums.yaml +7 -0
  2. data/.yardopts +12 -0
  3. data/AUTHENTICATION.md +169 -0
  4. data/LICENSE.md +203 -0
  5. data/README.md +71 -0
  6. data/lib/google/cloud/common_resources_pb.rb +15 -0
  7. data/lib/google/cloud/dataproc/v1/autoscaling_policies_pb.rb +81 -0
  8. data/lib/google/cloud/dataproc/v1/autoscaling_policies_services_pb.rb +58 -0
  9. data/lib/google/cloud/dataproc/v1/autoscaling_policy_service/client.rb +734 -0
  10. data/lib/google/cloud/dataproc/v1/autoscaling_policy_service/credentials.rb +51 -0
  11. data/lib/google/cloud/dataproc/v1/autoscaling_policy_service/paths.rb +110 -0
  12. data/lib/google/cloud/dataproc/v1/autoscaling_policy_service.rb +50 -0
  13. data/lib/google/cloud/dataproc/v1/cluster_controller/client.rb +970 -0
  14. data/lib/google/cloud/dataproc/v1/cluster_controller/credentials.rb +51 -0
  15. data/lib/google/cloud/dataproc/v1/cluster_controller/operations.rb +564 -0
  16. data/lib/google/cloud/dataproc/v1/cluster_controller.rb +50 -0
  17. data/lib/google/cloud/dataproc/v1/clusters_pb.rb +235 -0
  18. data/lib/google/cloud/dataproc/v1/clusters_services_pb.rb +68 -0
  19. data/lib/google/cloud/dataproc/v1/job_controller/client.rb +980 -0
  20. data/lib/google/cloud/dataproc/v1/job_controller/credentials.rb +51 -0
  21. data/lib/google/cloud/dataproc/v1/job_controller/operations.rb +564 -0
  22. data/lib/google/cloud/dataproc/v1/job_controller.rb +49 -0
  23. data/lib/google/cloud/dataproc/v1/jobs_pb.rb +282 -0
  24. data/lib/google/cloud/dataproc/v1/jobs_services_pb.rb +62 -0
  25. data/lib/google/cloud/dataproc/v1/operations_pb.rb +46 -0
  26. data/lib/google/cloud/dataproc/v1/shared_pb.rb +29 -0
  27. data/lib/google/cloud/dataproc/v1/version.rb +28 -0
  28. data/lib/google/cloud/dataproc/v1/workflow_template_service/client.rb +1024 -0
  29. data/lib/google/cloud/dataproc/v1/workflow_template_service/credentials.rb +51 -0
  30. data/lib/google/cloud/dataproc/v1/workflow_template_service/operations.rb +564 -0
  31. data/lib/google/cloud/dataproc/v1/workflow_template_service/paths.rb +110 -0
  32. data/lib/google/cloud/dataproc/v1/workflow_template_service.rb +51 -0
  33. data/lib/google/cloud/dataproc/v1/workflow_templates_pb.rb +187 -0
  34. data/lib/google/cloud/dataproc/v1/workflow_templates_services_pb.rb +104 -0
  35. data/lib/google/cloud/dataproc/v1.rb +38 -0
  36. data/lib/google-cloud-dataproc-v1.rb +21 -0
  37. data/proto_docs/README.md +4 -0
  38. data/proto_docs/google/api/field_behavior.rb +59 -0
  39. data/proto_docs/google/api/resource.rb +247 -0
  40. data/proto_docs/google/cloud/dataproc/v1/autoscaling_policies.rb +272 -0
  41. data/proto_docs/google/cloud/dataproc/v1/clusters.rb +961 -0
  42. data/proto_docs/google/cloud/dataproc/v1/jobs.rb +976 -0
  43. data/proto_docs/google/cloud/dataproc/v1/operations.rb +98 -0
  44. data/proto_docs/google/cloud/dataproc/v1/shared.rb +50 -0
  45. data/proto_docs/google/cloud/dataproc/v1/workflow_templates.rb +693 -0
  46. data/proto_docs/google/longrunning/operations.rb +150 -0
  47. data/proto_docs/google/protobuf/any.rb +138 -0
  48. data/proto_docs/google/protobuf/duration.rb +98 -0
  49. data/proto_docs/google/protobuf/empty.rb +36 -0
  50. data/proto_docs/google/protobuf/field_mask.rb +229 -0
  51. data/proto_docs/google/protobuf/timestamp.rb +120 -0
  52. data/proto_docs/google/rpc/status.rb +46 -0
  53. metadata +205 -0
@@ -0,0 +1,970 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2020 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+ require "google/cloud/errors"
20
+ require "google/cloud/dataproc/v1/clusters_pb"
21
+
22
+ module Google
23
+ module Cloud
24
+ module Dataproc
25
+ module V1
26
+ module ClusterController
27
+ ##
28
+ # Client for the ClusterController service.
29
+ #
30
+ # The ClusterControllerService provides methods to manage clusters
31
+ # of Compute Engine instances.
32
+ #
33
+ class Client
34
+ # @private
35
+ attr_reader :cluster_controller_stub
36
+
37
+ ##
38
+ # Configure the ClusterController Client class.
39
+ #
40
+ # See {Google::Cloud::Dataproc::V1::ClusterController::Client::Configuration}
41
+ # for a description of the configuration fields.
42
+ #
43
+ # ## Example
44
+ #
45
+ # To modify the configuration for all ClusterController clients:
46
+ #
47
+ # Google::Cloud::Dataproc::V1::ClusterController::Client.configure do |config|
48
+ # config.timeout = 10_000
49
+ # end
50
+ #
51
+ # @yield [config] Configure the Client client.
52
+ # @yieldparam config [Client::Configuration]
53
+ #
54
+ # @return [Client::Configuration]
55
+ #
56
+ def self.configure
57
+ @configure ||= begin
58
+ namespace = ["Google", "Cloud", "Dataproc", "V1"]
59
+ parent_config = while namespace.any?
60
+ parent_name = namespace.join "::"
61
+ parent_const = const_get parent_name
62
+ break parent_const.configure if parent_const&.respond_to? :configure
63
+ namespace.pop
64
+ end
65
+ default_config = Client::Configuration.new parent_config
66
+
67
+ default_config.rpcs.create_cluster.timeout = 300.0
68
+ default_config.rpcs.create_cluster.retry_policy = {
69
+ initial_delay: 0.1,
70
+ max_delay: 60.0,
71
+ multiplier: 1.3,
72
+ retry_codes: ["UNAVAILABLE"]
73
+ }
74
+
75
+ default_config.rpcs.update_cluster.timeout = 300.0
76
+ default_config.rpcs.update_cluster.retry_policy = {
77
+ initial_delay: 0.1,
78
+ max_delay: 60.0,
79
+ multiplier: 1.3,
80
+ retry_codes: ["UNAVAILABLE"]
81
+ }
82
+
83
+ default_config.rpcs.delete_cluster.timeout = 300.0
84
+ default_config.rpcs.delete_cluster.retry_policy = {
85
+ initial_delay: 0.1,
86
+ max_delay: 60.0,
87
+ multiplier: 1.3,
88
+ retry_codes: ["UNAVAILABLE"]
89
+ }
90
+
91
+ default_config.rpcs.get_cluster.timeout = 300.0
92
+ default_config.rpcs.get_cluster.retry_policy = {
93
+ initial_delay: 0.1,
94
+ max_delay: 60.0,
95
+ multiplier: 1.3,
96
+ retry_codes: ["INTERNAL", "DEADLINE_EXCEEDED", "UNAVAILABLE"]
97
+ }
98
+
99
+ default_config.rpcs.list_clusters.timeout = 300.0
100
+ default_config.rpcs.list_clusters.retry_policy = {
101
+ initial_delay: 0.1,
102
+ max_delay: 60.0,
103
+ multiplier: 1.3,
104
+ retry_codes: ["INTERNAL", "DEADLINE_EXCEEDED", "UNAVAILABLE"]
105
+ }
106
+
107
+ default_config.rpcs.diagnose_cluster.timeout = 300.0
108
+ default_config.rpcs.diagnose_cluster.retry_policy = {
109
+ initial_delay: 0.1,
110
+ max_delay: 60.0,
111
+ multiplier: 1.3,
112
+ retry_codes: ["UNAVAILABLE"]
113
+ }
114
+
115
+ default_config
116
+ end
117
+ yield @configure if block_given?
118
+ @configure
119
+ end
120
+
121
+ ##
122
+ # Configure the ClusterController Client instance.
123
+ #
124
+ # The configuration is set to the derived mode, meaning that values can be changed,
125
+ # but structural changes (adding new fields, etc.) are not allowed. Structural changes
126
+ # should be made on {Client.configure}.
127
+ #
128
+ # See {Google::Cloud::Dataproc::V1::ClusterController::Client::Configuration}
129
+ # for a description of the configuration fields.
130
+ #
131
+ # @yield [config] Configure the Client client.
132
+ # @yieldparam config [Client::Configuration]
133
+ #
134
+ # @return [Client::Configuration]
135
+ #
136
+ def configure
137
+ yield @config if block_given?
138
+ @config
139
+ end
140
+
141
+ ##
142
+ # Create a new ClusterController client object.
143
+ #
144
+ # ## Examples
145
+ #
146
+ # To create a new ClusterController client with the default
147
+ # configuration:
148
+ #
149
+ # client = Google::Cloud::Dataproc::V1::ClusterController::Client.new
150
+ #
151
+ # To create a new ClusterController client with a custom
152
+ # configuration:
153
+ #
154
+ # client = Google::Cloud::Dataproc::V1::ClusterController::Client.new do |config|
155
+ # config.timeout = 10_000
156
+ # end
157
+ #
158
+ # @yield [config] Configure the ClusterController client.
159
+ # @yieldparam config [Client::Configuration]
160
+ #
161
+ def initialize
162
+ # These require statements are intentionally placed here to initialize
163
+ # the gRPC module only when it's required.
164
+ # See https://github.com/googleapis/toolkit/issues/446
165
+ require "gapic/grpc"
166
+ require "google/cloud/dataproc/v1/clusters_services_pb"
167
+
168
+ # Create the configuration object
169
+ @config = Configuration.new Client.configure
170
+
171
+ # Yield the configuration if needed
172
+ yield @config if block_given?
173
+
174
+ # Create credentials
175
+ credentials = @config.credentials
176
+ credentials ||= Credentials.default scope: @config.scope
177
+ if credentials.is_a?(String) || credentials.is_a?(Hash)
178
+ credentials = Credentials.new credentials, scope: @config.scope
179
+ end
180
+ @quota_project_id = credentials.respond_to?(:quota_project_id) ? credentials.quota_project_id : nil
181
+
182
+ @operations_client = Operations.new do |config|
183
+ config.credentials = credentials
184
+ config.endpoint = @config.endpoint
185
+ end
186
+
187
+ @cluster_controller_stub = Gapic::ServiceStub.new(
188
+ Google::Cloud::Dataproc::V1::ClusterController::Stub,
189
+ credentials: credentials,
190
+ endpoint: @config.endpoint,
191
+ channel_args: @config.channel_args,
192
+ interceptors: @config.interceptors
193
+ )
194
+ end
195
+
196
+ ##
197
+ # Get the associated client for long-running operations.
198
+ #
199
+ # @return [Google::Cloud::Dataproc::V1::ClusterController::Operations]
200
+ #
201
+ attr_reader :operations_client
202
+
203
+ # Service calls
204
+
205
+ ##
206
+ # Creates a cluster in a project. The returned
207
+ # {Google::Longrunning::Operation#metadata Operation.metadata} will be
208
+ # [ClusterOperationMetadata](https://cloud.google.com/dataproc/docs/reference/rpc/google.cloud.dataproc.v1#clusteroperationmetadata).
209
+ #
210
+ # @overload create_cluster(request, options = nil)
211
+ # Pass arguments to `create_cluster` via a request object, either of type
212
+ # {Google::Cloud::Dataproc::V1::CreateClusterRequest} or an equivalent Hash.
213
+ #
214
+ # @param request [Google::Cloud::Dataproc::V1::CreateClusterRequest, Hash]
215
+ # A request object representing the call parameters. Required. To specify no
216
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
217
+ # @param options [Gapic::CallOptions, Hash]
218
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
219
+ #
220
+ # @overload create_cluster(project_id: nil, region: nil, cluster: nil, request_id: nil)
221
+ # Pass arguments to `create_cluster` via keyword arguments. Note that at
222
+ # least one keyword argument is required. To specify no parameters, or to keep all
223
+ # the default parameter values, pass an empty Hash as a request object (see above).
224
+ #
225
+ # @param project_id [String]
226
+ # Required. The ID of the Google Cloud Platform project that the cluster
227
+ # belongs to.
228
+ # @param region [String]
229
+ # Required. The Dataproc region in which to handle the request.
230
+ # @param cluster [Google::Cloud::Dataproc::V1::Cluster, Hash]
231
+ # Required. The cluster to create.
232
+ # @param request_id [String]
233
+ # Optional. A unique id used to identify the request. If the server
234
+ # receives two {Google::Cloud::Dataproc::V1::CreateClusterRequest CreateClusterRequest} requests with the same
235
+ # id, then the second request will be ignored and the
236
+ # first {Google::Longrunning::Operation google.longrunning.Operation} created and stored in the backend
237
+ # is returned.
238
+ #
239
+ # It is recommended to always set this value to a
240
+ # [UUID](https://en.wikipedia.org/wiki/Universally_unique_identifier).
241
+ #
242
+ # The id must contain only letters (a-z, A-Z), numbers (0-9),
243
+ # underscores (_), and hyphens (-). The maximum length is 40 characters.
244
+ #
245
+ # @yield [response, operation] Access the result along with the RPC operation
246
+ # @yieldparam response [Gapic::Operation]
247
+ # @yieldparam operation [GRPC::ActiveCall::Operation]
248
+ #
249
+ # @return [Gapic::Operation]
250
+ #
251
+ # @raise [Google::Cloud::Error] if the RPC is aborted.
252
+ #
253
+ def create_cluster request, options = nil
254
+ raise ArgumentError, "request must be provided" if request.nil?
255
+
256
+ request = Gapic::Protobuf.coerce request, to: Google::Cloud::Dataproc::V1::CreateClusterRequest
257
+
258
+ # Converts hash and nil to an options object
259
+ options = Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
260
+
261
+ # Customize the options with defaults
262
+ metadata = @config.rpcs.create_cluster.metadata.to_h
263
+
264
+ # Set x-goog-api-client and x-goog-user-project headers
265
+ metadata[:"x-goog-api-client"] ||= Gapic::Headers.x_goog_api_client \
266
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
267
+ gapic_version: ::Google::Cloud::Dataproc::V1::VERSION
268
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
269
+
270
+ header_params = {
271
+ "project_id" => request.project_id,
272
+ "region" => request.region
273
+ }
274
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
275
+ metadata[:"x-goog-request-params"] ||= request_params_header
276
+
277
+ options.apply_defaults timeout: @config.rpcs.create_cluster.timeout,
278
+ metadata: metadata,
279
+ retry_policy: @config.rpcs.create_cluster.retry_policy
280
+ options.apply_defaults metadata: @config.metadata,
281
+ retry_policy: @config.retry_policy
282
+
283
+ @cluster_controller_stub.call_rpc :create_cluster, request, options: options do |response, operation|
284
+ response = Gapic::Operation.new response, @operations_client, options: options
285
+ yield response, operation if block_given?
286
+ return response
287
+ end
288
+ rescue GRPC::BadStatus => e
289
+ raise Google::Cloud::Error.from_error(e)
290
+ end
291
+
292
+ ##
293
+ # Updates a cluster in a project. The returned
294
+ # {Google::Longrunning::Operation#metadata Operation.metadata} will be
295
+ # [ClusterOperationMetadata](https://cloud.google.com/dataproc/docs/reference/rpc/google.cloud.dataproc.v1#clusteroperationmetadata).
296
+ #
297
+ # @overload update_cluster(request, options = nil)
298
+ # Pass arguments to `update_cluster` via a request object, either of type
299
+ # {Google::Cloud::Dataproc::V1::UpdateClusterRequest} or an equivalent Hash.
300
+ #
301
+ # @param request [Google::Cloud::Dataproc::V1::UpdateClusterRequest, Hash]
302
+ # A request object representing the call parameters. Required. To specify no
303
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
304
+ # @param options [Gapic::CallOptions, Hash]
305
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
306
+ #
307
+ # @overload update_cluster(project_id: nil, region: nil, cluster_name: nil, cluster: nil, graceful_decommission_timeout: nil, update_mask: nil, request_id: nil)
308
+ # Pass arguments to `update_cluster` via keyword arguments. Note that at
309
+ # least one keyword argument is required. To specify no parameters, or to keep all
310
+ # the default parameter values, pass an empty Hash as a request object (see above).
311
+ #
312
+ # @param project_id [String]
313
+ # Required. The ID of the Google Cloud Platform project the
314
+ # cluster belongs to.
315
+ # @param region [String]
316
+ # Required. The Dataproc region in which to handle the request.
317
+ # @param cluster_name [String]
318
+ # Required. The cluster name.
319
+ # @param cluster [Google::Cloud::Dataproc::V1::Cluster, Hash]
320
+ # Required. The changes to the cluster.
321
+ # @param graceful_decommission_timeout [Google::Protobuf::Duration, Hash]
322
+ # Optional. Timeout for graceful YARN decomissioning. Graceful
323
+ # decommissioning allows removing nodes from the cluster without
324
+ # interrupting jobs in progress. Timeout specifies how long to wait for jobs
325
+ # in progress to finish before forcefully removing nodes (and potentially
326
+ # interrupting jobs). Default timeout is 0 (for forceful decommission), and
327
+ # the maximum allowed timeout is 1 day. (see JSON representation of
328
+ # [Duration](https://developers.google.com/protocol-buffers/docs/proto3#json)).
329
+ #
330
+ # Only supported on Dataproc image versions 1.2 and higher.
331
+ # @param update_mask [Google::Protobuf::FieldMask, Hash]
332
+ # Required. Specifies the path, relative to `Cluster`, of
333
+ # the field to update. For example, to change the number of workers
334
+ # in a cluster to 5, the `update_mask` parameter would be
335
+ # specified as `config.worker_config.num_instances`,
336
+ # and the `PATCH` request body would specify the new value, as follows:
337
+ #
338
+ # {
339
+ # "config":{
340
+ # "workerConfig":{
341
+ # "numInstances":"5"
342
+ # }
343
+ # }
344
+ # }
345
+ # Similarly, to change the number of preemptible workers in a cluster to 5,
346
+ # the `update_mask` parameter would be
347
+ # `config.secondary_worker_config.num_instances`, and the `PATCH` request
348
+ # body would be set as follows:
349
+ #
350
+ # {
351
+ # "config":{
352
+ # "secondaryWorkerConfig":{
353
+ # "numInstances":"5"
354
+ # }
355
+ # }
356
+ # }
357
+ # <strong>Note:</strong> Currently, only the following fields can be updated:
358
+ #
359
+ # <table>
360
+ # <tbody>
361
+ # <tr>
362
+ # <td><strong>Mask</strong></td>
363
+ # <td><strong>Purpose</strong></td>
364
+ # </tr>
365
+ # <tr>
366
+ # <td><strong><em>labels</em></strong></td>
367
+ # <td>Update labels</td>
368
+ # </tr>
369
+ # <tr>
370
+ # <td><strong><em>config.worker_config.num_instances</em></strong></td>
371
+ # <td>Resize primary worker group</td>
372
+ # </tr>
373
+ # <tr>
374
+ # <td><strong><em>config.secondary_worker_config.num_instances</em></strong></td>
375
+ # <td>Resize secondary worker group</td>
376
+ # </tr>
377
+ # <tr>
378
+ # <td>config.autoscaling_config.policy_uri</td><td>Use, stop using, or
379
+ # change autoscaling policies</td>
380
+ # </tr>
381
+ # </tbody>
382
+ # </table>
383
+ # @param request_id [String]
384
+ # Optional. A unique id used to identify the request. If the server
385
+ # receives two {Google::Cloud::Dataproc::V1::UpdateClusterRequest UpdateClusterRequest} requests with the same
386
+ # id, then the second request will be ignored and the
387
+ # first {Google::Longrunning::Operation google.longrunning.Operation} created and stored in the
388
+ # backend is returned.
389
+ #
390
+ # It is recommended to always set this value to a
391
+ # [UUID](https://en.wikipedia.org/wiki/Universally_unique_identifier).
392
+ #
393
+ # The id must contain only letters (a-z, A-Z), numbers (0-9),
394
+ # underscores (_), and hyphens (-). The maximum length is 40 characters.
395
+ #
396
+ # @yield [response, operation] Access the result along with the RPC operation
397
+ # @yieldparam response [Gapic::Operation]
398
+ # @yieldparam operation [GRPC::ActiveCall::Operation]
399
+ #
400
+ # @return [Gapic::Operation]
401
+ #
402
+ # @raise [Google::Cloud::Error] if the RPC is aborted.
403
+ #
404
+ def update_cluster request, options = nil
405
+ raise ArgumentError, "request must be provided" if request.nil?
406
+
407
+ request = Gapic::Protobuf.coerce request, to: Google::Cloud::Dataproc::V1::UpdateClusterRequest
408
+
409
+ # Converts hash and nil to an options object
410
+ options = Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
411
+
412
+ # Customize the options with defaults
413
+ metadata = @config.rpcs.update_cluster.metadata.to_h
414
+
415
+ # Set x-goog-api-client and x-goog-user-project headers
416
+ metadata[:"x-goog-api-client"] ||= Gapic::Headers.x_goog_api_client \
417
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
418
+ gapic_version: ::Google::Cloud::Dataproc::V1::VERSION
419
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
420
+
421
+ header_params = {
422
+ "project_id" => request.project_id,
423
+ "region" => request.region,
424
+ "cluster_name" => request.cluster_name
425
+ }
426
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
427
+ metadata[:"x-goog-request-params"] ||= request_params_header
428
+
429
+ options.apply_defaults timeout: @config.rpcs.update_cluster.timeout,
430
+ metadata: metadata,
431
+ retry_policy: @config.rpcs.update_cluster.retry_policy
432
+ options.apply_defaults metadata: @config.metadata,
433
+ retry_policy: @config.retry_policy
434
+
435
+ @cluster_controller_stub.call_rpc :update_cluster, request, options: options do |response, operation|
436
+ response = Gapic::Operation.new response, @operations_client, options: options
437
+ yield response, operation if block_given?
438
+ return response
439
+ end
440
+ rescue GRPC::BadStatus => e
441
+ raise Google::Cloud::Error.from_error(e)
442
+ end
443
+
444
+ ##
445
+ # Deletes a cluster in a project. The returned
446
+ # {Google::Longrunning::Operation#metadata Operation.metadata} will be
447
+ # [ClusterOperationMetadata](https://cloud.google.com/dataproc/docs/reference/rpc/google.cloud.dataproc.v1#clusteroperationmetadata).
448
+ #
449
+ # @overload delete_cluster(request, options = nil)
450
+ # Pass arguments to `delete_cluster` via a request object, either of type
451
+ # {Google::Cloud::Dataproc::V1::DeleteClusterRequest} or an equivalent Hash.
452
+ #
453
+ # @param request [Google::Cloud::Dataproc::V1::DeleteClusterRequest, Hash]
454
+ # A request object representing the call parameters. Required. To specify no
455
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
456
+ # @param options [Gapic::CallOptions, Hash]
457
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
458
+ #
459
+ # @overload delete_cluster(project_id: nil, region: nil, cluster_name: nil, cluster_uuid: nil, request_id: nil)
460
+ # Pass arguments to `delete_cluster` via keyword arguments. Note that at
461
+ # least one keyword argument is required. To specify no parameters, or to keep all
462
+ # the default parameter values, pass an empty Hash as a request object (see above).
463
+ #
464
+ # @param project_id [String]
465
+ # Required. The ID of the Google Cloud Platform project that the cluster
466
+ # belongs to.
467
+ # @param region [String]
468
+ # Required. The Dataproc region in which to handle the request.
469
+ # @param cluster_name [String]
470
+ # Required. The cluster name.
471
+ # @param cluster_uuid [String]
472
+ # Optional. Specifying the `cluster_uuid` means the RPC should fail
473
+ # (with error NOT_FOUND) if cluster with specified UUID does not exist.
474
+ # @param request_id [String]
475
+ # Optional. A unique id used to identify the request. If the server
476
+ # receives two {Google::Cloud::Dataproc::V1::DeleteClusterRequest DeleteClusterRequest} requests with the same
477
+ # id, then the second request will be ignored and the
478
+ # first {Google::Longrunning::Operation google.longrunning.Operation} created and stored in the
479
+ # backend is returned.
480
+ #
481
+ # It is recommended to always set this value to a
482
+ # [UUID](https://en.wikipedia.org/wiki/Universally_unique_identifier).
483
+ #
484
+ # The id must contain only letters (a-z, A-Z), numbers (0-9),
485
+ # underscores (_), and hyphens (-). The maximum length is 40 characters.
486
+ #
487
+ # @yield [response, operation] Access the result along with the RPC operation
488
+ # @yieldparam response [Gapic::Operation]
489
+ # @yieldparam operation [GRPC::ActiveCall::Operation]
490
+ #
491
+ # @return [Gapic::Operation]
492
+ #
493
+ # @raise [Google::Cloud::Error] if the RPC is aborted.
494
+ #
495
+ def delete_cluster request, options = nil
496
+ raise ArgumentError, "request must be provided" if request.nil?
497
+
498
+ request = Gapic::Protobuf.coerce request, to: Google::Cloud::Dataproc::V1::DeleteClusterRequest
499
+
500
+ # Converts hash and nil to an options object
501
+ options = Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
502
+
503
+ # Customize the options with defaults
504
+ metadata = @config.rpcs.delete_cluster.metadata.to_h
505
+
506
+ # Set x-goog-api-client and x-goog-user-project headers
507
+ metadata[:"x-goog-api-client"] ||= Gapic::Headers.x_goog_api_client \
508
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
509
+ gapic_version: ::Google::Cloud::Dataproc::V1::VERSION
510
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
511
+
512
+ header_params = {
513
+ "project_id" => request.project_id,
514
+ "region" => request.region,
515
+ "cluster_name" => request.cluster_name
516
+ }
517
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
518
+ metadata[:"x-goog-request-params"] ||= request_params_header
519
+
520
+ options.apply_defaults timeout: @config.rpcs.delete_cluster.timeout,
521
+ metadata: metadata,
522
+ retry_policy: @config.rpcs.delete_cluster.retry_policy
523
+ options.apply_defaults metadata: @config.metadata,
524
+ retry_policy: @config.retry_policy
525
+
526
+ @cluster_controller_stub.call_rpc :delete_cluster, request, options: options do |response, operation|
527
+ response = Gapic::Operation.new response, @operations_client, options: options
528
+ yield response, operation if block_given?
529
+ return response
530
+ end
531
+ rescue GRPC::BadStatus => e
532
+ raise Google::Cloud::Error.from_error(e)
533
+ end
534
+
535
+ ##
536
+ # Gets the resource representation for a cluster in a project.
537
+ #
538
+ # @overload get_cluster(request, options = nil)
539
+ # Pass arguments to `get_cluster` via a request object, either of type
540
+ # {Google::Cloud::Dataproc::V1::GetClusterRequest} or an equivalent Hash.
541
+ #
542
+ # @param request [Google::Cloud::Dataproc::V1::GetClusterRequest, Hash]
543
+ # A request object representing the call parameters. Required. To specify no
544
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
545
+ # @param options [Gapic::CallOptions, Hash]
546
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
547
+ #
548
+ # @overload get_cluster(project_id: nil, region: nil, cluster_name: nil)
549
+ # Pass arguments to `get_cluster` via keyword arguments. Note that at
550
+ # least one keyword argument is required. To specify no parameters, or to keep all
551
+ # the default parameter values, pass an empty Hash as a request object (see above).
552
+ #
553
+ # @param project_id [String]
554
+ # Required. The ID of the Google Cloud Platform project that the cluster
555
+ # belongs to.
556
+ # @param region [String]
557
+ # Required. The Dataproc region in which to handle the request.
558
+ # @param cluster_name [String]
559
+ # Required. The cluster name.
560
+ #
561
+ # @yield [response, operation] Access the result along with the RPC operation
562
+ # @yieldparam response [Google::Cloud::Dataproc::V1::Cluster]
563
+ # @yieldparam operation [GRPC::ActiveCall::Operation]
564
+ #
565
+ # @return [Google::Cloud::Dataproc::V1::Cluster]
566
+ #
567
+ # @raise [Google::Cloud::Error] if the RPC is aborted.
568
+ #
569
+ def get_cluster request, options = nil
570
+ raise ArgumentError, "request must be provided" if request.nil?
571
+
572
+ request = Gapic::Protobuf.coerce request, to: Google::Cloud::Dataproc::V1::GetClusterRequest
573
+
574
+ # Converts hash and nil to an options object
575
+ options = Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
576
+
577
+ # Customize the options with defaults
578
+ metadata = @config.rpcs.get_cluster.metadata.to_h
579
+
580
+ # Set x-goog-api-client and x-goog-user-project headers
581
+ metadata[:"x-goog-api-client"] ||= Gapic::Headers.x_goog_api_client \
582
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
583
+ gapic_version: ::Google::Cloud::Dataproc::V1::VERSION
584
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
585
+
586
+ header_params = {
587
+ "project_id" => request.project_id,
588
+ "region" => request.region,
589
+ "cluster_name" => request.cluster_name
590
+ }
591
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
592
+ metadata[:"x-goog-request-params"] ||= request_params_header
593
+
594
+ options.apply_defaults timeout: @config.rpcs.get_cluster.timeout,
595
+ metadata: metadata,
596
+ retry_policy: @config.rpcs.get_cluster.retry_policy
597
+ options.apply_defaults metadata: @config.metadata,
598
+ retry_policy: @config.retry_policy
599
+
600
+ @cluster_controller_stub.call_rpc :get_cluster, request, options: options do |response, operation|
601
+ yield response, operation if block_given?
602
+ return response
603
+ end
604
+ rescue GRPC::BadStatus => e
605
+ raise Google::Cloud::Error.from_error(e)
606
+ end
607
+
608
+ ##
609
+ # Lists all regions/\\{region}/clusters in a project alphabetically.
610
+ #
611
+ # @overload list_clusters(request, options = nil)
612
+ # Pass arguments to `list_clusters` via a request object, either of type
613
+ # {Google::Cloud::Dataproc::V1::ListClustersRequest} or an equivalent Hash.
614
+ #
615
+ # @param request [Google::Cloud::Dataproc::V1::ListClustersRequest, Hash]
616
+ # A request object representing the call parameters. Required. To specify no
617
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
618
+ # @param options [Gapic::CallOptions, Hash]
619
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
620
+ #
621
+ # @overload list_clusters(project_id: nil, region: nil, filter: nil, page_size: nil, page_token: nil)
622
+ # Pass arguments to `list_clusters` via keyword arguments. Note that at
623
+ # least one keyword argument is required. To specify no parameters, or to keep all
624
+ # the default parameter values, pass an empty Hash as a request object (see above).
625
+ #
626
+ # @param project_id [String]
627
+ # Required. The ID of the Google Cloud Platform project that the cluster
628
+ # belongs to.
629
+ # @param region [String]
630
+ # Required. The Dataproc region in which to handle the request.
631
+ # @param filter [String]
632
+ # Optional. A filter constraining the clusters to list. Filters are
633
+ # case-sensitive and have the following syntax:
634
+ #
635
+ # field = value [AND [field = value]] ...
636
+ #
637
+ # where **field** is one of `status.state`, `clusterName`, or `labels.[KEY]`,
638
+ # and `[KEY]` is a label key. **value** can be `*` to match all values.
639
+ # `status.state` can be one of the following: `ACTIVE`, `INACTIVE`,
640
+ # `CREATING`, `RUNNING`, `ERROR`, `DELETING`, or `UPDATING`. `ACTIVE`
641
+ # contains the `CREATING`, `UPDATING`, and `RUNNING` states. `INACTIVE`
642
+ # contains the `DELETING` and `ERROR` states.
643
+ # `clusterName` is the name of the cluster provided at creation time.
644
+ # Only the logical `AND` operator is supported; space-separated items are
645
+ # treated as having an implicit `AND` operator.
646
+ #
647
+ # Example filter:
648
+ #
649
+ # status.state = ACTIVE AND clusterName = mycluster
650
+ # AND labels.env = staging AND labels.starred = *
651
+ # @param page_size [Integer]
652
+ # Optional. The standard List page size.
653
+ # @param page_token [String]
654
+ # Optional. The standard List page token.
655
+ #
656
+ # @yield [response, operation] Access the result along with the RPC operation
657
+ # @yieldparam response [Gapic::PagedEnumerable<Google::Cloud::Dataproc::V1::Cluster>]
658
+ # @yieldparam operation [GRPC::ActiveCall::Operation]
659
+ #
660
+ # @return [Gapic::PagedEnumerable<Google::Cloud::Dataproc::V1::Cluster>]
661
+ #
662
+ # @raise [Google::Cloud::Error] if the RPC is aborted.
663
+ #
664
+ def list_clusters request, options = nil
665
+ raise ArgumentError, "request must be provided" if request.nil?
666
+
667
+ request = Gapic::Protobuf.coerce request, to: Google::Cloud::Dataproc::V1::ListClustersRequest
668
+
669
+ # Converts hash and nil to an options object
670
+ options = Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
671
+
672
+ # Customize the options with defaults
673
+ metadata = @config.rpcs.list_clusters.metadata.to_h
674
+
675
+ # Set x-goog-api-client and x-goog-user-project headers
676
+ metadata[:"x-goog-api-client"] ||= Gapic::Headers.x_goog_api_client \
677
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
678
+ gapic_version: ::Google::Cloud::Dataproc::V1::VERSION
679
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
680
+
681
+ header_params = {
682
+ "project_id" => request.project_id,
683
+ "region" => request.region
684
+ }
685
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
686
+ metadata[:"x-goog-request-params"] ||= request_params_header
687
+
688
+ options.apply_defaults timeout: @config.rpcs.list_clusters.timeout,
689
+ metadata: metadata,
690
+ retry_policy: @config.rpcs.list_clusters.retry_policy
691
+ options.apply_defaults metadata: @config.metadata,
692
+ retry_policy: @config.retry_policy
693
+
694
+ @cluster_controller_stub.call_rpc :list_clusters, request, options: options do |response, operation|
695
+ response = Gapic::PagedEnumerable.new @cluster_controller_stub, :list_clusters, request, response, operation, options
696
+ yield response, operation if block_given?
697
+ return response
698
+ end
699
+ rescue GRPC::BadStatus => e
700
+ raise Google::Cloud::Error.from_error(e)
701
+ end
702
+
703
+ ##
704
+ # Gets cluster diagnostic information. The returned
705
+ # {Google::Longrunning::Operation#metadata Operation.metadata} will be
706
+ # [ClusterOperationMetadata](https://cloud.google.com/dataproc/docs/reference/rpc/google.cloud.dataproc.v1#clusteroperationmetadata).
707
+ # After the operation completes,
708
+ # {Google::Longrunning::Operation#response Operation.response}
709
+ # contains
710
+ # [DiagnoseClusterResults](https://cloud.google.com/dataproc/docs/reference/rpc/google.cloud.dataproc.v1#diagnoseclusterresults).
711
+ #
712
+ # @overload diagnose_cluster(request, options = nil)
713
+ # Pass arguments to `diagnose_cluster` via a request object, either of type
714
+ # {Google::Cloud::Dataproc::V1::DiagnoseClusterRequest} or an equivalent Hash.
715
+ #
716
+ # @param request [Google::Cloud::Dataproc::V1::DiagnoseClusterRequest, Hash]
717
+ # A request object representing the call parameters. Required. To specify no
718
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
719
+ # @param options [Gapic::CallOptions, Hash]
720
+ # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
721
+ #
722
+ # @overload diagnose_cluster(project_id: nil, region: nil, cluster_name: nil)
723
+ # Pass arguments to `diagnose_cluster` via keyword arguments. Note that at
724
+ # least one keyword argument is required. To specify no parameters, or to keep all
725
+ # the default parameter values, pass an empty Hash as a request object (see above).
726
+ #
727
+ # @param project_id [String]
728
+ # Required. The ID of the Google Cloud Platform project that the cluster
729
+ # belongs to.
730
+ # @param region [String]
731
+ # Required. The Dataproc region in which to handle the request.
732
+ # @param cluster_name [String]
733
+ # Required. The cluster name.
734
+ #
735
+ # @yield [response, operation] Access the result along with the RPC operation
736
+ # @yieldparam response [Gapic::Operation]
737
+ # @yieldparam operation [GRPC::ActiveCall::Operation]
738
+ #
739
+ # @return [Gapic::Operation]
740
+ #
741
+ # @raise [Google::Cloud::Error] if the RPC is aborted.
742
+ #
743
+ def diagnose_cluster request, options = nil
744
+ raise ArgumentError, "request must be provided" if request.nil?
745
+
746
+ request = Gapic::Protobuf.coerce request, to: Google::Cloud::Dataproc::V1::DiagnoseClusterRequest
747
+
748
+ # Converts hash and nil to an options object
749
+ options = Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
750
+
751
+ # Customize the options with defaults
752
+ metadata = @config.rpcs.diagnose_cluster.metadata.to_h
753
+
754
+ # Set x-goog-api-client and x-goog-user-project headers
755
+ metadata[:"x-goog-api-client"] ||= Gapic::Headers.x_goog_api_client \
756
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
757
+ gapic_version: ::Google::Cloud::Dataproc::V1::VERSION
758
+ metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
759
+
760
+ header_params = {
761
+ "project_id" => request.project_id,
762
+ "region" => request.region,
763
+ "cluster_name" => request.cluster_name
764
+ }
765
+ request_params_header = header_params.map { |k, v| "#{k}=#{v}" }.join("&")
766
+ metadata[:"x-goog-request-params"] ||= request_params_header
767
+
768
+ options.apply_defaults timeout: @config.rpcs.diagnose_cluster.timeout,
769
+ metadata: metadata,
770
+ retry_policy: @config.rpcs.diagnose_cluster.retry_policy
771
+ options.apply_defaults metadata: @config.metadata,
772
+ retry_policy: @config.retry_policy
773
+
774
+ @cluster_controller_stub.call_rpc :diagnose_cluster, request, options: options do |response, operation|
775
+ response = Gapic::Operation.new response, @operations_client, options: options
776
+ yield response, operation if block_given?
777
+ return response
778
+ end
779
+ rescue GRPC::BadStatus => e
780
+ raise Google::Cloud::Error.from_error(e)
781
+ end
782
+
783
+ ##
784
+ # Configuration class for the ClusterController API.
785
+ #
786
+ # This class represents the configuration for ClusterController,
787
+ # providing control over timeouts, retry behavior, logging, transport
788
+ # parameters, and other low-level controls. Certain parameters can also be
789
+ # applied individually to specific RPCs. See
790
+ # {Google::Cloud::Dataproc::V1::ClusterController::Client::Configuration::Rpcs}
791
+ # for a list of RPCs that can be configured independently.
792
+ #
793
+ # Configuration can be applied globally to all clients, or to a single client
794
+ # on construction.
795
+ #
796
+ # # Examples
797
+ #
798
+ # To modify the global config, setting the timeout for create_cluster
799
+ # to 20 seconds, and all remaining timeouts to 10 seconds:
800
+ #
801
+ # Google::Cloud::Dataproc::V1::ClusterController::Client.configure do |config|
802
+ # config.timeout = 10_000
803
+ # config.rpcs.create_cluster.timeout = 20_000
804
+ # end
805
+ #
806
+ # To apply the above configuration only to a new client:
807
+ #
808
+ # client = Google::Cloud::Dataproc::V1::ClusterController::Client.new do |config|
809
+ # config.timeout = 10_000
810
+ # config.rpcs.create_cluster.timeout = 20_000
811
+ # end
812
+ #
813
+ # @!attribute [rw] endpoint
814
+ # The hostname or hostname:port of the service endpoint.
815
+ # Defaults to `"dataproc.googleapis.com"`.
816
+ # @return [String]
817
+ # @!attribute [rw] credentials
818
+ # Credentials to send with calls. You may provide any of the following types:
819
+ # * (`String`) The path to a service account key file in JSON format
820
+ # * (`Hash`) A service account key as a Hash
821
+ # * (`Google::Auth::Credentials`) A googleauth credentials object
822
+ # (see the [googleauth docs](https://googleapis.dev/ruby/googleauth/latest/index.html))
823
+ # * (`Signet::OAuth2::Client`) A signet oauth2 client object
824
+ # (see the [signet docs](https://googleapis.dev/ruby/signet/latest/Signet/OAuth2/Client.html))
825
+ # * (`GRPC::Core::Channel`) a gRPC channel with included credentials
826
+ # * (`GRPC::Core::ChannelCredentials`) a gRPC credentails object
827
+ # * (`nil`) indicating no credentials
828
+ # @return [Object]
829
+ # @!attribute [rw] scope
830
+ # The OAuth scopes
831
+ # @return [Array<String>]
832
+ # @!attribute [rw] lib_name
833
+ # The library name as recorded in instrumentation and logging
834
+ # @return [String]
835
+ # @!attribute [rw] lib_version
836
+ # The library version as recorded in instrumentation and logging
837
+ # @return [String]
838
+ # @!attribute [rw] channel_args
839
+ # Extra parameters passed to the gRPC channel. Note: this is ignored if a
840
+ # `GRPC::Core::Channel` object is provided as the credential.
841
+ # @return [Hash]
842
+ # @!attribute [rw] interceptors
843
+ # An array of interceptors that are run before calls are executed.
844
+ # @return [Array<GRPC::ClientInterceptor>]
845
+ # @!attribute [rw] timeout
846
+ # The call timeout in milliseconds.
847
+ # @return [Numeric]
848
+ # @!attribute [rw] metadata
849
+ # Additional gRPC headers to be sent with the call.
850
+ # @return [Hash{Symbol=>String}]
851
+ # @!attribute [rw] retry_policy
852
+ # The retry policy. The value is a hash with the following keys:
853
+ # * `:initial_delay` (*type:* `Numeric`) - The initial delay in seconds.
854
+ # * `:max_delay` (*type:* `Numeric`) - The max delay in seconds.
855
+ # * `:multiplier` (*type:* `Numeric`) - The incremental backoff multiplier.
856
+ # * `:retry_codes` (*type:* `Array<String>`) - The error codes that should
857
+ # trigger a retry.
858
+ # @return [Hash]
859
+ #
860
+ class Configuration
861
+ extend Gapic::Config
862
+
863
+ config_attr :endpoint, "dataproc.googleapis.com", String
864
+ config_attr :credentials, nil do |value|
865
+ allowed = [::String, ::Hash, ::Proc, ::Google::Auth::Credentials, ::Signet::OAuth2::Client, nil]
866
+ allowed += [::GRPC::Core::Channel, ::GRPC::Core::ChannelCredentials] if defined? ::GRPC
867
+ allowed.any? { |klass| klass === value }
868
+ end
869
+ config_attr :scope, nil, String, Array, nil
870
+ config_attr :lib_name, nil, String, nil
871
+ config_attr :lib_version, nil, String, nil
872
+ config_attr(:channel_args, { "grpc.service_config_disable_resolution"=>1 }, Hash, nil)
873
+ config_attr :interceptors, nil, Array, nil
874
+ config_attr :timeout, nil, Numeric, nil
875
+ config_attr :metadata, nil, Hash, nil
876
+ config_attr :retry_policy, nil, Hash, Proc, nil
877
+
878
+ # @private
879
+ def initialize parent_config = nil
880
+ @parent_config = parent_config unless parent_config.nil?
881
+
882
+ yield self if block_given?
883
+ end
884
+
885
+ ##
886
+ # Configurations for individual RPCs
887
+ # @return [Rpcs]
888
+ #
889
+ def rpcs
890
+ @rpcs ||= begin
891
+ parent_rpcs = nil
892
+ parent_rpcs = @parent_config.rpcs if @parent_config&.respond_to? :rpcs
893
+ Rpcs.new parent_rpcs
894
+ end
895
+ end
896
+
897
+ ##
898
+ # Configuration RPC class for the ClusterController API.
899
+ #
900
+ # Includes fields providing the configuration for each RPC in this service.
901
+ # Each configuration object is of type `Gapic::Config::Method` and includes
902
+ # the following configuration fields:
903
+ #
904
+ # * `timeout` (*type:* `Numeric`) - The call timeout in milliseconds
905
+ # * `metadata` (*type:* `Hash{Symbol=>String}`) - Additional gRPC headers
906
+ # * `retry_policy (*type:* `Hash`) - The retry policy. The policy fields
907
+ # include the following keys:
908
+ # * `:initial_delay` (*type:* `Numeric`) - The initial delay in seconds.
909
+ # * `:max_delay` (*type:* `Numeric`) - The max delay in seconds.
910
+ # * `:multiplier` (*type:* `Numeric`) - The incremental backoff multiplier.
911
+ # * `:retry_codes` (*type:* `Array<String>`) - The error codes that should
912
+ # trigger a retry.
913
+ #
914
+ class Rpcs
915
+ ##
916
+ # RPC-specific configuration for `create_cluster`
917
+ # @return [Gapic::Config::Method]
918
+ #
919
+ attr_reader :create_cluster
920
+ ##
921
+ # RPC-specific configuration for `update_cluster`
922
+ # @return [Gapic::Config::Method]
923
+ #
924
+ attr_reader :update_cluster
925
+ ##
926
+ # RPC-specific configuration for `delete_cluster`
927
+ # @return [Gapic::Config::Method]
928
+ #
929
+ attr_reader :delete_cluster
930
+ ##
931
+ # RPC-specific configuration for `get_cluster`
932
+ # @return [Gapic::Config::Method]
933
+ #
934
+ attr_reader :get_cluster
935
+ ##
936
+ # RPC-specific configuration for `list_clusters`
937
+ # @return [Gapic::Config::Method]
938
+ #
939
+ attr_reader :list_clusters
940
+ ##
941
+ # RPC-specific configuration for `diagnose_cluster`
942
+ # @return [Gapic::Config::Method]
943
+ #
944
+ attr_reader :diagnose_cluster
945
+
946
+ # @private
947
+ def initialize parent_rpcs = nil
948
+ create_cluster_config = parent_rpcs&.create_cluster if parent_rpcs&.respond_to? :create_cluster
949
+ @create_cluster = Gapic::Config::Method.new create_cluster_config
950
+ update_cluster_config = parent_rpcs&.update_cluster if parent_rpcs&.respond_to? :update_cluster
951
+ @update_cluster = Gapic::Config::Method.new update_cluster_config
952
+ delete_cluster_config = parent_rpcs&.delete_cluster if parent_rpcs&.respond_to? :delete_cluster
953
+ @delete_cluster = Gapic::Config::Method.new delete_cluster_config
954
+ get_cluster_config = parent_rpcs&.get_cluster if parent_rpcs&.respond_to? :get_cluster
955
+ @get_cluster = Gapic::Config::Method.new get_cluster_config
956
+ list_clusters_config = parent_rpcs&.list_clusters if parent_rpcs&.respond_to? :list_clusters
957
+ @list_clusters = Gapic::Config::Method.new list_clusters_config
958
+ diagnose_cluster_config = parent_rpcs&.diagnose_cluster if parent_rpcs&.respond_to? :diagnose_cluster
959
+ @diagnose_cluster = Gapic::Config::Method.new diagnose_cluster_config
960
+
961
+ yield self if block_given?
962
+ end
963
+ end
964
+ end
965
+ end
966
+ end
967
+ end
968
+ end
969
+ end
970
+ end