google-cloud-tasks 0.3.0 → 0.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- 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.
|