google-cloud-dataproc-v1 0.1.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.
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,693 @@
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
+
20
+ module Google
21
+ module Cloud
22
+ module Dataproc
23
+ module V1
24
+ # A Dataproc workflow template resource.
25
+ # @!attribute [rw] id
26
+ # @return [String]
27
+ # @!attribute [r] name
28
+ # @return [String]
29
+ # Output only. The resource name of the workflow template, as described
30
+ # in https://cloud.google.com/apis/design/resource_names.
31
+ #
32
+ # * For `projects.regions.workflowTemplates`, the resource name of the
33
+ # template has the following format:
34
+ # `projects/{project_id}/regions/{region}/workflowTemplates/{template_id}`
35
+ #
36
+ # * For `projects.locations.workflowTemplates`, the resource name of the
37
+ # template has the following format:
38
+ # `projects/{project_id}/locations/{location}/workflowTemplates/{template_id}`
39
+ # @!attribute [rw] version
40
+ # @return [Integer]
41
+ # Optional. Used to perform a consistent read-modify-write.
42
+ #
43
+ # This field should be left blank for a `CreateWorkflowTemplate` request. It
44
+ # is required for an `UpdateWorkflowTemplate` request, and must match the
45
+ # current server version. A typical update template flow would fetch the
46
+ # current template with a `GetWorkflowTemplate` request, which will return
47
+ # the current template with the `version` field filled in with the
48
+ # current server version. The user updates other fields in the template,
49
+ # then returns it as part of the `UpdateWorkflowTemplate` request.
50
+ # @!attribute [r] create_time
51
+ # @return [Google::Protobuf::Timestamp]
52
+ # Output only. The time template was created.
53
+ # @!attribute [r] update_time
54
+ # @return [Google::Protobuf::Timestamp]
55
+ # Output only. The time template was last updated.
56
+ # @!attribute [rw] labels
57
+ # @return [Google::Protobuf::Map{String => String}]
58
+ # Optional. The labels to associate with this template. These labels
59
+ # will be propagated to all jobs and clusters created by the workflow
60
+ # instance.
61
+ #
62
+ # Label **keys** must contain 1 to 63 characters, and must conform to
63
+ # [RFC 1035](https://www.ietf.org/rfc/rfc1035.txt).
64
+ #
65
+ # Label **values** may be empty, but, if present, must contain 1 to 63
66
+ # characters, and must conform to
67
+ # [RFC 1035](https://www.ietf.org/rfc/rfc1035.txt).
68
+ #
69
+ # No more than 32 labels can be associated with a template.
70
+ # @!attribute [rw] placement
71
+ # @return [Google::Cloud::Dataproc::V1::WorkflowTemplatePlacement]
72
+ # Required. WorkflowTemplate scheduling information.
73
+ # @!attribute [rw] jobs
74
+ # @return [Array<Google::Cloud::Dataproc::V1::OrderedJob>]
75
+ # Required. The Directed Acyclic Graph of Jobs to submit.
76
+ # @!attribute [rw] parameters
77
+ # @return [Array<Google::Cloud::Dataproc::V1::TemplateParameter>]
78
+ # Optional. emplate parameters whose values are substituted into the
79
+ # template. Values for parameters must be provided when the template is
80
+ # instantiated.
81
+ class WorkflowTemplate
82
+ include Google::Protobuf::MessageExts
83
+ extend Google::Protobuf::MessageExts::ClassMethods
84
+
85
+ # @!attribute [rw] key
86
+ # @return [String]
87
+ # @!attribute [rw] value
88
+ # @return [String]
89
+ class LabelsEntry
90
+ include Google::Protobuf::MessageExts
91
+ extend Google::Protobuf::MessageExts::ClassMethods
92
+ end
93
+ end
94
+
95
+ # Specifies workflow execution target.
96
+ #
97
+ # Either `managed_cluster` or `cluster_selector` is required.
98
+ # @!attribute [rw] managed_cluster
99
+ # @return [Google::Cloud::Dataproc::V1::ManagedCluster]
100
+ # A cluster that is managed by the workflow.
101
+ # @!attribute [rw] cluster_selector
102
+ # @return [Google::Cloud::Dataproc::V1::ClusterSelector]
103
+ # Optional. A selector that chooses target cluster for jobs based
104
+ # on metadata.
105
+ #
106
+ # The selector is evaluated at the time each job is submitted.
107
+ class WorkflowTemplatePlacement
108
+ include Google::Protobuf::MessageExts
109
+ extend Google::Protobuf::MessageExts::ClassMethods
110
+ end
111
+
112
+ # Cluster that is managed by the workflow.
113
+ # @!attribute [rw] cluster_name
114
+ # @return [String]
115
+ # Required. The cluster name prefix. A unique cluster name will be formed by
116
+ # appending a random suffix.
117
+ #
118
+ # The name must contain only lower-case letters (a-z), numbers (0-9),
119
+ # and hyphens (-). Must begin with a letter. Cannot begin or end with
120
+ # hyphen. Must consist of between 2 and 35 characters.
121
+ # @!attribute [rw] config
122
+ # @return [Google::Cloud::Dataproc::V1::ClusterConfig]
123
+ # Required. The cluster configuration.
124
+ # @!attribute [rw] labels
125
+ # @return [Google::Protobuf::Map{String => String}]
126
+ # Optional. The labels to associate with this cluster.
127
+ #
128
+ # Label keys must be between 1 and 63 characters long, and must conform to
129
+ # the following PCRE regular expression:
130
+ # [\p\\{Ll}\p\\{Lo}][\p\\{Ll}\p\\{Lo}\p\\{N}_-]\\{0,62}
131
+ #
132
+ # Label values must be between 1 and 63 characters long, and must conform to
133
+ # the following PCRE regular expression: [\p\\{Ll}\p\\{Lo}\p\\{N}_-]\\{0,63}
134
+ #
135
+ # No more than 32 labels can be associated with a given cluster.
136
+ class ManagedCluster
137
+ include Google::Protobuf::MessageExts
138
+ extend Google::Protobuf::MessageExts::ClassMethods
139
+
140
+ # @!attribute [rw] key
141
+ # @return [String]
142
+ # @!attribute [rw] value
143
+ # @return [String]
144
+ class LabelsEntry
145
+ include Google::Protobuf::MessageExts
146
+ extend Google::Protobuf::MessageExts::ClassMethods
147
+ end
148
+ end
149
+
150
+ # A selector that chooses target cluster for jobs based on metadata.
151
+ # @!attribute [rw] zone
152
+ # @return [String]
153
+ # Optional. The zone where workflow process executes. This parameter does not
154
+ # affect the selection of the cluster.
155
+ #
156
+ # If unspecified, the zone of the first cluster matching the selector
157
+ # is used.
158
+ # @!attribute [rw] cluster_labels
159
+ # @return [Google::Protobuf::Map{String => String}]
160
+ # Required. The cluster labels. Cluster must have all labels
161
+ # to match.
162
+ class ClusterSelector
163
+ include Google::Protobuf::MessageExts
164
+ extend Google::Protobuf::MessageExts::ClassMethods
165
+
166
+ # @!attribute [rw] key
167
+ # @return [String]
168
+ # @!attribute [rw] value
169
+ # @return [String]
170
+ class ClusterLabelsEntry
171
+ include Google::Protobuf::MessageExts
172
+ extend Google::Protobuf::MessageExts::ClassMethods
173
+ end
174
+ end
175
+
176
+ # A job executed by the workflow.
177
+ # @!attribute [rw] step_id
178
+ # @return [String]
179
+ # Required. The step id. The id must be unique among all jobs
180
+ # within the template.
181
+ #
182
+ # The step id is used as prefix for job id, as job
183
+ # `goog-dataproc-workflow-step-id` label, and in
184
+ # {Google::Cloud::Dataproc::V1::OrderedJob#prerequisite_step_ids prerequisiteStepIds} field from other
185
+ # steps.
186
+ #
187
+ # The id must contain only letters (a-z, A-Z), numbers (0-9),
188
+ # underscores (_), and hyphens (-). Cannot begin or end with underscore
189
+ # or hyphen. Must consist of between 3 and 50 characters.
190
+ # @!attribute [rw] hadoop_job
191
+ # @return [Google::Cloud::Dataproc::V1::HadoopJob]
192
+ # @!attribute [rw] spark_job
193
+ # @return [Google::Cloud::Dataproc::V1::SparkJob]
194
+ # @!attribute [rw] pyspark_job
195
+ # @return [Google::Cloud::Dataproc::V1::PySparkJob]
196
+ # @!attribute [rw] hive_job
197
+ # @return [Google::Cloud::Dataproc::V1::HiveJob]
198
+ # @!attribute [rw] pig_job
199
+ # @return [Google::Cloud::Dataproc::V1::PigJob]
200
+ # @!attribute [rw] spark_r_job
201
+ # @return [Google::Cloud::Dataproc::V1::SparkRJob]
202
+ # Spark R job
203
+ # @!attribute [rw] spark_sql_job
204
+ # @return [Google::Cloud::Dataproc::V1::SparkSqlJob]
205
+ # @!attribute [rw] presto_job
206
+ # @return [Google::Cloud::Dataproc::V1::PrestoJob]
207
+ # Presto job
208
+ # @!attribute [rw] labels
209
+ # @return [Google::Protobuf::Map{String => String}]
210
+ # Optional. The labels to associate with this job.
211
+ #
212
+ # Label keys must be between 1 and 63 characters long, and must conform to
213
+ # the following regular expression:
214
+ # [\p\\{Ll}\p\\{Lo}][\p\\{Ll}\p\\{Lo}\p\\{N}_-]\\{0,62}
215
+ #
216
+ # Label values must be between 1 and 63 characters long, and must conform to
217
+ # the following regular expression: [\p\\{Ll}\p\\{Lo}\p\\{N}_-]\\{0,63}
218
+ #
219
+ # No more than 32 labels can be associated with a given job.
220
+ # @!attribute [rw] scheduling
221
+ # @return [Google::Cloud::Dataproc::V1::JobScheduling]
222
+ # Optional. Job scheduling configuration.
223
+ # @!attribute [rw] prerequisite_step_ids
224
+ # @return [Array<String>]
225
+ # Optional. The optional list of prerequisite job step_ids.
226
+ # If not specified, the job will start at the beginning of workflow.
227
+ class OrderedJob
228
+ include Google::Protobuf::MessageExts
229
+ extend Google::Protobuf::MessageExts::ClassMethods
230
+
231
+ # @!attribute [rw] key
232
+ # @return [String]
233
+ # @!attribute [rw] value
234
+ # @return [String]
235
+ class LabelsEntry
236
+ include Google::Protobuf::MessageExts
237
+ extend Google::Protobuf::MessageExts::ClassMethods
238
+ end
239
+ end
240
+
241
+ # A configurable parameter that replaces one or more fields in the template.
242
+ # Parameterizable fields:
243
+ # - Labels
244
+ # - File uris
245
+ # - Job properties
246
+ # - Job arguments
247
+ # - Script variables
248
+ # - Main class (in HadoopJob and SparkJob)
249
+ # - Zone (in ClusterSelector)
250
+ # @!attribute [rw] name
251
+ # @return [String]
252
+ # Required. Parameter name.
253
+ # The parameter name is used as the key, and paired with the
254
+ # parameter value, which are passed to the template when the template
255
+ # is instantiated.
256
+ # The name must contain only capital letters (A-Z), numbers (0-9), and
257
+ # underscores (_), and must not start with a number. The maximum length is
258
+ # 40 characters.
259
+ # @!attribute [rw] fields
260
+ # @return [Array<String>]
261
+ # Required. Paths to all fields that the parameter replaces.
262
+ # A field is allowed to appear in at most one parameter's list of field
263
+ # paths.
264
+ #
265
+ # A field path is similar in syntax to a {Google::Protobuf::FieldMask google.protobuf.FieldMask}.
266
+ # For example, a field path that references the zone field of a workflow
267
+ # template's cluster selector would be specified as
268
+ # `placement.clusterSelector.zone`.
269
+ #
270
+ # Also, field paths can reference fields using the following syntax:
271
+ #
272
+ # * Values in maps can be referenced by key:
273
+ # * labels['key']
274
+ # * placement.clusterSelector.clusterLabels['key']
275
+ # * placement.managedCluster.labels['key']
276
+ # * placement.clusterSelector.clusterLabels['key']
277
+ # * jobs['step-id'].labels['key']
278
+ #
279
+ # * Jobs in the jobs list can be referenced by step-id:
280
+ # * jobs['step-id'].hadoopJob.mainJarFileUri
281
+ # * jobs['step-id'].hiveJob.queryFileUri
282
+ # * jobs['step-id'].pySparkJob.mainPythonFileUri
283
+ # * jobs['step-id'].hadoopJob.jarFileUris[0]
284
+ # * jobs['step-id'].hadoopJob.archiveUris[0]
285
+ # * jobs['step-id'].hadoopJob.fileUris[0]
286
+ # * jobs['step-id'].pySparkJob.pythonFileUris[0]
287
+ #
288
+ # * Items in repeated fields can be referenced by a zero-based index:
289
+ # * jobs['step-id'].sparkJob.args[0]
290
+ #
291
+ # * Other examples:
292
+ # * jobs['step-id'].hadoopJob.properties['key']
293
+ # * jobs['step-id'].hadoopJob.args[0]
294
+ # * jobs['step-id'].hiveJob.scriptVariables['key']
295
+ # * jobs['step-id'].hadoopJob.mainJarFileUri
296
+ # * placement.clusterSelector.zone
297
+ #
298
+ # It may not be possible to parameterize maps and repeated fields in their
299
+ # entirety since only individual map values and individual items in repeated
300
+ # fields can be referenced. For example, the following field paths are
301
+ # invalid:
302
+ #
303
+ # - placement.clusterSelector.clusterLabels
304
+ # - jobs['step-id'].sparkJob.args
305
+ # @!attribute [rw] description
306
+ # @return [String]
307
+ # Optional. Brief description of the parameter.
308
+ # Must not exceed 1024 characters.
309
+ # @!attribute [rw] validation
310
+ # @return [Google::Cloud::Dataproc::V1::ParameterValidation]
311
+ # Optional. Validation rules to be applied to this parameter's value.
312
+ class TemplateParameter
313
+ include Google::Protobuf::MessageExts
314
+ extend Google::Protobuf::MessageExts::ClassMethods
315
+ end
316
+
317
+ # Configuration for parameter validation.
318
+ # @!attribute [rw] regex
319
+ # @return [Google::Cloud::Dataproc::V1::RegexValidation]
320
+ # Validation based on regular expressions.
321
+ # @!attribute [rw] values
322
+ # @return [Google::Cloud::Dataproc::V1::ValueValidation]
323
+ # Validation based on a list of allowed values.
324
+ class ParameterValidation
325
+ include Google::Protobuf::MessageExts
326
+ extend Google::Protobuf::MessageExts::ClassMethods
327
+ end
328
+
329
+ # Validation based on regular expressions.
330
+ # @!attribute [rw] regexes
331
+ # @return [Array<String>]
332
+ # Required. RE2 regular expressions used to validate the parameter's value.
333
+ # The value must match the regex in its entirety (substring
334
+ # matches are not sufficient).
335
+ class RegexValidation
336
+ include Google::Protobuf::MessageExts
337
+ extend Google::Protobuf::MessageExts::ClassMethods
338
+ end
339
+
340
+ # Validation based on a list of allowed values.
341
+ # @!attribute [rw] values
342
+ # @return [Array<String>]
343
+ # Required. List of allowed values for the parameter.
344
+ class ValueValidation
345
+ include Google::Protobuf::MessageExts
346
+ extend Google::Protobuf::MessageExts::ClassMethods
347
+ end
348
+
349
+ # A Dataproc workflow template resource.
350
+ # @!attribute [r] template
351
+ # @return [String]
352
+ # Output only. The resource name of the workflow template as described
353
+ # in https://cloud.google.com/apis/design/resource_names.
354
+ #
355
+ # * For `projects.regions.workflowTemplates`, the resource name of the
356
+ # template has the following format:
357
+ # `projects/{project_id}/regions/{region}/workflowTemplates/{template_id}`
358
+ #
359
+ # * For `projects.locations.workflowTemplates`, the resource name of the
360
+ # template has the following format:
361
+ # `projects/{project_id}/locations/{location}/workflowTemplates/{template_id}`
362
+ # @!attribute [r] version
363
+ # @return [Integer]
364
+ # Output only. The version of template at the time of
365
+ # workflow instantiation.
366
+ # @!attribute [r] create_cluster
367
+ # @return [Google::Cloud::Dataproc::V1::ClusterOperation]
368
+ # Output only. The create cluster operation metadata.
369
+ # @!attribute [r] graph
370
+ # @return [Google::Cloud::Dataproc::V1::WorkflowGraph]
371
+ # Output only. The workflow graph.
372
+ # @!attribute [r] delete_cluster
373
+ # @return [Google::Cloud::Dataproc::V1::ClusterOperation]
374
+ # Output only. The delete cluster operation metadata.
375
+ # @!attribute [r] state
376
+ # @return [Google::Cloud::Dataproc::V1::WorkflowMetadata::State]
377
+ # Output only. The workflow state.
378
+ # @!attribute [r] cluster_name
379
+ # @return [String]
380
+ # Output only. The name of the target cluster.
381
+ # @!attribute [rw] parameters
382
+ # @return [Google::Protobuf::Map{String => String}]
383
+ # Map from parameter names to values that were used for those parameters.
384
+ # @!attribute [r] start_time
385
+ # @return [Google::Protobuf::Timestamp]
386
+ # Output only. Workflow start time.
387
+ # @!attribute [r] end_time
388
+ # @return [Google::Protobuf::Timestamp]
389
+ # Output only. Workflow end time.
390
+ # @!attribute [r] cluster_uuid
391
+ # @return [String]
392
+ # Output only. The UUID of target cluster.
393
+ class WorkflowMetadata
394
+ include Google::Protobuf::MessageExts
395
+ extend Google::Protobuf::MessageExts::ClassMethods
396
+
397
+ # @!attribute [rw] key
398
+ # @return [String]
399
+ # @!attribute [rw] value
400
+ # @return [String]
401
+ class ParametersEntry
402
+ include Google::Protobuf::MessageExts
403
+ extend Google::Protobuf::MessageExts::ClassMethods
404
+ end
405
+
406
+ # The operation state.
407
+ module State
408
+ # Unused.
409
+ UNKNOWN = 0
410
+
411
+ # The operation has been created.
412
+ PENDING = 1
413
+
414
+ # The operation is running.
415
+ RUNNING = 2
416
+
417
+ # The operation is done; either cancelled or completed.
418
+ DONE = 3
419
+ end
420
+ end
421
+
422
+ # The cluster operation triggered by a workflow.
423
+ # @!attribute [r] operation_id
424
+ # @return [String]
425
+ # Output only. The id of the cluster operation.
426
+ # @!attribute [r] error
427
+ # @return [String]
428
+ # Output only. Error, if operation failed.
429
+ # @!attribute [r] done
430
+ # @return [Boolean]
431
+ # Output only. Indicates the operation is done.
432
+ class ClusterOperation
433
+ include Google::Protobuf::MessageExts
434
+ extend Google::Protobuf::MessageExts::ClassMethods
435
+ end
436
+
437
+ # The workflow graph.
438
+ # @!attribute [r] nodes
439
+ # @return [Array<Google::Cloud::Dataproc::V1::WorkflowNode>]
440
+ # Output only. The workflow nodes.
441
+ class WorkflowGraph
442
+ include Google::Protobuf::MessageExts
443
+ extend Google::Protobuf::MessageExts::ClassMethods
444
+ end
445
+
446
+ # The workflow node.
447
+ # @!attribute [r] step_id
448
+ # @return [String]
449
+ # Output only. The name of the node.
450
+ # @!attribute [r] prerequisite_step_ids
451
+ # @return [Array<String>]
452
+ # Output only. Node's prerequisite nodes.
453
+ # @!attribute [r] job_id
454
+ # @return [String]
455
+ # Output only. The job id; populated after the node enters RUNNING state.
456
+ # @!attribute [r] state
457
+ # @return [Google::Cloud::Dataproc::V1::WorkflowNode::NodeState]
458
+ # Output only. The node state.
459
+ # @!attribute [r] error
460
+ # @return [String]
461
+ # Output only. The error detail.
462
+ class WorkflowNode
463
+ include Google::Protobuf::MessageExts
464
+ extend Google::Protobuf::MessageExts::ClassMethods
465
+
466
+ # The workflow node state.
467
+ module NodeState
468
+ # State is unspecified.
469
+ NODE_STATE_UNSPECIFIED = 0
470
+
471
+ # The node is awaiting prerequisite node to finish.
472
+ BLOCKED = 1
473
+
474
+ # The node is runnable but not running.
475
+ RUNNABLE = 2
476
+
477
+ # The node is running.
478
+ RUNNING = 3
479
+
480
+ # The node completed successfully.
481
+ COMPLETED = 4
482
+
483
+ # The node failed. A node can be marked FAILED because
484
+ # its ancestor or peer failed.
485
+ FAILED = 5
486
+ end
487
+ end
488
+
489
+ # A request to create a workflow template.
490
+ # @!attribute [rw] parent
491
+ # @return [String]
492
+ # Required. The resource name of the region or location, as described
493
+ # in https://cloud.google.com/apis/design/resource_names.
494
+ #
495
+ # * For `projects.regions.workflowTemplates,create`, the resource name of the
496
+ # region has the following format:
497
+ # `projects/{project_id}/regions/{region}`
498
+ #
499
+ # * For `projects.locations.workflowTemplates.create`, the resource name of
500
+ # the location has the following format:
501
+ # `projects/{project_id}/locations/{location}`
502
+ # @!attribute [rw] template
503
+ # @return [Google::Cloud::Dataproc::V1::WorkflowTemplate]
504
+ # Required. The Dataproc workflow template to create.
505
+ class CreateWorkflowTemplateRequest
506
+ include Google::Protobuf::MessageExts
507
+ extend Google::Protobuf::MessageExts::ClassMethods
508
+ end
509
+
510
+ # A request to fetch a workflow template.
511
+ # @!attribute [rw] name
512
+ # @return [String]
513
+ # Required. The resource name of the workflow template, as described
514
+ # in https://cloud.google.com/apis/design/resource_names.
515
+ #
516
+ # * For `projects.regions.workflowTemplates.get`, the resource name of the
517
+ # template has the following format:
518
+ # `projects/{project_id}/regions/{region}/workflowTemplates/{template_id}`
519
+ #
520
+ # * For `projects.locations.workflowTemplates.get`, the resource name of the
521
+ # template has the following format:
522
+ # `projects/{project_id}/locations/{location}/workflowTemplates/{template_id}`
523
+ # @!attribute [rw] version
524
+ # @return [Integer]
525
+ # Optional. The version of workflow template to retrieve. Only previously
526
+ # instantiated versions can be retrieved.
527
+ #
528
+ # If unspecified, retrieves the current version.
529
+ class GetWorkflowTemplateRequest
530
+ include Google::Protobuf::MessageExts
531
+ extend Google::Protobuf::MessageExts::ClassMethods
532
+ end
533
+
534
+ # A request to instantiate a workflow template.
535
+ # @!attribute [rw] name
536
+ # @return [String]
537
+ # Required. The resource name of the workflow template, as described
538
+ # in https://cloud.google.com/apis/design/resource_names.
539
+ #
540
+ # * For `projects.regions.workflowTemplates.instantiate`, the resource name
541
+ # of the template has the following format:
542
+ # `projects/{project_id}/regions/{region}/workflowTemplates/{template_id}`
543
+ #
544
+ # * For `projects.locations.workflowTemplates.instantiate`, the resource name
545
+ # of the template has the following format:
546
+ # `projects/{project_id}/locations/{location}/workflowTemplates/{template_id}`
547
+ # @!attribute [rw] version
548
+ # @return [Integer]
549
+ # Optional. The version of workflow template to instantiate. If specified,
550
+ # the workflow will be instantiated only if the current version of
551
+ # the workflow template has the supplied version.
552
+ #
553
+ # This option cannot be used to instantiate a previous version of
554
+ # workflow template.
555
+ # @!attribute [rw] request_id
556
+ # @return [String]
557
+ # Optional. A tag that prevents multiple concurrent workflow
558
+ # instances with the same tag from running. This mitigates risk of
559
+ # concurrent instances started due to retries.
560
+ #
561
+ # It is recommended to always set this value to a
562
+ # [UUID](https://en.wikipedia.org/wiki/Universally_unique_identifier).
563
+ #
564
+ # The tag must contain only letters (a-z, A-Z), numbers (0-9),
565
+ # underscores (_), and hyphens (-). The maximum length is 40 characters.
566
+ # @!attribute [rw] parameters
567
+ # @return [Google::Protobuf::Map{String => String}]
568
+ # Optional. Map from parameter names to values that should be used for those
569
+ # parameters. Values may not exceed 100 characters.
570
+ class InstantiateWorkflowTemplateRequest
571
+ include Google::Protobuf::MessageExts
572
+ extend Google::Protobuf::MessageExts::ClassMethods
573
+
574
+ # @!attribute [rw] key
575
+ # @return [String]
576
+ # @!attribute [rw] value
577
+ # @return [String]
578
+ class ParametersEntry
579
+ include Google::Protobuf::MessageExts
580
+ extend Google::Protobuf::MessageExts::ClassMethods
581
+ end
582
+ end
583
+
584
+ # A request to instantiate an inline workflow template.
585
+ # @!attribute [rw] parent
586
+ # @return [String]
587
+ # Required. The resource name of the region or location, as described
588
+ # in https://cloud.google.com/apis/design/resource_names.
589
+ #
590
+ # * For `projects.regions.workflowTemplates,instantiateinline`, the resource
591
+ # name of the region has the following format:
592
+ # `projects/{project_id}/regions/{region}`
593
+ #
594
+ # * For `projects.locations.workflowTemplates.instantiateinline`, the
595
+ # resource name of the location has the following format:
596
+ # `projects/{project_id}/locations/{location}`
597
+ # @!attribute [rw] template
598
+ # @return [Google::Cloud::Dataproc::V1::WorkflowTemplate]
599
+ # Required. The workflow template to instantiate.
600
+ # @!attribute [rw] request_id
601
+ # @return [String]
602
+ # Optional. A tag that prevents multiple concurrent workflow
603
+ # instances with the same tag from running. This mitigates risk of
604
+ # concurrent instances started due to retries.
605
+ #
606
+ # It is recommended to always set this value to a
607
+ # [UUID](https://en.wikipedia.org/wiki/Universally_unique_identifier).
608
+ #
609
+ # The tag must contain only letters (a-z, A-Z), numbers (0-9),
610
+ # underscores (_), and hyphens (-). The maximum length is 40 characters.
611
+ class InstantiateInlineWorkflowTemplateRequest
612
+ include Google::Protobuf::MessageExts
613
+ extend Google::Protobuf::MessageExts::ClassMethods
614
+ end
615
+
616
+ # A request to update a workflow template.
617
+ # @!attribute [rw] template
618
+ # @return [Google::Cloud::Dataproc::V1::WorkflowTemplate]
619
+ # Required. The updated workflow template.
620
+ #
621
+ # The `template.version` field must match the current version.
622
+ class UpdateWorkflowTemplateRequest
623
+ include Google::Protobuf::MessageExts
624
+ extend Google::Protobuf::MessageExts::ClassMethods
625
+ end
626
+
627
+ # A request to list workflow templates in a project.
628
+ # @!attribute [rw] parent
629
+ # @return [String]
630
+ # Required. The resource name of the region or location, as described
631
+ # in https://cloud.google.com/apis/design/resource_names.
632
+ #
633
+ # * For `projects.regions.workflowTemplates,list`, the resource
634
+ # name of the region has the following format:
635
+ # `projects/{project_id}/regions/{region}`
636
+ #
637
+ # * For `projects.locations.workflowTemplates.list`, the
638
+ # resource name of the location has the following format:
639
+ # `projects/{project_id}/locations/{location}`
640
+ # @!attribute [rw] page_size
641
+ # @return [Integer]
642
+ # Optional. The maximum number of results to return in each response.
643
+ # @!attribute [rw] page_token
644
+ # @return [String]
645
+ # Optional. The page token, returned by a previous call, to request the
646
+ # next page of results.
647
+ class ListWorkflowTemplatesRequest
648
+ include Google::Protobuf::MessageExts
649
+ extend Google::Protobuf::MessageExts::ClassMethods
650
+ end
651
+
652
+ # A response to a request to list workflow templates in a project.
653
+ # @!attribute [r] templates
654
+ # @return [Array<Google::Cloud::Dataproc::V1::WorkflowTemplate>]
655
+ # Output only. WorkflowTemplates list.
656
+ # @!attribute [r] next_page_token
657
+ # @return [String]
658
+ # Output only. This token is included in the response if there are more
659
+ # results to fetch. To fetch additional results, provide this value as the
660
+ # page_token in a subsequent <code>ListWorkflowTemplatesRequest</code>.
661
+ class ListWorkflowTemplatesResponse
662
+ include Google::Protobuf::MessageExts
663
+ extend Google::Protobuf::MessageExts::ClassMethods
664
+ end
665
+
666
+ # A request to delete a workflow template.
667
+ #
668
+ # Currently started workflows will remain running.
669
+ # @!attribute [rw] name
670
+ # @return [String]
671
+ # Required. The resource name of the workflow template, as described
672
+ # in https://cloud.google.com/apis/design/resource_names.
673
+ #
674
+ # * For `projects.regions.workflowTemplates.delete`, the resource name
675
+ # of the template has the following format:
676
+ # `projects/{project_id}/regions/{region}/workflowTemplates/{template_id}`
677
+ #
678
+ # * For `projects.locations.workflowTemplates.instantiate`, the resource name
679
+ # of the template has the following format:
680
+ # `projects/{project_id}/locations/{location}/workflowTemplates/{template_id}`
681
+ # @!attribute [rw] version
682
+ # @return [Integer]
683
+ # Optional. The version of workflow template to delete. If specified,
684
+ # will only delete the template if the current server version matches
685
+ # specified version.
686
+ class DeleteWorkflowTemplateRequest
687
+ include Google::Protobuf::MessageExts
688
+ extend Google::Protobuf::MessageExts::ClassMethods
689
+ end
690
+ end
691
+ end
692
+ end
693
+ end