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.
@@ -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 {Google::Cloud::Tasks::V2beta3::CloudTasks::CreateQueue CreateQueue},
26
- # after which it becomes output only.
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 projects](https://cloud.google.com/resource-manager/docs/creating-managing-projects#identifying_projects)
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} settings apply only to
46
- # {Google::Cloud::Tasks::V2beta3::AppEngineHttpRequest App Engine tasks} in this queue.
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 {Google::Cloud::Tasks::V2beta3::Queue#retry_config retry_config} are
52
- # related because they both control task attempts. However they control task
53
- # attempts in different ways:
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 total rate of
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 what happens to
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 task retries (the
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 documentation](https://cloud.google.com/appengine/docs/standard/python/taskqueue/push/retrying-tasks).
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 uploading
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 used to change `state`.
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} before this time
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 {Google::Cloud::Tasks::V2beta3::CloudTasks::PurgeQueue PurgeQueue}, the
101
- # [App Engine Task Queue SDK, or the Cloud Console](https://cloud.google.com/appengine/docs/standard/python/taskqueue/push/deleting-tasks-and-queues#purging_all_tasks_from_a_queue).
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, {Google::Cloud::Tasks::V2beta3::CloudTasks::RunTask RunTask}, will run a task
150
- # even if the queue has reached its {Google::Cloud::Tasks::V2beta3::RateLimits RateLimits}.
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}, the maximum allowed value
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 queue.yaml/xml](https://cloud.google.com/appengine/docs/standard/python/config/queueref#rate).
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 on a queue
192
- # created by `queue.yaml/xml`, `max_burst_size` will be reset based
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 queue.yaml/xml](https://cloud.google.com/appengine/docs/standard/python/config/queueref#max_concurrent_requests).
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 queue.yaml/xml](https://cloud.google.com/appengine/docs/standard/python/config/queueref#retry_parameters).
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 {Google::Cloud::Tasks::V2beta3::RetryConfig#max_attempts max_attempts}
240
- # times, no further attempts will be made and the task will be
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 queue.yaml/xml](https://cloud.google.com/appengine/docs/standard/python/config/queueref#retry_parameters).
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} for retry between
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 after it fails,
258
- # if the queue's {Google::Cloud::Tasks::V2beta3::RetryConfig RetryConfig} specifies that the task should be
259
- # retried.
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 queue.yaml/xml](https://cloud.google.com/appengine/docs/standard/python/config/queueref#retry_parameters).
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} for retry between
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 after it fails,
274
- # if the queue's {Google::Cloud::Tasks::V2beta3::RetryConfig RetryConfig} specifies that the task should be
275
- # retried.
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 queue.yaml/xml](https://cloud.google.com/appengine/docs/standard/python/config/queueref#retry_parameters).
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 doubles
291
- # `max_doublings` times, then increases linearly, and finally
292
- # retries retries at intervals of
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 {Google::Cloud::Tasks::V2beta3::RetryConfig#min_backoff min_backoff} is 10s,
297
- # {Google::Cloud::Tasks::V2beta3::RetryConfig#max_backoff max_backoff} is 300s, and
298
- # `max_doublings` is 3, then the a task will first be retried in
299
- # 10s. The retry interval will double three times, and then
300
- # increase linearly by 2^3 * 10s. Finally, the task will retry at
301
- # intervals of {Google::Cloud::Tasks::V2beta3::RetryConfig#max_backoff max_backoff} until the
302
- # task has been attempted {Google::Cloud::Tasks::V2beta3::RetryConfig#max_attempts max_attempts}
303
- # times. Thus, the requests will retry at 10s, 20s, 40s, 80s, 160s,
304
- # 240s, 300s, 300s, ....
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 queue.yaml/xml](https://cloud.google.com/appengine/docs/standard/python/config/queueref#retry_parameters).
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 {Google::Cloud::Tasks::V2beta3::AppEngineHttpQueue AppEngineHttpQueue} and {Google::Cloud::Tasks::V2beta3::AppEngineHttpRequest AppEngineHttpRequest}.
24
- # The documentation for {Google::Cloud::Tasks::V2beta3::AppEngineHttpRequest AppEngineHttpRequest} explains how the
25
- # task's host URL is constructed.
26
- #
27
- # Using {Google::Cloud::Tasks::V2beta3::AppEngineHttpQueue AppEngineHttpQueue} requires
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
- # {Google::Cloud::Tasks::V2beta3::AppEngineHttpRequest#app_engine_routing task-level app_engine_routing}.
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
- # {Google::Cloud::Tasks::V2beta3::AppEngineHttpRequest#app_engine_routing task-level app_engine_routing}.
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} set.
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} requires
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 Routed](https://cloud.google.com/appengine/docs/standard/python/how-requests-are-routed)
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 files](https://cloud.google.com/appengine/docs/python/config/dispatchref).
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 construct the URL that the task is
70
- # delivered to can be set at the queue-level or task-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
- # {Google::Cloud::Tasks::V2beta3::AppEngineHttpRequest#app_engine_routing task-level app_engine_routing}.
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: admin`](https://cloud.google.com/appengine/docs/standard/python/config/appref).
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: required`](https://cloud.google.com/appengine/docs/standard/python/config/appref)
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 handler](https://cloud.google.com/appengine/docs/java/taskqueue/push/creating-handlers#writing_a_push_task_request_handler)
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 Handler](https://cloud.google.com/appengine/docs/python/tools/webapp/requesthandlerclass).
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
- # {Google::Cloud::Tasks::V2beta3::AppEngineHttpRequest#app_engine_routing task-level app_engine_routing}.
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 {Google::Cloud::Tasks::V2beta3::AppEngineHttpRequest#body body}, Cloud
144
- # Tasks sets the following headers:
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 headers](https://cloud.google.com/appengine/docs/python/taskqueue/push/creating-handlers#reading_request_headers).
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 {Google::Cloud::Tasks::V2beta3::Task Task}. For more
168
- # information, see the {Google::Cloud::Tasks::V2beta3::CloudTasks::CreateTask CreateTask} documentation.
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 {Google::Cloud::Tasks::V2beta3::HttpMethod HttpMethod}.
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 Engine](https://cloud.google.com/appengine/docs/python/an-overview-of-app-engine),
184
- # [Microservices Architecture on Google App Engine](https://cloud.google.com/appengine/docs/python/microservices-on-app-engine),
185
- # [App Engine Standard request routing](https://cloud.google.com/appengine/docs/standard/python/how-requests-are-routed),
186
- # and [App Engine Flex request routing](https://cloud.google.com/appengine/docs/flexible/python/how-requests-are-routed).
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 not parsable
196
- # into {Google::Cloud::Tasks::V2beta3::AppEngineRouting#service service},
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} are the empty string.
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 not parsable
214
- # into {Google::Cloud::Tasks::V2beta3::AppEngineRouting#service service},
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} are the empty string.
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 Standard](https://cloud.google.com/appengine/docs/python/an-overview-of-app-engine?hl=en_US#scaling_types_and_instance_classes).
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 routing](https://cloud.google.com/appengine/docs/standard/python/how-requests-are-routed)
234
- # and [App Engine Flex request routing](https://cloud.google.com/appengine/docs/flexible/python/how-requests-are-routed).
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}, {Google::Cloud::Tasks::V2beta3::AppEngineRouting#version version},
242
- # and {Google::Cloud::Tasks::V2beta3::AppEngineRouting#instance instance}. Tasks which were created using
243
- # the App Engine SDK might have a custom domain name.
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 Routed](https://cloud.google.com/appengine/docs/standard/python/how-requests-are-routed).
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.