google-cloud-dataproc 0.2.2 → 0.3.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 (55) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +1 -1
  3. data/lib/google/cloud/dataproc.rb +56 -3
  4. data/lib/google/cloud/dataproc/v1.rb +62 -3
  5. data/lib/google/cloud/dataproc/v1/cluster_controller_client.rb +65 -5
  6. data/lib/google/cloud/dataproc/v1/cluster_controller_client_config.json +10 -7
  7. data/lib/google/cloud/dataproc/v1/clusters_pb.rb +11 -0
  8. data/lib/google/cloud/dataproc/v1/clusters_services_pb.rb +3 -2
  9. data/lib/google/cloud/dataproc/v1/credentials.rb +1 -1
  10. data/lib/google/cloud/dataproc/v1/doc/google/cloud/dataproc/v1/clusters.rb +128 -45
  11. data/lib/google/cloud/dataproc/v1/doc/google/cloud/dataproc/v1/jobs.rb +32 -15
  12. data/lib/google/cloud/dataproc/v1/doc/google/cloud/dataproc/v1/workflow_templates.rb +519 -0
  13. data/lib/google/cloud/dataproc/v1/doc/google/longrunning/operations.rb +1 -43
  14. data/lib/google/cloud/dataproc/v1/doc/google/protobuf/any.rb +1 -1
  15. data/lib/google/cloud/dataproc/v1/doc/google/protobuf/duration.rb +1 -1
  16. data/lib/google/cloud/dataproc/v1/doc/google/protobuf/empty.rb +1 -1
  17. data/lib/google/cloud/dataproc/v1/doc/google/protobuf/field_mask.rb +1 -1
  18. data/lib/google/cloud/dataproc/v1/doc/google/protobuf/timestamp.rb +1 -1
  19. data/lib/google/cloud/dataproc/v1/doc/google/rpc/status.rb +1 -1
  20. data/lib/google/cloud/dataproc/v1/job_controller_client.rb +16 -2
  21. data/lib/google/cloud/dataproc/v1/job_controller_client_config.json +9 -6
  22. data/lib/google/cloud/dataproc/v1/jobs_pb.rb +2 -0
  23. data/lib/google/cloud/dataproc/v1/jobs_services_pb.rb +2 -1
  24. data/lib/google/cloud/dataproc/v1/operations_pb.rb +0 -2
  25. data/lib/google/cloud/dataproc/v1/workflow_template_service_client.rb +690 -0
  26. data/lib/google/cloud/dataproc/v1/workflow_template_service_client_config.json +64 -0
  27. data/lib/google/cloud/dataproc/v1/workflow_templates_pb.rb +181 -0
  28. data/lib/google/cloud/dataproc/v1/workflow_templates_services_pb.rb +102 -0
  29. data/lib/google/cloud/dataproc/v1beta2.rb +281 -0
  30. data/lib/google/cloud/dataproc/v1beta2/cluster_controller_client.rb +799 -0
  31. data/lib/google/cloud/dataproc/v1beta2/cluster_controller_client_config.json +59 -0
  32. data/lib/google/cloud/dataproc/v1beta2/clusters_pb.rb +189 -0
  33. data/lib/google/cloud/dataproc/v1beta2/clusters_services_pb.rb +60 -0
  34. data/lib/google/cloud/dataproc/v1beta2/credentials.rb +41 -0
  35. data/lib/google/cloud/dataproc/v1beta2/doc/google/cloud/dataproc/v1beta2/clusters.rb +666 -0
  36. data/lib/google/cloud/dataproc/v1beta2/doc/google/cloud/dataproc/v1beta2/jobs.rb +691 -0
  37. data/lib/google/cloud/dataproc/v1beta2/doc/google/cloud/dataproc/v1beta2/workflow_templates.rb +524 -0
  38. data/lib/google/cloud/dataproc/v1beta2/doc/google/longrunning/operations.rb +51 -0
  39. data/lib/google/cloud/dataproc/v1beta2/doc/google/protobuf/any.rb +130 -0
  40. data/lib/google/cloud/dataproc/v1beta2/doc/google/protobuf/duration.rb +91 -0
  41. data/lib/google/cloud/dataproc/v1beta2/doc/google/protobuf/empty.rb +29 -0
  42. data/lib/google/cloud/dataproc/v1beta2/doc/google/protobuf/field_mask.rb +230 -0
  43. data/lib/google/cloud/dataproc/v1beta2/doc/google/protobuf/timestamp.rb +109 -0
  44. data/lib/google/cloud/dataproc/v1beta2/doc/google/rpc/status.rb +84 -0
  45. data/lib/google/cloud/dataproc/v1beta2/job_controller_client.rb +581 -0
  46. data/lib/google/cloud/dataproc/v1beta2/job_controller_client_config.json +59 -0
  47. data/lib/google/cloud/dataproc/v1beta2/jobs_pb.rb +248 -0
  48. data/lib/google/cloud/dataproc/v1beta2/jobs_services_pb.rb +61 -0
  49. data/lib/google/cloud/dataproc/v1beta2/operations_pb.rb +44 -0
  50. data/lib/google/cloud/dataproc/v1beta2/shared_pb.rb +18 -0
  51. data/lib/google/cloud/dataproc/v1beta2/workflow_template_service_client.rb +698 -0
  52. data/lib/google/cloud/dataproc/v1beta2/workflow_template_service_client_config.json +64 -0
  53. data/lib/google/cloud/dataproc/v1beta2/workflow_templates_pb.rb +183 -0
  54. data/lib/google/cloud/dataproc/v1beta2/workflow_templates_services_pb.rb +102 -0
  55. metadata +36 -5
@@ -0,0 +1,524 @@
1
+ # Copyright 2019 Google LLC
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # https://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+
15
+
16
+ module Google
17
+ module Cloud
18
+ module Dataproc
19
+ module V1beta2
20
+ # A Cloud Dataproc workflow template resource.
21
+ # @!attribute [rw] id
22
+ # @return [String]
23
+ # Required. The template id.
24
+ #
25
+ # The id must contain only letters (a-z, A-Z), numbers (0-9),
26
+ # underscores (_), and hyphens (-). Cannot begin or end with underscore
27
+ # or hyphen. Must consist of between 3 and 50 characters.
28
+ # @!attribute [rw] name
29
+ # @return [String]
30
+ # Output only. The "resource name" of the template, as described
31
+ # in https://cloud.google.com/apis/design/resource_names of the form
32
+ # `projects/{project_id}/regions/{region}/workflowTemplates/{template_id}`
33
+ # @!attribute [rw] version
34
+ # @return [Integer]
35
+ # Optional. Used to perform a consistent read-modify-write.
36
+ #
37
+ # This field should be left blank for a `CreateWorkflowTemplate` request. It
38
+ # is required for an `UpdateWorkflowTemplate` request, and must match the
39
+ # current server version. A typical update template flow would fetch the
40
+ # current template with a `GetWorkflowTemplate` request, which will return
41
+ # the current template with the `version` field filled in with the
42
+ # current server version. The user updates other fields in the template,
43
+ # then returns it as part of the `UpdateWorkflowTemplate` request.
44
+ # @!attribute [rw] create_time
45
+ # @return [Google::Protobuf::Timestamp]
46
+ # Output only. The time template was created.
47
+ # @!attribute [rw] update_time
48
+ # @return [Google::Protobuf::Timestamp]
49
+ # Output only. The time template was last updated.
50
+ # @!attribute [rw] labels
51
+ # @return [Hash{String => String}]
52
+ # Optional. The labels to associate with this template. These labels
53
+ # will be propagated to all jobs and clusters created by the workflow
54
+ # instance.
55
+ #
56
+ # Label **keys** must contain 1 to 63 characters, and must conform to
57
+ # [RFC 1035](https://www.ietf.org/rfc/rfc1035.txt).
58
+ #
59
+ # Label **values** may be empty, but, if present, must contain 1 to 63
60
+ # characters, and must conform to
61
+ # [RFC 1035](https://www.ietf.org/rfc/rfc1035.txt).
62
+ #
63
+ # No more than 32 labels can be associated with a template.
64
+ # @!attribute [rw] placement
65
+ # @return [Google::Cloud::Dataproc::V1beta2::WorkflowTemplatePlacement]
66
+ # Required. WorkflowTemplate scheduling information.
67
+ # @!attribute [rw] jobs
68
+ # @return [Array<Google::Cloud::Dataproc::V1beta2::OrderedJob>]
69
+ # Required. The Directed Acyclic Graph of Jobs to submit.
70
+ # @!attribute [rw] parameters
71
+ # @return [Array<Google::Cloud::Dataproc::V1beta2::TemplateParameter>]
72
+ # Optional. Template parameters whose values are substituted into the
73
+ # template. Values for parameters must be provided when the template is
74
+ # instantiated.
75
+ class WorkflowTemplate; end
76
+
77
+ # Specifies workflow execution target.
78
+ #
79
+ # Either `managed_cluster` or `cluster_selector` is required.
80
+ # @!attribute [rw] managed_cluster
81
+ # @return [Google::Cloud::Dataproc::V1beta2::ManagedCluster]
82
+ # Optional. A cluster that is managed by the workflow.
83
+ # @!attribute [rw] cluster_selector
84
+ # @return [Google::Cloud::Dataproc::V1beta2::ClusterSelector]
85
+ # Optional. A selector that chooses target cluster for jobs based
86
+ # on metadata.
87
+ #
88
+ # The selector is evaluated at the time each job is submitted.
89
+ class WorkflowTemplatePlacement; end
90
+
91
+ # Cluster that is managed by the workflow.
92
+ # @!attribute [rw] cluster_name
93
+ # @return [String]
94
+ # Required. The cluster name prefix. A unique cluster name will be formed by
95
+ # appending a random suffix.
96
+ #
97
+ # The name must contain only lower-case letters (a-z), numbers (0-9),
98
+ # and hyphens (-). Must begin with a letter. Cannot begin or end with
99
+ # hyphen. Must consist of between 2 and 35 characters.
100
+ # @!attribute [rw] config
101
+ # @return [Google::Cloud::Dataproc::V1beta2::ClusterConfig]
102
+ # Required. The cluster configuration.
103
+ # @!attribute [rw] labels
104
+ # @return [Hash{String => String}]
105
+ # Optional. The labels to associate with this cluster.
106
+ #
107
+ # Label keys must be between 1 and 63 characters long, and must conform to
108
+ # the following PCRE regular expression:
109
+ # [\p\\{Ll}\p\\{Lo}][\p\\{Ll}\p\\{Lo}\p\\{N}_-]\\{0,62}
110
+ #
111
+ # Label values must be between 1 and 63 characters long, and must conform to
112
+ # the following PCRE regular expression: [\p\\{Ll}\p\\{Lo}\p\\{N}_-]\\{0,63}
113
+ #
114
+ # No more than 32 labels can be associated with a given cluster.
115
+ class ManagedCluster; end
116
+
117
+ # A selector that chooses target cluster for jobs based on metadata.
118
+ # @!attribute [rw] zone
119
+ # @return [String]
120
+ # Optional. The zone where workflow process executes. This parameter does not
121
+ # affect the selection of the cluster.
122
+ #
123
+ # If unspecified, the zone of the first cluster matching the selector
124
+ # is used.
125
+ # @!attribute [rw] cluster_labels
126
+ # @return [Hash{String => String}]
127
+ # Required. The cluster labels. Cluster must have all labels
128
+ # to match.
129
+ class ClusterSelector; end
130
+
131
+ # A job executed by the workflow.
132
+ # @!attribute [rw] step_id
133
+ # @return [String]
134
+ # Required. The step id. The id must be unique among all jobs
135
+ # within the template.
136
+ #
137
+ # The step id is used as prefix for job id, as job
138
+ # `goog-dataproc-workflow-step-id` label, and in
139
+ # {Google::Cloud::Dataproc::V1beta2::OrderedJob#prerequisite_step_ids prerequisiteStepIds} field from other
140
+ # steps.
141
+ #
142
+ # The id must contain only letters (a-z, A-Z), numbers (0-9),
143
+ # underscores (_), and hyphens (-). Cannot begin or end with underscore
144
+ # or hyphen. Must consist of between 3 and 50 characters.
145
+ # @!attribute [rw] hadoop_job
146
+ # @return [Google::Cloud::Dataproc::V1beta2::HadoopJob]
147
+ # Job is a Hadoop job.
148
+ # @!attribute [rw] spark_job
149
+ # @return [Google::Cloud::Dataproc::V1beta2::SparkJob]
150
+ # Job is a Spark job.
151
+ # @!attribute [rw] pyspark_job
152
+ # @return [Google::Cloud::Dataproc::V1beta2::PySparkJob]
153
+ # Job is a Pyspark job.
154
+ # @!attribute [rw] hive_job
155
+ # @return [Google::Cloud::Dataproc::V1beta2::HiveJob]
156
+ # Job is a Hive job.
157
+ # @!attribute [rw] pig_job
158
+ # @return [Google::Cloud::Dataproc::V1beta2::PigJob]
159
+ # Job is a Pig job.
160
+ # @!attribute [rw] spark_sql_job
161
+ # @return [Google::Cloud::Dataproc::V1beta2::SparkSqlJob]
162
+ # Job is a SparkSql job.
163
+ # @!attribute [rw] labels
164
+ # @return [Hash{String => String}]
165
+ # Optional. The labels to associate with this job.
166
+ #
167
+ # Label keys must be between 1 and 63 characters long, and must conform to
168
+ # the following regular expression:
169
+ # [\p\\{Ll}\p\\{Lo}][\p\\{Ll}\p\\{Lo}\p\\{N}_-]\\{0,62}
170
+ #
171
+ # Label values must be between 1 and 63 characters long, and must conform to
172
+ # the following regular expression: [\p\\{Ll}\p\\{Lo}\p\\{N}_-]\\{0,63}
173
+ #
174
+ # No more than 32 labels can be associated with a given job.
175
+ # @!attribute [rw] scheduling
176
+ # @return [Google::Cloud::Dataproc::V1beta2::JobScheduling]
177
+ # Optional. Job scheduling configuration.
178
+ # @!attribute [rw] prerequisite_step_ids
179
+ # @return [Array<String>]
180
+ # Optional. The optional list of prerequisite job step_ids.
181
+ # If not specified, the job will start at the beginning of workflow.
182
+ class OrderedJob; end
183
+
184
+ # A configurable parameter that replaces one or more fields in the template.
185
+ # Parameterizable fields:
186
+ # * Labels
187
+ # * File uris
188
+ # * Job properties
189
+ # * Job arguments
190
+ # * Script variables
191
+ # * Main class (in HadoopJob and SparkJob)
192
+ # * Zone (in ClusterSelector)
193
+ # @!attribute [rw] name
194
+ # @return [String]
195
+ # Required. Parameter name.
196
+ # The parameter name is used as the key, and paired with the
197
+ # parameter value, which are passed to the template when the template
198
+ # is instantiated.
199
+ # The name must contain only capital letters (A-Z), numbers (0-9), and
200
+ # underscores (_), and must not start with a number. The maximum length is
201
+ # 40 characters.
202
+ # @!attribute [rw] fields
203
+ # @return [Array<String>]
204
+ # Required. Paths to all fields that the parameter replaces.
205
+ # A field is allowed to appear in at most one parameter's list of field paths.
206
+ #
207
+ # A field path is similar in syntax to a {Google::Protobuf::FieldMask}.
208
+ # For example, a field path that references the zone field of a workflow
209
+ # template's cluster selector would be specified as
210
+ # `placement.clusterSelector.zone`.
211
+ #
212
+ # Also, field paths can reference fields using the following syntax:
213
+ #
214
+ # * Values in maps can be referenced by key:
215
+ # * labels['key']
216
+ # * placement.clusterSelector.clusterLabels['key']
217
+ # * placement.managedCluster.labels['key']
218
+ # * placement.clusterSelector.clusterLabels['key']
219
+ # * jobs['step-id'].labels['key']
220
+ #
221
+ # * Jobs in the jobs list can be referenced by step-id:
222
+ # * jobs['step-id'].hadoopJob.mainJarFileUri
223
+ # * jobs['step-id'].hiveJob.queryFileUri
224
+ # * jobs['step-id'].pySparkJob.mainPythonFileUri
225
+ # * jobs['step-id'].hadoopJob.jarFileUris[0]
226
+ # * jobs['step-id'].hadoopJob.archiveUris[0]
227
+ # * jobs['step-id'].hadoopJob.fileUris[0]
228
+ # * jobs['step-id'].pySparkJob.pythonFileUris[0]
229
+ #
230
+ # * Items in repeated fields can be referenced by a zero-based index:
231
+ # * jobs['step-id'].sparkJob.args[0]
232
+ #
233
+ # * Other examples:
234
+ # * jobs['step-id'].hadoopJob.properties['key']
235
+ # * jobs['step-id'].hadoopJob.args[0]
236
+ # * jobs['step-id'].hiveJob.scriptVariables['key']
237
+ # * jobs['step-id'].hadoopJob.mainJarFileUri
238
+ # * placement.clusterSelector.zone
239
+ #
240
+ # It may not be possible to parameterize maps and repeated fields in their
241
+ # entirety since only individual map values and individual items in repeated
242
+ # fields can be referenced. For example, the following field paths are
243
+ # invalid:
244
+ #
245
+ # * placement.clusterSelector.clusterLabels
246
+ # * jobs['step-id'].sparkJob.args
247
+ # @!attribute [rw] description
248
+ # @return [String]
249
+ # Optional. Brief description of the parameter.
250
+ # Must not exceed 1024 characters.
251
+ # @!attribute [rw] validation
252
+ # @return [Google::Cloud::Dataproc::V1beta2::ParameterValidation]
253
+ # Optional. Validation rules to be applied to this parameter's value.
254
+ class TemplateParameter; end
255
+
256
+ # Configuration for parameter validation.
257
+ # @!attribute [rw] regex
258
+ # @return [Google::Cloud::Dataproc::V1beta2::RegexValidation]
259
+ # Validation based on regular expressions.
260
+ # @!attribute [rw] values
261
+ # @return [Google::Cloud::Dataproc::V1beta2::ValueValidation]
262
+ # Validation based on a list of allowed values.
263
+ class ParameterValidation; end
264
+
265
+ # Validation based on regular expressions.
266
+ # @!attribute [rw] regexes
267
+ # @return [Array<String>]
268
+ # Required. RE2 regular expressions used to validate the parameter's value.
269
+ # The value must match the regex in its entirety (substring
270
+ # matches are not sufficient).
271
+ class RegexValidation; end
272
+
273
+ # Validation based on a list of allowed values.
274
+ # @!attribute [rw] values
275
+ # @return [Array<String>]
276
+ # Required. List of allowed values for the parameter.
277
+ class ValueValidation; end
278
+
279
+ # A Cloud Dataproc workflow template resource.
280
+ # @!attribute [rw] template
281
+ # @return [String]
282
+ # Output only. The "resource name" of the template.
283
+ # @!attribute [rw] version
284
+ # @return [Integer]
285
+ # Output only. The version of template at the time of
286
+ # workflow instantiation.
287
+ # @!attribute [rw] create_cluster
288
+ # @return [Google::Cloud::Dataproc::V1beta2::ClusterOperation]
289
+ # Output only. The create cluster operation metadata.
290
+ # @!attribute [rw] graph
291
+ # @return [Google::Cloud::Dataproc::V1beta2::WorkflowGraph]
292
+ # Output only. The workflow graph.
293
+ # @!attribute [rw] delete_cluster
294
+ # @return [Google::Cloud::Dataproc::V1beta2::ClusterOperation]
295
+ # Output only. The delete cluster operation metadata.
296
+ # @!attribute [rw] state
297
+ # @return [Google::Cloud::Dataproc::V1beta2::WorkflowMetadata::State]
298
+ # Output only. The workflow state.
299
+ # @!attribute [rw] cluster_name
300
+ # @return [String]
301
+ # Output only. The name of the target cluster.
302
+ # @!attribute [rw] parameters
303
+ # @return [Hash{String => String}]
304
+ # Map from parameter names to values that were used for those parameters.
305
+ # @!attribute [rw] start_time
306
+ # @return [Google::Protobuf::Timestamp]
307
+ # Output only. Workflow start time.
308
+ # @!attribute [rw] end_time
309
+ # @return [Google::Protobuf::Timestamp]
310
+ # Output only. Workflow end time.
311
+ # @!attribute [rw] cluster_uuid
312
+ # @return [String]
313
+ # Output only. The UUID of target cluster.
314
+ class WorkflowMetadata
315
+ # The operation state.
316
+ module State
317
+ # Unused.
318
+ UNKNOWN = 0
319
+
320
+ # The operation has been created.
321
+ PENDING = 1
322
+
323
+ # The operation is running.
324
+ RUNNING = 2
325
+
326
+ # The operation is done; either cancelled or completed.
327
+ DONE = 3
328
+ end
329
+ end
330
+
331
+ # The cluster operation triggered by a workflow.
332
+ # @!attribute [rw] operation_id
333
+ # @return [String]
334
+ # Output only. The id of the cluster operation.
335
+ # @!attribute [rw] error
336
+ # @return [String]
337
+ # Output only. Error, if operation failed.
338
+ # @!attribute [rw] done
339
+ # @return [true, false]
340
+ # Output only. Indicates the operation is done.
341
+ class ClusterOperation; end
342
+
343
+ # The workflow graph.
344
+ # @!attribute [rw] nodes
345
+ # @return [Array<Google::Cloud::Dataproc::V1beta2::WorkflowNode>]
346
+ # Output only. The workflow nodes.
347
+ class WorkflowGraph; end
348
+
349
+ # The workflow node.
350
+ # @!attribute [rw] step_id
351
+ # @return [String]
352
+ # Output only. The name of the node.
353
+ # @!attribute [rw] prerequisite_step_ids
354
+ # @return [Array<String>]
355
+ # Output only. Node's prerequisite nodes.
356
+ # @!attribute [rw] job_id
357
+ # @return [String]
358
+ # Output only. The job id; populated after the node enters RUNNING state.
359
+ # @!attribute [rw] state
360
+ # @return [Google::Cloud::Dataproc::V1beta2::WorkflowNode::NodeState]
361
+ # Output only. The node state.
362
+ # @!attribute [rw] error
363
+ # @return [String]
364
+ # Output only. The error detail.
365
+ class WorkflowNode
366
+ # The workflow node state.
367
+ module NodeState
368
+ # State is unspecified.
369
+ NODE_STATUS_UNSPECIFIED = 0
370
+
371
+ # The node is awaiting prerequisite node to finish.
372
+ BLOCKED = 1
373
+
374
+ # The node is runnable but not running.
375
+ RUNNABLE = 2
376
+
377
+ # The node is running.
378
+ RUNNING = 3
379
+
380
+ # The node completed successfully.
381
+ COMPLETED = 4
382
+
383
+ # The node failed. A node can be marked FAILED because
384
+ # its ancestor or peer failed.
385
+ FAILED = 5
386
+ end
387
+ end
388
+
389
+ # A request to create a workflow template.
390
+ # @!attribute [rw] parent
391
+ # @return [String]
392
+ # Required. The "resource name" of the region, as described
393
+ # in https://cloud.google.com/apis/design/resource_names of the form
394
+ # `projects/{project_id}/regions/{region}`
395
+ # @!attribute [rw] template
396
+ # @return [Google::Cloud::Dataproc::V1beta2::WorkflowTemplate]
397
+ # Required. The Dataproc workflow template to create.
398
+ class CreateWorkflowTemplateRequest; end
399
+
400
+ # A request to fetch a workflow template.
401
+ # @!attribute [rw] name
402
+ # @return [String]
403
+ # Required. The "resource name" of the workflow template, as described
404
+ # in https://cloud.google.com/apis/design/resource_names of the form
405
+ # `projects/{project_id}/regions/{region}/workflowTemplates/{template_id}`
406
+ # @!attribute [rw] version
407
+ # @return [Integer]
408
+ # Optional. The version of workflow template to retrieve. Only previously
409
+ # instatiated versions can be retrieved.
410
+ #
411
+ # If unspecified, retrieves the current version.
412
+ class GetWorkflowTemplateRequest; end
413
+
414
+ # A request to instantiate a workflow template.
415
+ # @!attribute [rw] name
416
+ # @return [String]
417
+ # Required. The "resource name" of the workflow template, as described
418
+ # in https://cloud.google.com/apis/design/resource_names of the form
419
+ # `projects/{project_id}/regions/{region}/workflowTemplates/{template_id}`
420
+ # @!attribute [rw] version
421
+ # @return [Integer]
422
+ # Optional. The version of workflow template to instantiate. If specified,
423
+ # the workflow will be instantiated only if the current version of
424
+ # the workflow template has the supplied version.
425
+ #
426
+ # This option cannot be used to instantiate a previous version of
427
+ # workflow template.
428
+ # @!attribute [rw] instance_id
429
+ # @return [String]
430
+ # Deprecated. Please use `request_id` field instead.
431
+ # @!attribute [rw] request_id
432
+ # @return [String]
433
+ # Optional. A tag that prevents multiple concurrent workflow
434
+ # instances with the same tag from running. This mitigates risk of
435
+ # concurrent instances started due to retries.
436
+ #
437
+ # It is recommended to always set this value to a
438
+ # [UUID](https://en.wikipedia.org/wiki/Universally_unique_identifier).
439
+ #
440
+ # The tag must contain only letters (a-z, A-Z), numbers (0-9),
441
+ # underscores (_), and hyphens (-). The maximum length is 40 characters.
442
+ # @!attribute [rw] parameters
443
+ # @return [Hash{String => String}]
444
+ # Optional. Map from parameter names to values that should be used for those
445
+ # parameters. Values may not exceed 100 characters.
446
+ class InstantiateWorkflowTemplateRequest; end
447
+
448
+ # A request to instantiate an inline workflow template.
449
+ # @!attribute [rw] parent
450
+ # @return [String]
451
+ # Required. The "resource name" of the workflow template region, as described
452
+ # in https://cloud.google.com/apis/design/resource_names of the form
453
+ # `projects/{project_id}/regions/{region}`
454
+ # @!attribute [rw] template
455
+ # @return [Google::Cloud::Dataproc::V1beta2::WorkflowTemplate]
456
+ # Required. The workflow template to instantiate.
457
+ # @!attribute [rw] instance_id
458
+ # @return [String]
459
+ # Deprecated. Please use `request_id` field instead.
460
+ # @!attribute [rw] request_id
461
+ # @return [String]
462
+ # Optional. A tag that prevents multiple concurrent workflow
463
+ # instances with the same tag from running. This mitigates risk of
464
+ # concurrent instances started due to retries.
465
+ #
466
+ # It is recommended to always set this value to a
467
+ # [UUID](https://en.wikipedia.org/wiki/Universally_unique_identifier).
468
+ #
469
+ # The tag must contain only letters (a-z, A-Z), numbers (0-9),
470
+ # underscores (_), and hyphens (-). The maximum length is 40 characters.
471
+ class InstantiateInlineWorkflowTemplateRequest; end
472
+
473
+ # A request to update a workflow template.
474
+ # @!attribute [rw] template
475
+ # @return [Google::Cloud::Dataproc::V1beta2::WorkflowTemplate]
476
+ # Required. The updated workflow template.
477
+ #
478
+ # The `template.version` field must match the current version.
479
+ class UpdateWorkflowTemplateRequest; end
480
+
481
+ # A request to list workflow templates in a project.
482
+ # @!attribute [rw] parent
483
+ # @return [String]
484
+ # Required. The "resource name" of the region, as described
485
+ # in https://cloud.google.com/apis/design/resource_names of the form
486
+ # `projects/{project_id}/regions/{region}`
487
+ # @!attribute [rw] page_size
488
+ # @return [Integer]
489
+ # Optional. The maximum number of results to return in each response.
490
+ # @!attribute [rw] page_token
491
+ # @return [String]
492
+ # Optional. The page token, returned by a previous call, to request the
493
+ # next page of results.
494
+ class ListWorkflowTemplatesRequest; end
495
+
496
+ # A response to a request to list workflow templates in a project.
497
+ # @!attribute [rw] templates
498
+ # @return [Array<Google::Cloud::Dataproc::V1beta2::WorkflowTemplate>]
499
+ # Output only. WorkflowTemplates list.
500
+ # @!attribute [rw] next_page_token
501
+ # @return [String]
502
+ # Output only. This token is included in the response if there are more results
503
+ # to fetch. To fetch additional results, provide this value as the
504
+ # page_token in a subsequent <code>ListWorkflowTemplatesRequest</code>.
505
+ class ListWorkflowTemplatesResponse; end
506
+
507
+ # A request to delete a workflow template.
508
+ #
509
+ # Currently started workflows will remain running.
510
+ # @!attribute [rw] name
511
+ # @return [String]
512
+ # Required. The "resource name" of the workflow template, as described
513
+ # in https://cloud.google.com/apis/design/resource_names of the form
514
+ # `projects/{project_id}/regions/{region}/workflowTemplates/{template_id}`
515
+ # @!attribute [rw] version
516
+ # @return [Integer]
517
+ # Optional. The version of workflow template to delete. If specified,
518
+ # will only delete the template if the current server version matches
519
+ # specified version.
520
+ class DeleteWorkflowTemplateRequest; end
521
+ end
522
+ end
523
+ end
524
+ end