google-cloud-tasks 0.3.0 → 0.4.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/google/cloud/tasks/v2beta2/cloud_tasks_client.rb +210 -181
- data/lib/google/cloud/tasks/v2beta2/cloudtasks_services_pb.rb +79 -63
- data/lib/google/cloud/tasks/v2beta2/doc/google/cloud/tasks/v2beta2/cloudtasks.rb +178 -146
- data/lib/google/cloud/tasks/v2beta2/doc/google/cloud/tasks/v2beta2/queue.rb +103 -68
- data/lib/google/cloud/tasks/v2beta2/doc/google/cloud/tasks/v2beta2/target.rb +110 -71
- data/lib/google/cloud/tasks/v2beta2/doc/google/cloud/tasks/v2beta2/task.rb +43 -25
- data/lib/google/cloud/tasks/v2beta2/doc/google/rpc/status.rb +17 -14
- data/lib/google/cloud/tasks/v2beta3/cloud_tasks_client.rb +123 -104
- data/lib/google/cloud/tasks/v2beta3/cloudtasks_services_pb.rb +51 -39
- data/lib/google/cloud/tasks/v2beta3/doc/google/cloud/tasks/v2beta3/cloudtasks.rb +116 -92
- data/lib/google/cloud/tasks/v2beta3/doc/google/cloud/tasks/v2beta3/queue.rb +84 -55
- data/lib/google/cloud/tasks/v2beta3/doc/google/cloud/tasks/v2beta3/target.rb +175 -52
- data/lib/google/cloud/tasks/v2beta3/doc/google/cloud/tasks/v2beta3/task.rb +40 -16
- data/lib/google/cloud/tasks/v2beta3/doc/google/rpc/status.rb +17 -14
- data/lib/google/cloud/tasks/v2beta3/target_pb.rb +7 -0
- data/lib/google/cloud/tasks/v2beta3/task_pb.rb +1 -0
- metadata +4 -4
@@ -22,8 +22,9 @@ module Google
|
|
22
22
|
# retry options, queue types, and others.
|
23
23
|
# @!attribute [rw] name
|
24
24
|
# @return [String]
|
25
|
-
# Caller-specified and required in
|
26
|
-
#
|
25
|
+
# Caller-specified and required in
|
26
|
+
# {Google::Cloud::Tasks::V2beta3::CloudTasks::CreateQueue CreateQueue}, after
|
27
|
+
# which it becomes output only.
|
27
28
|
#
|
28
29
|
# The queue name.
|
29
30
|
#
|
@@ -33,7 +34,8 @@ module Google
|
|
33
34
|
# * `PROJECT_ID` can contain letters ([A-Za-z]), numbers ([0-9]),
|
34
35
|
# hyphens (-), colons (:), or periods (.).
|
35
36
|
# For more information, see
|
36
|
-
# [Identifying
|
37
|
+
# [Identifying
|
38
|
+
# projects](https://cloud.google.com/resource-manager/docs/creating-managing-projects#identifying_projects)
|
37
39
|
# * `LOCATION_ID` is the canonical ID for the queue's location.
|
38
40
|
# The list of available locations can be obtained by calling
|
39
41
|
# {Google::Cloud::Location::Locations::ListLocations ListLocations}.
|
@@ -42,24 +44,30 @@ module Google
|
|
42
44
|
# hyphens (-). The maximum length is 100 characters.
|
43
45
|
# @!attribute [rw] app_engine_http_queue
|
44
46
|
# @return [Google::Cloud::Tasks::V2beta3::AppEngineHttpQueue]
|
45
|
-
# {Google::Cloud::Tasks::V2beta3::AppEngineHttpQueue AppEngineHttpQueue}
|
46
|
-
#
|
47
|
+
# {Google::Cloud::Tasks::V2beta3::AppEngineHttpQueue AppEngineHttpQueue}
|
48
|
+
# settings apply only to [App Engine
|
49
|
+
# tasks][google.cloud.tasks.v2beta3.AppEngineHttpRequest] in this queue.
|
50
|
+
# {Google::Cloud::Tasks::V2beta3::HttpRequest Http tasks} are not affected by
|
51
|
+
# this proto.
|
47
52
|
# @!attribute [rw] rate_limits
|
48
53
|
# @return [Google::Cloud::Tasks::V2beta3::RateLimits]
|
49
54
|
# Rate limits for task dispatches.
|
50
55
|
#
|
51
|
-
# {Google::Cloud::Tasks::V2beta3::Queue#rate_limits rate_limits} and
|
52
|
-
#
|
53
|
-
# attempts
|
56
|
+
# {Google::Cloud::Tasks::V2beta3::Queue#rate_limits rate_limits} and
|
57
|
+
# {Google::Cloud::Tasks::V2beta3::Queue#retry_config retry_config} are related
|
58
|
+
# because they both control task attempts. However they control task attempts
|
59
|
+
# in different ways:
|
54
60
|
#
|
55
|
-
# * {Google::Cloud::Tasks::V2beta3::Queue#rate_limits rate_limits} controls the
|
61
|
+
# * {Google::Cloud::Tasks::V2beta3::Queue#rate_limits rate_limits} controls the
|
62
|
+
# total rate of
|
56
63
|
# dispatches from a queue (i.e. all traffic dispatched from the
|
57
64
|
# queue, regardless of whether the dispatch is from a first
|
58
65
|
# attempt or a retry).
|
59
|
-
# * {Google::Cloud::Tasks::V2beta3::Queue#retry_config retry_config} controls
|
66
|
+
# * {Google::Cloud::Tasks::V2beta3::Queue#retry_config retry_config} controls
|
67
|
+
# what happens to
|
60
68
|
# particular a task after its first attempt fails. That is,
|
61
|
-
# {Google::Cloud::Tasks::V2beta3::Queue#retry_config retry_config} controls
|
62
|
-
# second attempt, third attempt, etc).
|
69
|
+
# {Google::Cloud::Tasks::V2beta3::Queue#retry_config retry_config} controls
|
70
|
+
# task retries (the second attempt, third attempt, etc).
|
63
71
|
#
|
64
72
|
# The queue's actual dispatch rate is the result of:
|
65
73
|
#
|
@@ -80,25 +88,30 @@ module Google
|
|
80
88
|
# * For tasks created using the App Engine SDK: the queue-level retry
|
81
89
|
# settings apply to all tasks in the queue which do not have retry settings
|
82
90
|
# explicitly set on the task and were created by the App Engine SDK. See
|
83
|
-
# [App Engine
|
91
|
+
# [App Engine
|
92
|
+
# documentation](https://cloud.google.com/appengine/docs/standard/python/taskqueue/push/retrying-tasks).
|
84
93
|
# @!attribute [rw] state
|
85
94
|
# @return [Google::Cloud::Tasks::V2beta3::Queue::State]
|
86
95
|
# Output only. The state of the queue.
|
87
96
|
#
|
88
97
|
# `state` can only be changed by called
|
89
98
|
# {Google::Cloud::Tasks::V2beta3::CloudTasks::PauseQueue PauseQueue},
|
90
|
-
# {Google::Cloud::Tasks::V2beta3::CloudTasks::ResumeQueue ResumeQueue}, or
|
99
|
+
# {Google::Cloud::Tasks::V2beta3::CloudTasks::ResumeQueue ResumeQueue}, or
|
100
|
+
# uploading
|
91
101
|
# [queue.yaml/xml](https://cloud.google.com/appengine/docs/python/config/queueref).
|
92
|
-
# {Google::Cloud::Tasks::V2beta3::CloudTasks::UpdateQueue UpdateQueue} cannot be
|
102
|
+
# {Google::Cloud::Tasks::V2beta3::CloudTasks::UpdateQueue UpdateQueue} cannot be
|
103
|
+
# used to change `state`.
|
93
104
|
# @!attribute [rw] purge_time
|
94
105
|
# @return [Google::Protobuf::Timestamp]
|
95
106
|
# Output only. The last time this queue was purged.
|
96
107
|
#
|
97
|
-
# All tasks that were {Google::Cloud::Tasks::V2beta3::Task#create_time created}
|
98
|
-
# were purged.
|
108
|
+
# All tasks that were {Google::Cloud::Tasks::V2beta3::Task#create_time created}
|
109
|
+
# before this time were purged.
|
99
110
|
#
|
100
|
-
# A queue can be purged using
|
101
|
-
#
|
111
|
+
# A queue can be purged using
|
112
|
+
# {Google::Cloud::Tasks::V2beta3::CloudTasks::PurgeQueue PurgeQueue}, the [App
|
113
|
+
# Engine Task Queue SDK, or the Cloud
|
114
|
+
# Console](https://cloud.google.com/appengine/docs/standard/python/taskqueue/push/deleting-tasks-and-queues#purging_all_tasks_from_a_queue).
|
102
115
|
#
|
103
116
|
# Purge time will be truncated to the nearest microsecond. Purge
|
104
117
|
# time will be unset if the queue has never been purged.
|
@@ -146,8 +159,10 @@ module Google
|
|
146
159
|
# This message determines the maximum rate that tasks can be dispatched by a
|
147
160
|
# queue, regardless of whether the dispatch is a first task attempt or a retry.
|
148
161
|
#
|
149
|
-
# Note: The debugging command,
|
150
|
-
#
|
162
|
+
# Note: The debugging command,
|
163
|
+
# {Google::Cloud::Tasks::V2beta3::CloudTasks::RunTask RunTask}, will run a task
|
164
|
+
# even if the queue has reached its
|
165
|
+
# {Google::Cloud::Tasks::V2beta3::RateLimits RateLimits}.
|
151
166
|
# @!attribute [rw] max_dispatches_per_second
|
152
167
|
# @return [Float]
|
153
168
|
# The maximum rate at which tasks are dispatched from this queue.
|
@@ -155,12 +170,14 @@ module Google
|
|
155
170
|
# If unspecified when the queue is created, Cloud Tasks will pick the
|
156
171
|
# default.
|
157
172
|
#
|
158
|
-
# * For {Google::Cloud::Tasks::V2beta3::AppEngineHttpQueue App Engine queues},
|
173
|
+
# * For {Google::Cloud::Tasks::V2beta3::AppEngineHttpQueue App Engine queues},
|
174
|
+
# the maximum allowed value
|
159
175
|
# is 500.
|
160
176
|
#
|
161
177
|
#
|
162
178
|
# This field has the same meaning as
|
163
|
-
# [rate in
|
179
|
+
# [rate in
|
180
|
+
# queue.yaml/xml](https://cloud.google.com/appengine/docs/standard/python/config/queueref#rate).
|
164
181
|
# @!attribute [rw] max_burst_size
|
165
182
|
# @return [Integer]
|
166
183
|
# Output only. The max burst size.
|
@@ -188,9 +205,9 @@ module Google
|
|
188
205
|
# `queue.yaml/xml`, `max_burst_size` is equal to
|
189
206
|
# [bucket_size](https://cloud.google.com/appengine/docs/standard/python/config/queueref#bucket_size).
|
190
207
|
# Since `max_burst_size` is output only, if
|
191
|
-
# {Google::Cloud::Tasks::V2beta3::CloudTasks::UpdateQueue UpdateQueue} is called
|
192
|
-
# created by `queue.yaml/xml`, `max_burst_size` will be reset
|
193
|
-
# on the value of
|
208
|
+
# {Google::Cloud::Tasks::V2beta3::CloudTasks::UpdateQueue UpdateQueue} is called
|
209
|
+
# on a queue created by `queue.yaml/xml`, `max_burst_size` will be reset
|
210
|
+
# based on the value of
|
194
211
|
# {Google::Cloud::Tasks::V2beta3::RateLimits#max_dispatches_per_second max_dispatches_per_second},
|
195
212
|
# regardless of whether
|
196
213
|
# {Google::Cloud::Tasks::V2beta3::RateLimits#max_dispatches_per_second max_dispatches_per_second}
|
@@ -210,7 +227,8 @@ module Google
|
|
210
227
|
#
|
211
228
|
#
|
212
229
|
# This field has the same meaning as
|
213
|
-
# [max_concurrent_requests in
|
230
|
+
# [max_concurrent_requests in
|
231
|
+
# queue.yaml/xml](https://cloud.google.com/appengine/docs/standard/python/config/queueref#max_concurrent_requests).
|
214
232
|
class RateLimits; end
|
215
233
|
|
216
234
|
# Retry config.
|
@@ -230,15 +248,16 @@ module Google
|
|
230
248
|
# -1 indicates unlimited attempts.
|
231
249
|
#
|
232
250
|
# This field has the same meaning as
|
233
|
-
# [task_retry_limit in
|
251
|
+
# [task_retry_limit in
|
252
|
+
# queue.yaml/xml](https://cloud.google.com/appengine/docs/standard/python/config/queueref#retry_parameters).
|
234
253
|
# @!attribute [rw] max_retry_duration
|
235
254
|
# @return [Google::Protobuf::Duration]
|
236
255
|
# If positive, `max_retry_duration` specifies the time limit for
|
237
256
|
# retrying a failed task, measured from when the task was first
|
238
257
|
# attempted. Once `max_retry_duration` time has passed *and* the
|
239
|
-
# task has been attempted
|
240
|
-
# times,
|
241
|
-
# deleted.
|
258
|
+
# task has been attempted
|
259
|
+
# {Google::Cloud::Tasks::V2beta3::RetryConfig#max_attempts max_attempts} times,
|
260
|
+
# no further attempts will be made and the task will be deleted.
|
242
261
|
#
|
243
262
|
# If zero, then the task age is unlimited.
|
244
263
|
#
|
@@ -249,14 +268,17 @@ module Google
|
|
249
268
|
# `max_retry_duration` will be truncated to the nearest second.
|
250
269
|
#
|
251
270
|
# This field has the same meaning as
|
252
|
-
# [task_age_limit in
|
271
|
+
# [task_age_limit in
|
272
|
+
# queue.yaml/xml](https://cloud.google.com/appengine/docs/standard/python/config/queueref#retry_parameters).
|
253
273
|
# @!attribute [rw] min_backoff
|
254
274
|
# @return [Google::Protobuf::Duration]
|
255
|
-
# A task will be {Google::Cloud::Tasks::V2beta3::Task#schedule_time scheduled}
|
275
|
+
# A task will be {Google::Cloud::Tasks::V2beta3::Task#schedule_time scheduled}
|
276
|
+
# for retry between
|
256
277
|
# {Google::Cloud::Tasks::V2beta3::RetryConfig#min_backoff min_backoff} and
|
257
|
-
# {Google::Cloud::Tasks::V2beta3::RetryConfig#max_backoff max_backoff} duration
|
258
|
-
# if the queue's
|
259
|
-
#
|
278
|
+
# {Google::Cloud::Tasks::V2beta3::RetryConfig#max_backoff max_backoff} duration
|
279
|
+
# after it fails, if the queue's
|
280
|
+
# {Google::Cloud::Tasks::V2beta3::RetryConfig RetryConfig} specifies that the
|
281
|
+
# task should be retried.
|
260
282
|
#
|
261
283
|
# If unspecified when the queue is created, Cloud Tasks will pick the
|
262
284
|
# default.
|
@@ -265,14 +287,17 @@ module Google
|
|
265
287
|
# `min_backoff` will be truncated to the nearest second.
|
266
288
|
#
|
267
289
|
# This field has the same meaning as
|
268
|
-
# [min_backoff_seconds in
|
290
|
+
# [min_backoff_seconds in
|
291
|
+
# queue.yaml/xml](https://cloud.google.com/appengine/docs/standard/python/config/queueref#retry_parameters).
|
269
292
|
# @!attribute [rw] max_backoff
|
270
293
|
# @return [Google::Protobuf::Duration]
|
271
|
-
# A task will be {Google::Cloud::Tasks::V2beta3::Task#schedule_time scheduled}
|
294
|
+
# A task will be {Google::Cloud::Tasks::V2beta3::Task#schedule_time scheduled}
|
295
|
+
# for retry between
|
272
296
|
# {Google::Cloud::Tasks::V2beta3::RetryConfig#min_backoff min_backoff} and
|
273
|
-
# {Google::Cloud::Tasks::V2beta3::RetryConfig#max_backoff max_backoff} duration
|
274
|
-
# if the queue's
|
275
|
-
#
|
297
|
+
# {Google::Cloud::Tasks::V2beta3::RetryConfig#max_backoff max_backoff} duration
|
298
|
+
# after it fails, if the queue's
|
299
|
+
# {Google::Cloud::Tasks::V2beta3::RetryConfig RetryConfig} specifies that the
|
300
|
+
# task should be retried.
|
276
301
|
#
|
277
302
|
# If unspecified when the queue is created, Cloud Tasks will pick the
|
278
303
|
# default.
|
@@ -281,34 +306,38 @@ module Google
|
|
281
306
|
# `max_backoff` will be truncated to the nearest second.
|
282
307
|
#
|
283
308
|
# This field has the same meaning as
|
284
|
-
# [max_backoff_seconds in
|
309
|
+
# [max_backoff_seconds in
|
310
|
+
# queue.yaml/xml](https://cloud.google.com/appengine/docs/standard/python/config/queueref#retry_parameters).
|
285
311
|
# @!attribute [rw] max_doublings
|
286
312
|
# @return [Integer]
|
287
313
|
# The time between retries will double `max_doublings` times.
|
288
314
|
#
|
289
315
|
# A task's retry interval starts at
|
290
|
-
# {Google::Cloud::Tasks::V2beta3::RetryConfig#min_backoff min_backoff}, then
|
291
|
-
# `max_doublings` times, then increases linearly, and finally
|
292
|
-
# retries
|
316
|
+
# {Google::Cloud::Tasks::V2beta3::RetryConfig#min_backoff min_backoff}, then
|
317
|
+
# doubles `max_doublings` times, then increases linearly, and finally retries
|
318
|
+
# retries at intervals of
|
293
319
|
# {Google::Cloud::Tasks::V2beta3::RetryConfig#max_backoff max_backoff} up to
|
294
320
|
# {Google::Cloud::Tasks::V2beta3::RetryConfig#max_attempts max_attempts} times.
|
295
321
|
#
|
296
|
-
# For example, if
|
297
|
-
# {Google::Cloud::Tasks::V2beta3::RetryConfig#
|
298
|
-
#
|
299
|
-
#
|
300
|
-
# increase linearly by 2^3 *
|
301
|
-
#
|
302
|
-
#
|
303
|
-
#
|
304
|
-
#
|
322
|
+
# For example, if
|
323
|
+
# {Google::Cloud::Tasks::V2beta3::RetryConfig#min_backoff min_backoff} is 10s,
|
324
|
+
# {Google::Cloud::Tasks::V2beta3::RetryConfig#max_backoff max_backoff} is 300s,
|
325
|
+
# and `max_doublings` is 3, then the a task will first be retried in 10s. The
|
326
|
+
# retry interval will double three times, and then increase linearly by 2^3 *
|
327
|
+
# 10s. Finally, the task will retry at intervals of
|
328
|
+
# {Google::Cloud::Tasks::V2beta3::RetryConfig#max_backoff max_backoff} until the
|
329
|
+
# task has been attempted
|
330
|
+
# {Google::Cloud::Tasks::V2beta3::RetryConfig#max_attempts max_attempts} times.
|
331
|
+
# Thus, the requests will retry at 10s, 20s, 40s, 80s, 160s, 240s, 300s,
|
332
|
+
# 300s, ....
|
305
333
|
#
|
306
334
|
# If unspecified when the queue is created, Cloud Tasks will pick the
|
307
335
|
# default.
|
308
336
|
#
|
309
337
|
#
|
310
338
|
# This field has the same meaning as
|
311
|
-
# [max_doublings in
|
339
|
+
# [max_doublings in
|
340
|
+
# queue.yaml/xml](https://cloud.google.com/appengine/docs/standard/python/config/queueref#retry_parameters).
|
312
341
|
class RetryConfig; end
|
313
342
|
end
|
314
343
|
end
|
@@ -17,14 +17,105 @@ module Google
|
|
17
17
|
module Cloud
|
18
18
|
module Tasks
|
19
19
|
module V2beta3
|
20
|
+
# HTTP request.
|
21
|
+
#
|
22
|
+
# Warning: This is an [alpha](https://cloud.google.com/terms/launch-stages)
|
23
|
+
# feature. If you haven't already joined, you can [use this form to sign
|
24
|
+
# up](https://docs.google.com/forms/d/e/1FAIpQLSfc4uEy9CBHKYUSdnY1hdhKDCX7julVZHy3imOiR-XrU7bUNQ/viewform?usp=sf_link).
|
25
|
+
#
|
26
|
+
# The task will be pushed to the worker as an HTTP request. If the worker
|
27
|
+
# or the redirected worker acknowledges the task by returning a successful HTTP
|
28
|
+
# response code ([`200` - `299`]), the task will removed from the queue. If
|
29
|
+
# any other HTTP response code is returned or no response is received, the
|
30
|
+
# task will be retried according to the following:
|
31
|
+
#
|
32
|
+
# * User-specified throttling: {Queue::RetryConfig retry configuration},
|
33
|
+
# {Queue::RateLimits rate limits}, and the [queue's
|
34
|
+
# state][google.cloud.tasks.v2beta3.Queue.state].
|
35
|
+
#
|
36
|
+
# * System throttling: To prevent the worker from overloading, Cloud Tasks may
|
37
|
+
# temporarily reduce the queue's effective rate. User-specified settings
|
38
|
+
# will not be changed.
|
39
|
+
#
|
40
|
+
# System throttling happens because:
|
41
|
+
#
|
42
|
+
# * Cloud Tasks backoffs on all errors. Normally the backoff specified in
|
43
|
+
# {Queue::RateLimits rate limits} will be used. But if the worker returns
|
44
|
+
# `429` (Too Many Requests), `503` (Service Unavailable), or the rate of
|
45
|
+
# errors is high, Cloud Tasks will use a higher backoff rate. The retry
|
46
|
+
# specified in the `Retry-After` HTTP response header is considered.
|
47
|
+
#
|
48
|
+
# * To prevent traffic spikes and to smooth sudden large traffic spikes,
|
49
|
+
# dispatches ramp up slowly when the queue is newly created or idle and
|
50
|
+
# if large numbers of tasks suddenly become available to dispatch (due to
|
51
|
+
# spikes in create task rates, the queue being unpaused, or many tasks
|
52
|
+
# that are scheduled at the same time).
|
53
|
+
# @!attribute [rw] url
|
54
|
+
# @return [String]
|
55
|
+
# Required. The full url path that the request will be sent to.
|
56
|
+
#
|
57
|
+
# This string must begin with either "http://" or "https://". Some examples
|
58
|
+
# are: `http://acme.com` and `https://acme.com/sales:8080`. Cloud Tasks will
|
59
|
+
# encode some characters for safety and compatibility. The maximum allowed
|
60
|
+
# URL length is 2083 characters after encoding.
|
61
|
+
#
|
62
|
+
# The `Location` header response from a redirect response [`300` - `399`]
|
63
|
+
# may be followed. The redirect is not counted as a separate attempt.
|
64
|
+
# @!attribute [rw] http_method
|
65
|
+
# @return [Google::Cloud::Tasks::V2beta3::HttpMethod]
|
66
|
+
# The HTTP method to use for the request. The default is POST.
|
67
|
+
# @!attribute [rw] headers
|
68
|
+
# @return [Hash{String => String}]
|
69
|
+
# HTTP request headers.
|
70
|
+
#
|
71
|
+
# This map contains the header field names and values.
|
72
|
+
# Headers can be set when the
|
73
|
+
# {Google::Cloud::Tasks::V2beta3::CloudTasks::CreateTask task is created}.
|
74
|
+
#
|
75
|
+
# These headers represent a subset of the headers that will accompany the
|
76
|
+
# task's HTTP request. Some HTTP request headers will be ignored or replaced.
|
77
|
+
#
|
78
|
+
# A partial list of headers that will be ignored or replaced is:
|
79
|
+
#
|
80
|
+
# * Host: This will be computed by Cloud Tasks and derived from
|
81
|
+
# {Google::Cloud::Tasks::V2beta3::HttpRequest#url HttpRequest#url}.
|
82
|
+
# * Content-Length: This will be computed by Cloud Tasks.
|
83
|
+
# * User-Agent: This will be set to `"Google-Cloud-Tasks"`.
|
84
|
+
# * X-Google-*: Google use only.
|
85
|
+
# * X-AppEngine-*: Google use only.
|
86
|
+
#
|
87
|
+
# `Content-Type` won't be set by Cloud Tasks. You can explicitly set
|
88
|
+
# `Content-Type` to a media type when the
|
89
|
+
# {Google::Cloud::Tasks::V2beta3::CloudTasks::CreateTask task is created}.
|
90
|
+
# For example, `Content-Type` can be set to `"application/octet-stream"` or
|
91
|
+
# `"application/json"`.
|
92
|
+
#
|
93
|
+
# Headers which can have multiple values (according to RFC2616) can be
|
94
|
+
# specified using comma-separated values.
|
95
|
+
#
|
96
|
+
# The size of the headers must be less than 80KB.
|
97
|
+
# @!attribute [rw] body
|
98
|
+
# @return [String]
|
99
|
+
# HTTP request body.
|
100
|
+
#
|
101
|
+
# A request body is allowed only if the
|
102
|
+
# {Google::Cloud::Tasks::V2beta3::HttpRequest#http_method HTTP method} is POST,
|
103
|
+
# PUT, or PATCH. It is an error to set body on a task with an incompatible
|
104
|
+
# {Google::Cloud::Tasks::V2beta3::HttpMethod HttpMethod}.
|
105
|
+
class HttpRequest; end
|
106
|
+
|
20
107
|
# App Engine HTTP queue.
|
21
108
|
#
|
22
109
|
# The task will be delivered to the App Engine application hostname
|
23
|
-
# specified by its
|
24
|
-
#
|
25
|
-
#
|
26
|
-
#
|
27
|
-
#
|
110
|
+
# specified by its
|
111
|
+
# {Google::Cloud::Tasks::V2beta3::AppEngineHttpQueue AppEngineHttpQueue} and
|
112
|
+
# {Google::Cloud::Tasks::V2beta3::AppEngineHttpRequest AppEngineHttpRequest}. The
|
113
|
+
# documentation for
|
114
|
+
# {Google::Cloud::Tasks::V2beta3::AppEngineHttpRequest AppEngineHttpRequest}
|
115
|
+
# explains how the task's host URL is constructed.
|
116
|
+
#
|
117
|
+
# Using {Google::Cloud::Tasks::V2beta3::AppEngineHttpQueue AppEngineHttpQueue}
|
118
|
+
# requires
|
28
119
|
# [`appengine.applications.get`](https://cloud.google.com/appengine/docs/admin-api/access-control)
|
29
120
|
# Google IAM permission for the project
|
30
121
|
# and the following scope:
|
@@ -33,11 +124,13 @@ module Google
|
|
33
124
|
# @!attribute [rw] app_engine_routing_override
|
34
125
|
# @return [Google::Cloud::Tasks::V2beta3::AppEngineRouting]
|
35
126
|
# Overrides for the
|
36
|
-
#
|
127
|
+
# [task-level
|
128
|
+
# app_engine_routing][google.cloud.tasks.v2beta3.AppEngineHttpRequest.app_engine_routing].
|
37
129
|
#
|
38
130
|
# If set, `app_engine_routing_override` is used for all tasks in
|
39
131
|
# the queue, no matter what the setting is for the
|
40
|
-
#
|
132
|
+
# [task-level
|
133
|
+
# app_engine_routing][google.cloud.tasks.v2beta3.AppEngineHttpRequest.app_engine_routing].
|
41
134
|
class AppEngineHttpQueue; end
|
42
135
|
|
43
136
|
# App Engine HTTP request.
|
@@ -46,9 +139,11 @@ module Google
|
|
46
139
|
# the task is dispatched.
|
47
140
|
#
|
48
141
|
# This proto can only be used for tasks in a queue which has
|
49
|
-
# {Google::Cloud::Tasks::V2beta3::Queue#app_engine_http_queue app_engine_http_queue}
|
142
|
+
# {Google::Cloud::Tasks::V2beta3::Queue#app_engine_http_queue app_engine_http_queue}
|
143
|
+
# set.
|
50
144
|
#
|
51
|
-
# Using {Google::Cloud::Tasks::V2beta3::AppEngineHttpRequest AppEngineHttpRequest}
|
145
|
+
# Using {Google::Cloud::Tasks::V2beta3::AppEngineHttpRequest AppEngineHttpRequest}
|
146
|
+
# requires
|
52
147
|
# [`appengine.applications.get`](https://cloud.google.com/appengine/docs/admin-api/access-control)
|
53
148
|
# Google IAM permission for the project
|
54
149
|
# and the following scope:
|
@@ -57,23 +152,27 @@ module Google
|
|
57
152
|
#
|
58
153
|
# The task will be delivered to the App Engine app which belongs to the same
|
59
154
|
# project as the queue. For more information, see
|
60
|
-
# [How Requests are
|
155
|
+
# [How Requests are
|
156
|
+
# Routed](https://cloud.google.com/appengine/docs/standard/python/how-requests-are-routed)
|
61
157
|
# and how routing is affected by
|
62
|
-
# [dispatch
|
158
|
+
# [dispatch
|
159
|
+
# files](https://cloud.google.com/appengine/docs/python/config/dispatchref).
|
63
160
|
# Traffic is encrypted during transport and never leaves Google datacenters.
|
64
161
|
# Because this traffic is carried over a communication mechanism internal to
|
65
162
|
# Google, you cannot explicitly set the protocol (for example, HTTP or HTTPS).
|
66
163
|
# The request to the handler, however, will appear to have used the HTTP
|
67
164
|
# protocol.
|
68
165
|
#
|
69
|
-
# The {Google::Cloud::Tasks::V2beta3::AppEngineRouting AppEngineRouting} used to
|
70
|
-
# delivered to can be set at the queue-level
|
166
|
+
# The {Google::Cloud::Tasks::V2beta3::AppEngineRouting AppEngineRouting} used to
|
167
|
+
# construct the URL that the task is delivered to can be set at the queue-level
|
168
|
+
# or task-level:
|
71
169
|
#
|
72
170
|
# * If set,
|
73
171
|
# {Google::Cloud::Tasks::V2beta3::AppEngineHttpQueue#app_engine_routing_override app_engine_routing_override}
|
74
172
|
# is used for all tasks in the queue, no matter what the setting
|
75
173
|
# is for the
|
76
|
-
#
|
174
|
+
# [task-level
|
175
|
+
# app_engine_routing][google.cloud.tasks.v2beta3.AppEngineHttpRequest.app_engine_routing].
|
77
176
|
#
|
78
177
|
#
|
79
178
|
# The `url` that the task will be sent to is:
|
@@ -83,10 +182,12 @@ module Google
|
|
83
182
|
#
|
84
183
|
# Tasks can be dispatched to secure app handlers, unsecure app handlers, and
|
85
184
|
# URIs restricted with
|
86
|
-
# [`login:
|
185
|
+
# [`login:
|
186
|
+
# admin`](https://cloud.google.com/appengine/docs/standard/python/config/appref).
|
87
187
|
# Because tasks are not run as any user, they cannot be dispatched to URIs
|
88
188
|
# restricted with
|
89
|
-
# [`login:
|
189
|
+
# [`login:
|
190
|
+
# required`](https://cloud.google.com/appengine/docs/standard/python/config/appref)
|
90
191
|
# Task dispatches also do not follow redirects.
|
91
192
|
#
|
92
193
|
# The task attempt has succeeded if the app's request handler returns
|
@@ -103,10 +204,12 @@ module Google
|
|
103
204
|
# The app's request handler for the task's target URL must be able to handle
|
104
205
|
# HTTP requests with this http_method, otherwise the task attempt will fail
|
105
206
|
# with error code 405 (Method Not Allowed). See
|
106
|
-
# [Writing a push task request
|
207
|
+
# [Writing a push task request
|
208
|
+
# handler](https://cloud.google.com/appengine/docs/java/taskqueue/push/creating-handlers#writing_a_push_task_request_handler)
|
107
209
|
# and the documentation for the request handlers in the language your app is
|
108
210
|
# written in e.g.
|
109
|
-
# [Python Request
|
211
|
+
# [Python Request
|
212
|
+
# Handler](https://cloud.google.com/appengine/docs/python/tools/webapp/requesthandlerclass).
|
110
213
|
# @!attribute [rw] app_engine_routing
|
111
214
|
# @return [Google::Cloud::Tasks::V2beta3::AppEngineRouting]
|
112
215
|
# Task-level setting for App Engine routing.
|
@@ -114,7 +217,8 @@ module Google
|
|
114
217
|
# If set,
|
115
218
|
# {Google::Cloud::Tasks::V2beta3::AppEngineHttpQueue#app_engine_routing_override app_engine_routing_override}
|
116
219
|
# is used for all tasks in the queue, no matter what the setting is for the
|
117
|
-
#
|
220
|
+
# [task-level
|
221
|
+
# app_engine_routing][google.cloud.tasks.v2beta3.AppEngineHttpRequest.app_engine_routing].
|
118
222
|
# @!attribute [rw] relative_uri
|
119
223
|
# @return [String]
|
120
224
|
# The relative URI.
|
@@ -140,8 +244,9 @@ module Google
|
|
140
244
|
# `"AppEngine-Google; (+http://code.google.com/appengine)"` to the
|
141
245
|
# modified `User-Agent`.
|
142
246
|
#
|
143
|
-
# If the task has a
|
144
|
-
# Tasks
|
247
|
+
# If the task has a
|
248
|
+
# {Google::Cloud::Tasks::V2beta3::AppEngineHttpRequest#body body}, Cloud Tasks
|
249
|
+
# sets the following headers:
|
145
250
|
#
|
146
251
|
# * `Content-Type`: By default, the `Content-Type` header is set to
|
147
252
|
# `"application/octet-stream"`. The default can be overridden by explicitly
|
@@ -159,19 +264,23 @@ module Google
|
|
159
264
|
#
|
160
265
|
# In addition, Cloud Tasks sets some headers when the task is dispatched,
|
161
266
|
# such as headers containing information about the task; see
|
162
|
-
# [request
|
267
|
+
# [request
|
268
|
+
# headers](https://cloud.google.com/appengine/docs/python/taskqueue/push/creating-handlers#reading_request_headers).
|
163
269
|
# These headers are set only when the task is dispatched, so they are not
|
164
270
|
# visible when the task is returned in a Cloud Tasks response.
|
165
271
|
#
|
166
272
|
# Although there is no specific limit for the maximum number of headers or
|
167
|
-
# the size, there is a limit on the maximum size of the
|
168
|
-
#
|
273
|
+
# the size, there is a limit on the maximum size of the
|
274
|
+
# {Google::Cloud::Tasks::V2beta3::Task Task}. For more information, see the
|
275
|
+
# {Google::Cloud::Tasks::V2beta3::CloudTasks::CreateTask CreateTask}
|
276
|
+
# documentation.
|
169
277
|
# @!attribute [rw] body
|
170
278
|
# @return [String]
|
171
279
|
# HTTP request body.
|
172
280
|
#
|
173
281
|
# A request body is allowed only if the HTTP method is POST or PUT. It is
|
174
|
-
# an error to set a body on a task with an incompatible
|
282
|
+
# an error to set a body on a task with an incompatible
|
283
|
+
# {Google::Cloud::Tasks::V2beta3::HttpMethod HttpMethod}.
|
175
284
|
class AppEngineHttpRequest; end
|
176
285
|
|
177
286
|
# App Engine Routing.
|
@@ -180,10 +289,14 @@ module Google
|
|
180
289
|
# and instance.
|
181
290
|
#
|
182
291
|
# For more information about services, versions, and instances see
|
183
|
-
# [An Overview of App
|
184
|
-
#
|
185
|
-
# [
|
186
|
-
#
|
292
|
+
# [An Overview of App
|
293
|
+
# Engine](https://cloud.google.com/appengine/docs/python/an-overview-of-app-engine),
|
294
|
+
# [Microservices Architecture on Google App
|
295
|
+
# Engine](https://cloud.google.com/appengine/docs/python/microservices-on-app-engine),
|
296
|
+
# [App Engine Standard request
|
297
|
+
# routing](https://cloud.google.com/appengine/docs/standard/python/how-requests-are-routed),
|
298
|
+
# and [App Engine Flex request
|
299
|
+
# routing](https://cloud.google.com/appengine/docs/flexible/python/how-requests-are-routed).
|
187
300
|
# @!attribute [rw] service
|
188
301
|
# @return [String]
|
189
302
|
# App service.
|
@@ -192,16 +305,18 @@ module Google
|
|
192
305
|
# service when the task is attempted.
|
193
306
|
#
|
194
307
|
# For some queues or tasks which were created using the App Engine
|
195
|
-
# Task Queue API, {Google::Cloud::Tasks::V2beta3::AppEngineRouting#host host} is
|
196
|
-
#
|
197
|
-
# {Google::Cloud::Tasks::V2beta3::AppEngineRouting#version version}, and
|
198
|
-
# {Google::Cloud::Tasks::V2beta3::AppEngineRouting#instance instance}. For example, some tasks
|
199
|
-
# which were created using the App Engine SDK use a custom domain
|
200
|
-
# name; custom domains are not parsed by Cloud Tasks. If
|
201
|
-
# {Google::Cloud::Tasks::V2beta3::AppEngineRouting#host host} is not parsable, then
|
308
|
+
# Task Queue API, {Google::Cloud::Tasks::V2beta3::AppEngineRouting#host host} is
|
309
|
+
# not parsable into
|
202
310
|
# {Google::Cloud::Tasks::V2beta3::AppEngineRouting#service service},
|
203
311
|
# {Google::Cloud::Tasks::V2beta3::AppEngineRouting#version version}, and
|
204
|
-
# {Google::Cloud::Tasks::V2beta3::AppEngineRouting#instance instance}
|
312
|
+
# {Google::Cloud::Tasks::V2beta3::AppEngineRouting#instance instance}. For
|
313
|
+
# example, some tasks which were created using the App Engine SDK use a
|
314
|
+
# custom domain name; custom domains are not parsed by Cloud Tasks. If
|
315
|
+
# {Google::Cloud::Tasks::V2beta3::AppEngineRouting#host host} is not parsable,
|
316
|
+
# then {Google::Cloud::Tasks::V2beta3::AppEngineRouting#service service},
|
317
|
+
# {Google::Cloud::Tasks::V2beta3::AppEngineRouting#version version}, and
|
318
|
+
# {Google::Cloud::Tasks::V2beta3::AppEngineRouting#instance instance} are the
|
319
|
+
# empty string.
|
205
320
|
# @!attribute [rw] version
|
206
321
|
# @return [String]
|
207
322
|
# App version.
|
@@ -210,16 +325,18 @@ module Google
|
|
210
325
|
# version when the task is attempted.
|
211
326
|
#
|
212
327
|
# For some queues or tasks which were created using the App Engine
|
213
|
-
# Task Queue API, {Google::Cloud::Tasks::V2beta3::AppEngineRouting#host host} is
|
214
|
-
#
|
215
|
-
# {Google::Cloud::Tasks::V2beta3::AppEngineRouting#version version}, and
|
216
|
-
# {Google::Cloud::Tasks::V2beta3::AppEngineRouting#instance instance}. For example, some tasks
|
217
|
-
# which were created using the App Engine SDK use a custom domain
|
218
|
-
# name; custom domains are not parsed by Cloud Tasks. If
|
219
|
-
# {Google::Cloud::Tasks::V2beta3::AppEngineRouting#host host} is not parsable, then
|
328
|
+
# Task Queue API, {Google::Cloud::Tasks::V2beta3::AppEngineRouting#host host} is
|
329
|
+
# not parsable into
|
220
330
|
# {Google::Cloud::Tasks::V2beta3::AppEngineRouting#service service},
|
221
331
|
# {Google::Cloud::Tasks::V2beta3::AppEngineRouting#version version}, and
|
222
|
-
# {Google::Cloud::Tasks::V2beta3::AppEngineRouting#instance instance}
|
332
|
+
# {Google::Cloud::Tasks::V2beta3::AppEngineRouting#instance instance}. For
|
333
|
+
# example, some tasks which were created using the App Engine SDK use a
|
334
|
+
# custom domain name; custom domains are not parsed by Cloud Tasks. If
|
335
|
+
# {Google::Cloud::Tasks::V2beta3::AppEngineRouting#host host} is not parsable,
|
336
|
+
# then {Google::Cloud::Tasks::V2beta3::AppEngineRouting#service service},
|
337
|
+
# {Google::Cloud::Tasks::V2beta3::AppEngineRouting#version version}, and
|
338
|
+
# {Google::Cloud::Tasks::V2beta3::AppEngineRouting#instance instance} are the
|
339
|
+
# empty string.
|
223
340
|
# @!attribute [rw] instance
|
224
341
|
# @return [String]
|
225
342
|
# App instance.
|
@@ -228,22 +345,28 @@ module Google
|
|
228
345
|
# the task is attempted.
|
229
346
|
#
|
230
347
|
# Requests can only be sent to a specific instance if
|
231
|
-
# [manual scaling is used in App Engine
|
348
|
+
# [manual scaling is used in App Engine
|
349
|
+
# Standard](https://cloud.google.com/appengine/docs/python/an-overview-of-app-engine?hl=en_US#scaling_types_and_instance_classes).
|
232
350
|
# App Engine Flex does not support instances. For more information, see
|
233
|
-
# [App Engine Standard request
|
234
|
-
#
|
351
|
+
# [App Engine Standard request
|
352
|
+
# routing](https://cloud.google.com/appengine/docs/standard/python/how-requests-are-routed)
|
353
|
+
# and [App Engine Flex request
|
354
|
+
# routing](https://cloud.google.com/appengine/docs/flexible/python/how-requests-are-routed).
|
235
355
|
# @!attribute [rw] host
|
236
356
|
# @return [String]
|
237
357
|
# Output only. The host that the task is sent to.
|
238
358
|
#
|
239
359
|
# The host is constructed from the domain name of the app associated with
|
240
360
|
# the queue's project ID (for example <app-id>.appspot.com), and the
|
241
|
-
# {Google::Cloud::Tasks::V2beta3::AppEngineRouting#service service},
|
242
|
-
#
|
243
|
-
#
|
361
|
+
# {Google::Cloud::Tasks::V2beta3::AppEngineRouting#service service},
|
362
|
+
# {Google::Cloud::Tasks::V2beta3::AppEngineRouting#version version}, and
|
363
|
+
# {Google::Cloud::Tasks::V2beta3::AppEngineRouting#instance instance}. Tasks
|
364
|
+
# which were created using the App Engine SDK might have a custom domain
|
365
|
+
# name.
|
244
366
|
#
|
245
367
|
# For more information, see
|
246
|
-
# [How Requests are
|
368
|
+
# [How Requests are
|
369
|
+
# Routed](https://cloud.google.com/appengine/docs/standard/python/how-requests-are-routed).
|
247
370
|
class AppEngineRouting; end
|
248
371
|
|
249
372
|
# The HTTP method used to execute the task.
|