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