google-cloud-batch-v1 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (34) hide show
  1. checksums.yaml +7 -0
  2. data/.yardopts +12 -0
  3. data/AUTHENTICATION.md +149 -0
  4. data/LICENSE.md +201 -0
  5. data/README.md +141 -0
  6. data/lib/google/cloud/batch/v1/batch_pb.rb +84 -0
  7. data/lib/google/cloud/batch/v1/batch_service/client.rb +994 -0
  8. data/lib/google/cloud/batch/v1/batch_service/credentials.rb +47 -0
  9. data/lib/google/cloud/batch/v1/batch_service/operations.rb +767 -0
  10. data/lib/google/cloud/batch/v1/batch_service/paths.rb +113 -0
  11. data/lib/google/cloud/batch/v1/batch_service.rb +52 -0
  12. data/lib/google/cloud/batch/v1/batch_services_pb.rb +57 -0
  13. data/lib/google/cloud/batch/v1/job_pb.rb +170 -0
  14. data/lib/google/cloud/batch/v1/task_pb.rb +121 -0
  15. data/lib/google/cloud/batch/v1/version.rb +28 -0
  16. data/lib/google/cloud/batch/v1/volume_pb.rb +37 -0
  17. data/lib/google/cloud/batch/v1.rb +40 -0
  18. data/lib/google-cloud-batch-v1.rb +21 -0
  19. data/proto_docs/README.md +4 -0
  20. data/proto_docs/google/api/field_behavior.rb +71 -0
  21. data/proto_docs/google/api/resource.rb +222 -0
  22. data/proto_docs/google/cloud/batch/v1/batch.rb +209 -0
  23. data/proto_docs/google/cloud/batch/v1/job.rb +490 -0
  24. data/proto_docs/google/cloud/batch/v1/task.rb +329 -0
  25. data/proto_docs/google/cloud/batch/v1/volume.rb +78 -0
  26. data/proto_docs/google/longrunning/operations.rb +164 -0
  27. data/proto_docs/google/protobuf/any.rb +141 -0
  28. data/proto_docs/google/protobuf/duration.rb +98 -0
  29. data/proto_docs/google/protobuf/empty.rb +36 -0
  30. data/proto_docs/google/protobuf/field_mask.rb +229 -0
  31. data/proto_docs/google/protobuf/timestamp.rb +129 -0
  32. data/proto_docs/google/rpc/status.rb +46 -0
  33. data/proto_docs/google/type/expr.rb +75 -0
  34. metadata +266 -0
@@ -0,0 +1,329 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2022 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 Batch
23
+ module V1
24
+ # Compute resource requirements
25
+ # @!attribute [rw] cpu_milli
26
+ # @return [::Integer]
27
+ # The milliCPU count.
28
+ # @!attribute [rw] memory_mib
29
+ # @return [::Integer]
30
+ # Memory in MiB.
31
+ # @!attribute [rw] boot_disk_mib
32
+ # @return [::Integer]
33
+ # Extra boot disk size in MiB for each task.
34
+ class ComputeResource
35
+ include ::Google::Protobuf::MessageExts
36
+ extend ::Google::Protobuf::MessageExts::ClassMethods
37
+ end
38
+
39
+ # Status event
40
+ # @!attribute [rw] type
41
+ # @return [::String]
42
+ # Type of the event.
43
+ # @!attribute [rw] description
44
+ # @return [::String]
45
+ # Description of the event.
46
+ # @!attribute [rw] event_time
47
+ # @return [::Google::Protobuf::Timestamp]
48
+ # The time this event occurred.
49
+ # @!attribute [rw] task_execution
50
+ # @return [::Google::Cloud::Batch::V1::TaskExecution]
51
+ # Task Execution
52
+ class StatusEvent
53
+ include ::Google::Protobuf::MessageExts
54
+ extend ::Google::Protobuf::MessageExts::ClassMethods
55
+ end
56
+
57
+ # This Task Execution field includes detail information for
58
+ # task execution procedures, based on StatusEvent types.
59
+ # @!attribute [rw] exit_code
60
+ # @return [::Integer]
61
+ # When task is completed as the status of FAILED or SUCCEEDED,
62
+ # exit code is for one task execution result, default is 0 as success.
63
+ class TaskExecution
64
+ include ::Google::Protobuf::MessageExts
65
+ extend ::Google::Protobuf::MessageExts::ClassMethods
66
+ end
67
+
68
+ # Status of a task
69
+ # @!attribute [rw] state
70
+ # @return [::Google::Cloud::Batch::V1::TaskStatus::State]
71
+ # Task state
72
+ # @!attribute [rw] status_events
73
+ # @return [::Array<::Google::Cloud::Batch::V1::StatusEvent>]
74
+ # Detailed info about why the state is reached.
75
+ class TaskStatus
76
+ include ::Google::Protobuf::MessageExts
77
+ extend ::Google::Protobuf::MessageExts::ClassMethods
78
+
79
+ # Task states.
80
+ module State
81
+ # unknown state
82
+ STATE_UNSPECIFIED = 0
83
+
84
+ # The Task is created and waiting for resources.
85
+ PENDING = 1
86
+
87
+ # The Task is assigned to at least one VM.
88
+ ASSIGNED = 2
89
+
90
+ # The Task is running.
91
+ RUNNING = 3
92
+
93
+ # The Task has failed.
94
+ FAILED = 4
95
+
96
+ # The Task has succeeded.
97
+ SUCCEEDED = 5
98
+ end
99
+ end
100
+
101
+ # Runnable describes instructions for executing a specific script or container
102
+ # as part of a Task.
103
+ # @!attribute [rw] container
104
+ # @return [::Google::Cloud::Batch::V1::Runnable::Container]
105
+ # Container runnable.
106
+ # @!attribute [rw] script
107
+ # @return [::Google::Cloud::Batch::V1::Runnable::Script]
108
+ # Script runnable.
109
+ # @!attribute [rw] barrier
110
+ # @return [::Google::Cloud::Batch::V1::Runnable::Barrier]
111
+ # Barrier runnable.
112
+ # @!attribute [rw] ignore_exit_status
113
+ # @return [::Boolean]
114
+ # Normally, a non-zero exit status causes the Task to fail. This flag allows
115
+ # execution of other Runnables to continue instead.
116
+ # @!attribute [rw] background
117
+ # @return [::Boolean]
118
+ # This flag allows a Runnable to continue running in the background while the
119
+ # Task executes subsequent Runnables. This is useful to provide services to
120
+ # other Runnables (or to provide debugging support tools like SSH servers).
121
+ # @!attribute [rw] always_run
122
+ # @return [::Boolean]
123
+ # By default, after a Runnable fails, no further Runnable are executed. This
124
+ # flag indicates that this Runnable must be run even if the Task has already
125
+ # failed. This is useful for Runnables that copy output files off of the VM
126
+ # or for debugging.
127
+ #
128
+ # The always_run flag does not override the Task's overall max_run_duration.
129
+ # If the max_run_duration has expired then no further Runnables will execute,
130
+ # not even always_run Runnables.
131
+ class Runnable
132
+ include ::Google::Protobuf::MessageExts
133
+ extend ::Google::Protobuf::MessageExts::ClassMethods
134
+
135
+ # Container runnable.
136
+ # @!attribute [rw] image_uri
137
+ # @return [::String]
138
+ # The URI to pull the container image from.
139
+ # @!attribute [rw] commands
140
+ # @return [::Array<::String>]
141
+ # Overrides the `CMD` specified in the container. If there is an ENTRYPOINT
142
+ # (either in the container image or with the entrypoint field below) then
143
+ # commands are appended as arguments to the ENTRYPOINT.
144
+ # @!attribute [rw] entrypoint
145
+ # @return [::String]
146
+ # Overrides the `ENTRYPOINT` specified in the container.
147
+ # @!attribute [rw] volumes
148
+ # @return [::Array<::String>]
149
+ # Volumes to mount (bind mount) from the host machine files or directories
150
+ # into the container, formatted to match docker run's --volume option,
151
+ # e.g. /foo:/bar, or /foo:/bar:ro
152
+ # @!attribute [rw] options
153
+ # @return [::String]
154
+ # Arbitrary additional options to include in the "docker run" command when
155
+ # running this container, e.g. "--network host".
156
+ # @!attribute [rw] block_external_network
157
+ # @return [::Boolean]
158
+ # If set to true, external network access to and from container will be
159
+ # blocked. The container will use the default internal network
160
+ # 'goog-internal'.
161
+ # @!attribute [rw] username
162
+ # @return [::String]
163
+ # Optional username for logging in to a docker registry. If username
164
+ # matches "projects/*/secrets/*/versions/*" then Batch will read the
165
+ # username from the Secret Manager.
166
+ # @!attribute [rw] password
167
+ # @return [::String]
168
+ # Optional password for logging in to a docker registry. If password
169
+ # matches "projects/*/secrets/*/versions/*" then Batch will read the
170
+ # password from the Secret Manager;
171
+ class Container
172
+ include ::Google::Protobuf::MessageExts
173
+ extend ::Google::Protobuf::MessageExts::ClassMethods
174
+ end
175
+
176
+ # Script runnable.
177
+ # @!attribute [rw] path
178
+ # @return [::String]
179
+ # Script file path on the host VM.
180
+ # @!attribute [rw] text
181
+ # @return [::String]
182
+ # Shell script text.
183
+ class Script
184
+ include ::Google::Protobuf::MessageExts
185
+ extend ::Google::Protobuf::MessageExts::ClassMethods
186
+ end
187
+
188
+ # Barrier runnable blocks until all tasks in a taskgroup reach it.
189
+ # @!attribute [rw] name
190
+ # @return [::String]
191
+ # Barriers are identified by their index in runnable list.
192
+ # Names are not required, but if present should be an identifier.
193
+ class Barrier
194
+ include ::Google::Protobuf::MessageExts
195
+ extend ::Google::Protobuf::MessageExts::ClassMethods
196
+ end
197
+ end
198
+
199
+ # Spec of a task
200
+ # @!attribute [rw] runnables
201
+ # @return [::Array<::Google::Cloud::Batch::V1::Runnable>]
202
+ # The sequence of scripts or containers to run for this Task. Each Task using
203
+ # this TaskSpec executes its list of runnables in order. The Task succeeds if
204
+ # all of its runnables either exit with a zero status or any that exit with a
205
+ # non-zero status have the ignore_exit_status flag.
206
+ #
207
+ # Background runnables are killed automatically (if they have not already
208
+ # exited) a short time after all foreground runnables have completed. Even
209
+ # though this is likely to result in a non-zero exit status for the
210
+ # background runnable, these automatic kills are not treated as Task
211
+ # failures.
212
+ # @!attribute [rw] compute_resource
213
+ # @return [::Google::Cloud::Batch::V1::ComputeResource]
214
+ # ComputeResource requirements.
215
+ # @!attribute [rw] max_run_duration
216
+ # @return [::Google::Protobuf::Duration]
217
+ # Maximum duration the task should run.
218
+ # The task will be killed and marked as FAILED if over this limit.
219
+ # @!attribute [rw] max_retry_count
220
+ # @return [::Integer]
221
+ # Maximum number of retries on failures.
222
+ # The default, 0, which means never retry.
223
+ # The valid value range is [0, 10].
224
+ # @!attribute [rw] lifecycle_policies
225
+ # @return [::Array<::Google::Cloud::Batch::V1::LifecyclePolicy>]
226
+ # Lifecycle management schema when any task in a task group is failed.
227
+ # The valid size of lifecycle policies are [0, 10].
228
+ # For each lifecycle policy, when the condition is met,
229
+ # the action in that policy will execute.
230
+ # If there are multiple policies that the task execution result matches,
231
+ # we use the action from the first matched policy. If task execution result
232
+ # does not meet with any of the defined lifecycle policy, we consider it as
233
+ # the default policy. Default policy means if the exit code is 0, exit task.
234
+ # If task ends with non-zero exit code, retry the task with max_retry_count.
235
+ # @!attribute [rw] environments
236
+ # @return [::Google::Protobuf::Map{::String => ::String}]
237
+ # Environment variables to set before running the Task.
238
+ # You can set up to 100 environments.
239
+ # @!attribute [rw] volumes
240
+ # @return [::Array<::Google::Cloud::Batch::V1::Volume>]
241
+ # Volumes to mount before running Tasks using this TaskSpec.
242
+ class TaskSpec
243
+ include ::Google::Protobuf::MessageExts
244
+ extend ::Google::Protobuf::MessageExts::ClassMethods
245
+
246
+ # @!attribute [rw] key
247
+ # @return [::String]
248
+ # @!attribute [rw] value
249
+ # @return [::String]
250
+ class EnvironmentsEntry
251
+ include ::Google::Protobuf::MessageExts
252
+ extend ::Google::Protobuf::MessageExts::ClassMethods
253
+ end
254
+ end
255
+
256
+ # LifecyclePolicy describes how to deal with task failures
257
+ # based on different conditions.
258
+ # @!attribute [rw] action
259
+ # @return [::Google::Cloud::Batch::V1::LifecyclePolicy::Action]
260
+ # Action to execute when ActionCondition is true.
261
+ # @!attribute [rw] action_condition
262
+ # @return [::Google::Cloud::Batch::V1::LifecyclePolicy::ActionCondition]
263
+ # Conditions that decide why a task failure is dealt with a specific action.
264
+ class LifecyclePolicy
265
+ include ::Google::Protobuf::MessageExts
266
+ extend ::Google::Protobuf::MessageExts::ClassMethods
267
+
268
+ # Conditions for actions to deal with task failures.
269
+ # @!attribute [rw] exit_codes
270
+ # @return [::Array<::Integer>]
271
+ # Exit codes of a task execution.
272
+ # If there are more than 1 exit codes,
273
+ # when task executes with any of the exit code in the list,
274
+ # the condition is met and the action will be executed.
275
+ class ActionCondition
276
+ include ::Google::Protobuf::MessageExts
277
+ extend ::Google::Protobuf::MessageExts::ClassMethods
278
+ end
279
+
280
+ # Action on task failures based on different conditions.
281
+ module Action
282
+ # Action unspecified.
283
+ ACTION_UNSPECIFIED = 0
284
+
285
+ # Action that tasks in the group will be scheduled to re-execute.
286
+ RETRY_TASK = 1
287
+
288
+ # Action that tasks in the group will be stopped immediately.
289
+ FAIL_TASK = 2
290
+ end
291
+ end
292
+
293
+ # A Cloud Batch task.
294
+ # @!attribute [rw] name
295
+ # @return [::String]
296
+ # Task name.
297
+ # The name is generated from the parent TaskGroup name and 'id' field.
298
+ # For example:
299
+ # "projects/123456/locations/us-west1/jobs/job01/taskGroups/group01/tasks/task01".
300
+ # @!attribute [rw] status
301
+ # @return [::Google::Cloud::Batch::V1::TaskStatus]
302
+ # Task Status.
303
+ class Task
304
+ include ::Google::Protobuf::MessageExts
305
+ extend ::Google::Protobuf::MessageExts::ClassMethods
306
+ end
307
+
308
+ # An Environment describes a collection of environment variables to set when
309
+ # executing Tasks.
310
+ # @!attribute [rw] variables
311
+ # @return [::Google::Protobuf::Map{::String => ::String}]
312
+ # A map of environment variable names to values.
313
+ class Environment
314
+ include ::Google::Protobuf::MessageExts
315
+ extend ::Google::Protobuf::MessageExts::ClassMethods
316
+
317
+ # @!attribute [rw] key
318
+ # @return [::String]
319
+ # @!attribute [rw] value
320
+ # @return [::String]
321
+ class VariablesEntry
322
+ include ::Google::Protobuf::MessageExts
323
+ extend ::Google::Protobuf::MessageExts::ClassMethods
324
+ end
325
+ end
326
+ end
327
+ end
328
+ end
329
+ end
@@ -0,0 +1,78 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2022 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 Batch
23
+ module V1
24
+ # Volume and mount parameters to be associated with a TaskSpec. A TaskSpec
25
+ # might describe zero, one, or multiple volumes to be mounted as part of the
26
+ # task.
27
+ # @!attribute [rw] nfs
28
+ # @return [::Google::Cloud::Batch::V1::NFS]
29
+ # An NFS source for the volume (could be a Filestore, for example).
30
+ # @!attribute [rw] gcs
31
+ # @return [::Google::Cloud::Batch::V1::GCS]
32
+ # A Google Cloud Storage source for the volume.
33
+ # @!attribute [rw] device_name
34
+ # @return [::String]
35
+ # Device name of an attached disk
36
+ # @!attribute [rw] mount_path
37
+ # @return [::String]
38
+ # Mount path for the volume, e.g. /mnt/share
39
+ # @!attribute [rw] mount_options
40
+ # @return [::Array<::String>]
41
+ # Mount options
42
+ # For Google Cloud Storage, mount options are the global options supported by
43
+ # gcsfuse tool. Batch will use them to mount the volume with the following
44
+ # command:
45
+ # "gcsfuse [global options] bucket mountpoint".
46
+ # For PD, NFS, mount options are these supported by /etc/fstab. Batch will
47
+ # use Fstab to mount such volumes.
48
+ # https://help.ubuntu.com/community/Fstab
49
+ class Volume
50
+ include ::Google::Protobuf::MessageExts
51
+ extend ::Google::Protobuf::MessageExts::ClassMethods
52
+ end
53
+
54
+ # Represents an NFS server and remote path: <server>:<remote_path>
55
+ # @!attribute [rw] server
56
+ # @return [::String]
57
+ # URI of the NFS server, e.g. an IP address.
58
+ # @!attribute [rw] remote_path
59
+ # @return [::String]
60
+ # Remote source path exported from NFS, e.g., "/share".
61
+ class NFS
62
+ include ::Google::Protobuf::MessageExts
63
+ extend ::Google::Protobuf::MessageExts::ClassMethods
64
+ end
65
+
66
+ # Represents a Google Cloud Storage volume source config.
67
+ # @!attribute [rw] remote_path
68
+ # @return [::String]
69
+ # Remote path, either a bucket name or a subdirectory of a bucket, e.g.:
70
+ # bucket_name, bucket_name/subdirectory/
71
+ class GCS
72
+ include ::Google::Protobuf::MessageExts
73
+ extend ::Google::Protobuf::MessageExts::ClassMethods
74
+ end
75
+ end
76
+ end
77
+ end
78
+ end
@@ -0,0 +1,164 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2022 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 Longrunning
22
+ # This resource represents a long-running operation that is the result of a
23
+ # network API call.
24
+ # @!attribute [rw] name
25
+ # @return [::String]
26
+ # The server-assigned name, which is only unique within the same service that
27
+ # originally returns it. If you use the default HTTP mapping, the
28
+ # `name` should be a resource name ending with `operations/{unique_id}`.
29
+ # @!attribute [rw] metadata
30
+ # @return [::Google::Protobuf::Any]
31
+ # Service-specific metadata associated with the operation. It typically
32
+ # contains progress information and common metadata such as create time.
33
+ # Some services might not provide such metadata. Any method that returns a
34
+ # long-running operation should document the metadata type, if any.
35
+ # @!attribute [rw] done
36
+ # @return [::Boolean]
37
+ # If the value is `false`, it means the operation is still in progress.
38
+ # If `true`, the operation is completed, and either `error` or `response` is
39
+ # available.
40
+ # @!attribute [rw] error
41
+ # @return [::Google::Rpc::Status]
42
+ # The error result of the operation in case of failure or cancellation.
43
+ # @!attribute [rw] response
44
+ # @return [::Google::Protobuf::Any]
45
+ # The normal response of the operation in case of success. If the original
46
+ # method returns no data on success, such as `Delete`, the response is
47
+ # `google.protobuf.Empty`. If the original method is standard
48
+ # `Get`/`Create`/`Update`, the response should be the resource. For other
49
+ # methods, the response should have the type `XxxResponse`, where `Xxx`
50
+ # is the original method name. For example, if the original method name
51
+ # is `TakeSnapshot()`, the inferred response type is
52
+ # `TakeSnapshotResponse`.
53
+ class Operation
54
+ include ::Google::Protobuf::MessageExts
55
+ extend ::Google::Protobuf::MessageExts::ClassMethods
56
+ end
57
+
58
+ # The request message for Operations.GetOperation.
59
+ # @!attribute [rw] name
60
+ # @return [::String]
61
+ # The name of the operation resource.
62
+ class GetOperationRequest
63
+ include ::Google::Protobuf::MessageExts
64
+ extend ::Google::Protobuf::MessageExts::ClassMethods
65
+ end
66
+
67
+ # The request message for Operations.ListOperations.
68
+ # @!attribute [rw] name
69
+ # @return [::String]
70
+ # The name of the operation's parent resource.
71
+ # @!attribute [rw] filter
72
+ # @return [::String]
73
+ # The standard list filter.
74
+ # @!attribute [rw] page_size
75
+ # @return [::Integer]
76
+ # The standard list page size.
77
+ # @!attribute [rw] page_token
78
+ # @return [::String]
79
+ # The standard list page token.
80
+ class ListOperationsRequest
81
+ include ::Google::Protobuf::MessageExts
82
+ extend ::Google::Protobuf::MessageExts::ClassMethods
83
+ end
84
+
85
+ # The response message for Operations.ListOperations.
86
+ # @!attribute [rw] operations
87
+ # @return [::Array<::Google::Longrunning::Operation>]
88
+ # A list of operations that matches the specified filter in the request.
89
+ # @!attribute [rw] next_page_token
90
+ # @return [::String]
91
+ # The standard List next-page token.
92
+ class ListOperationsResponse
93
+ include ::Google::Protobuf::MessageExts
94
+ extend ::Google::Protobuf::MessageExts::ClassMethods
95
+ end
96
+
97
+ # The request message for Operations.CancelOperation.
98
+ # @!attribute [rw] name
99
+ # @return [::String]
100
+ # The name of the operation resource to be cancelled.
101
+ class CancelOperationRequest
102
+ include ::Google::Protobuf::MessageExts
103
+ extend ::Google::Protobuf::MessageExts::ClassMethods
104
+ end
105
+
106
+ # The request message for Operations.DeleteOperation.
107
+ # @!attribute [rw] name
108
+ # @return [::String]
109
+ # The name of the operation resource to be deleted.
110
+ class DeleteOperationRequest
111
+ include ::Google::Protobuf::MessageExts
112
+ extend ::Google::Protobuf::MessageExts::ClassMethods
113
+ end
114
+
115
+ # The request message for Operations.WaitOperation.
116
+ # @!attribute [rw] name
117
+ # @return [::String]
118
+ # The name of the operation resource to wait on.
119
+ # @!attribute [rw] timeout
120
+ # @return [::Google::Protobuf::Duration]
121
+ # The maximum duration to wait before timing out. If left blank, the wait
122
+ # will be at most the time permitted by the underlying HTTP/RPC protocol.
123
+ # If RPC context deadline is also specified, the shorter one will be used.
124
+ class WaitOperationRequest
125
+ include ::Google::Protobuf::MessageExts
126
+ extend ::Google::Protobuf::MessageExts::ClassMethods
127
+ end
128
+
129
+ # A message representing the message types used by a long-running operation.
130
+ #
131
+ # Example:
132
+ #
133
+ # rpc LongRunningRecognize(LongRunningRecognizeRequest)
134
+ # returns (google.longrunning.Operation) {
135
+ # option (google.longrunning.operation_info) = {
136
+ # response_type: "LongRunningRecognizeResponse"
137
+ # metadata_type: "LongRunningRecognizeMetadata"
138
+ # };
139
+ # }
140
+ # @!attribute [rw] response_type
141
+ # @return [::String]
142
+ # Required. The message name of the primary return type for this
143
+ # long-running operation.
144
+ # This type will be used to deserialize the LRO's response.
145
+ #
146
+ # If the response is in a different package from the rpc, a fully-qualified
147
+ # message name must be used (e.g. `google.protobuf.Struct`).
148
+ #
149
+ # Note: Altering this value constitutes a breaking change.
150
+ # @!attribute [rw] metadata_type
151
+ # @return [::String]
152
+ # Required. The message name of the metadata type for this long-running
153
+ # operation.
154
+ #
155
+ # If the response is in a different package from the rpc, a fully-qualified
156
+ # message name must be used (e.g. `google.protobuf.Struct`).
157
+ #
158
+ # Note: Altering this value constitutes a breaking change.
159
+ class OperationInfo
160
+ include ::Google::Protobuf::MessageExts
161
+ extend ::Google::Protobuf::MessageExts::ClassMethods
162
+ end
163
+ end
164
+ end