google-cloud-tasks-v2 1.6.0 → 1.7.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.
Files changed (44) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +0 -4
  3. data/lib/google/cloud/tasks/v2/bindings_override.rb +1 -1
  4. data/lib/google/cloud/tasks/v2/cloud_tasks/client.rb +466 -12
  5. data/lib/google/cloud/tasks/v2/cloud_tasks/credentials.rb +1 -1
  6. data/lib/google/cloud/tasks/v2/cloud_tasks/operations.rb +843 -0
  7. data/lib/google/cloud/tasks/v2/cloud_tasks/paths.rb +39 -1
  8. data/lib/google/cloud/tasks/v2/cloud_tasks/rest/client.rb +438 -12
  9. data/lib/google/cloud/tasks/v2/cloud_tasks/rest/operations.rb +927 -0
  10. data/lib/google/cloud/tasks/v2/cloud_tasks/rest/service_stub.rb +248 -1
  11. data/lib/google/cloud/tasks/v2/cloud_tasks/rest.rb +2 -1
  12. data/lib/google/cloud/tasks/v2/cloud_tasks.rb +2 -1
  13. data/lib/google/cloud/tasks/v2/cloudtasks_pb.rb +15 -1
  14. data/lib/google/cloud/tasks/v2/cloudtasks_services_pb.rb +37 -7
  15. data/lib/google/cloud/tasks/v2/cmek_config_pb.rb +24 -0
  16. data/lib/google/cloud/tasks/v2/queue_pb.rb +2 -1
  17. data/lib/google/cloud/tasks/v2/rest.rb +1 -1
  18. data/lib/google/cloud/tasks/v2/target_pb.rb +9 -1
  19. data/lib/google/cloud/tasks/v2/task_pb.rb +3 -1
  20. data/lib/google/cloud/tasks/v2/version.rb +1 -1
  21. data/lib/google/cloud/tasks/v2.rb +1 -1
  22. data/lib/google-cloud-tasks-v2.rb +1 -1
  23. data/proto_docs/google/api/client.rb +1 -1
  24. data/proto_docs/google/api/field_behavior.rb +1 -1
  25. data/proto_docs/google/api/field_info.rb +88 -0
  26. data/proto_docs/google/api/launch_stage.rb +1 -1
  27. data/proto_docs/google/api/resource.rb +1 -1
  28. data/proto_docs/google/cloud/tasks/v2/cloudtasks.rb +203 -6
  29. data/proto_docs/google/cloud/tasks/v2/cmek_config.rb +44 -0
  30. data/proto_docs/google/cloud/tasks/v2/queue.rb +54 -30
  31. data/proto_docs/google/cloud/tasks/v2/target.rb +217 -3
  32. data/proto_docs/google/cloud/tasks/v2/task.rb +13 -1
  33. data/proto_docs/google/iam/v1/iam_policy.rb +1 -1
  34. data/proto_docs/google/iam/v1/options.rb +1 -1
  35. data/proto_docs/google/iam/v1/policy.rb +1 -1
  36. data/proto_docs/google/longrunning/operations.rb +191 -0
  37. data/proto_docs/google/protobuf/any.rb +1 -1
  38. data/proto_docs/google/protobuf/duration.rb +1 -1
  39. data/proto_docs/google/protobuf/empty.rb +1 -1
  40. data/proto_docs/google/protobuf/field_mask.rb +1 -1
  41. data/proto_docs/google/protobuf/timestamp.rb +8 -7
  42. data/proto_docs/google/rpc/status.rb +1 -1
  43. data/proto_docs/google/type/expr.rb +1 -1
  44. metadata +11 -7
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # Copyright 2020 Google LLC
3
+ # Copyright 2026 Google LLC
4
4
  #
5
5
  # Licensed under the Apache License, Version 2.0 (the "License");
6
6
  # you may not use this file except in compliance with the License.
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # Copyright 2022 Google LLC
3
+ # Copyright 2026 Google LLC
4
4
  #
5
5
  # Licensed under the Apache License, Version 2.0 (the "License");
6
6
  # you may not use this file except in compliance with the License.
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # Copyright 2020 Google LLC
3
+ # Copyright 2026 Google LLC
4
4
  #
5
5
  # Licensed under the Apache License, Version 2.0 (the "License");
6
6
  # you may not use this file except in compliance with the License.
@@ -0,0 +1,88 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2026 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+
20
+ module Google
21
+ module Api
22
+ # Rich semantic information of an API field beyond basic typing.
23
+ # @!attribute [rw] format
24
+ # @return [::Google::Api::FieldInfo::Format]
25
+ # The standard format of a field value. This does not explicitly configure
26
+ # any API consumer, just documents the API's format for the field it is
27
+ # applied to.
28
+ # @!attribute [rw] referenced_types
29
+ # @return [::Array<::Google::Api::TypeReference>]
30
+ # The type(s) that the annotated, generic field may represent.
31
+ #
32
+ # Currently, this must only be used on fields of type `google.protobuf.Any`.
33
+ # Supporting other generic types may be considered in the future.
34
+ class FieldInfo
35
+ include ::Google::Protobuf::MessageExts
36
+ extend ::Google::Protobuf::MessageExts::ClassMethods
37
+
38
+ # The standard format of a field value. The supported formats are all backed
39
+ # by either an RFC defined by the IETF or a Google-defined AIP.
40
+ module Format
41
+ # Default, unspecified value.
42
+ FORMAT_UNSPECIFIED = 0
43
+
44
+ # Universally Unique Identifier, version 4, value as defined by
45
+ # https://datatracker.ietf.org/doc/html/rfc4122. The value may be
46
+ # normalized to entirely lowercase letters. For example, the value
47
+ # `F47AC10B-58CC-0372-8567-0E02B2C3D479` would be normalized to
48
+ # `f47ac10b-58cc-0372-8567-0e02b2c3d479`.
49
+ UUID4 = 1
50
+
51
+ # Internet Protocol v4 value as defined by [RFC
52
+ # 791](https://datatracker.ietf.org/doc/html/rfc791). The value may be
53
+ # condensed, with leading zeros in each octet stripped. For example,
54
+ # `001.022.233.040` would be condensed to `1.22.233.40`.
55
+ IPV4 = 2
56
+
57
+ # Internet Protocol v6 value as defined by [RFC
58
+ # 2460](https://datatracker.ietf.org/doc/html/rfc2460). The value may be
59
+ # normalized to entirely lowercase letters with zeros compressed, following
60
+ # [RFC 5952](https://datatracker.ietf.org/doc/html/rfc5952). For example,
61
+ # the value `2001:0DB8:0::0` would be normalized to `2001:db8::`.
62
+ IPV6 = 3
63
+
64
+ # An IP address in either v4 or v6 format as described by the individual
65
+ # values defined herein. See the comments on the IPV4 and IPV6 types for
66
+ # allowed normalizations of each.
67
+ IPV4_OR_IPV6 = 4
68
+ end
69
+ end
70
+
71
+ # A reference to a message type, for use in {::Google::Api::FieldInfo FieldInfo}.
72
+ # @!attribute [rw] type_name
73
+ # @return [::String]
74
+ # The name of the type that the annotated, generic field may represent.
75
+ # If the type is in the same protobuf package, the value can be the simple
76
+ # message name e.g., `"MyMessage"`. Otherwise, the value must be the
77
+ # fully-qualified message name e.g., `"google.library.v1.Book"`.
78
+ #
79
+ # If the type(s) are unknown to the service (e.g. the field accepts generic
80
+ # user input), use the wildcard `"*"` to denote this behavior.
81
+ #
82
+ # See [AIP-202](https://google.aip.dev/202#type-references) for more details.
83
+ class TypeReference
84
+ include ::Google::Protobuf::MessageExts
85
+ extend ::Google::Protobuf::MessageExts::ClassMethods
86
+ end
87
+ end
88
+ end
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # Copyright 2022 Google LLC
3
+ # Copyright 2026 Google LLC
4
4
  #
5
5
  # Licensed under the Apache License, Version 2.0 (the "License");
6
6
  # you may not use this file except in compliance with the License.
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # Copyright 2020 Google LLC
3
+ # Copyright 2026 Google LLC
4
4
  #
5
5
  # Licensed under the Apache License, Version 2.0 (the "License");
6
6
  # you may not use this file except in compliance with the License.
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # Copyright 2020 Google LLC
3
+ # Copyright 2026 Google LLC
4
4
  #
5
5
  # Licensed under the Apache License, Version 2.0 (the "License");
6
6
  # you may not use this file except in compliance with the License.
@@ -300,11 +300,10 @@ module Google
300
300
  # a task's ID is identical to that of an existing task or a task
301
301
  # that was deleted or executed recently then the call will fail
302
302
  # with [ALREADY_EXISTS][google.rpc.Code.ALREADY_EXISTS].
303
- # If the task's queue was created using Cloud Tasks, then another task with
304
- # the same name can't be created for ~1hour after the original task was
305
- # deleted or executed. If the task's queue was created using queue.yaml or
306
- # queue.xml, then another task with the same name can't be created
307
- # for ~9days after the original task was deleted or executed.
303
+ # The IDs of deleted tasks are not immediately available for reuse. It can
304
+ # take up to 24 hours (or 9 days if the task's queue was created using a
305
+ # queue.yaml or queue.xml) for the task ID to be released and made available
306
+ # again.
308
307
  #
309
308
  # Because there is an extra lookup cost to identify duplicate task
310
309
  # names, these {::Google::Cloud::Tasks::V2::CloudTasks::Client#create_task CreateTask}
@@ -334,6 +333,32 @@ module Google
334
333
  extend ::Google::Protobuf::MessageExts::ClassMethods
335
334
  end
336
335
 
336
+ # Request message for [BatchCreateTasks].
337
+ # @!attribute [rw] parent
338
+ # @return [::String]
339
+ # Required. The queue name. For example:
340
+ # `projects/PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_ID`
341
+ #
342
+ # The queue must already exist.
343
+ # @!attribute [rw] requests
344
+ # @return [::Array<::Google::Cloud::Tasks::V2::CreateTaskRequest>]
345
+ # Required. The list of requests to create tasks.
346
+ # The queue specified in parent field of each CreateTaskRequest will be
347
+ # the same. This validation happens on the client side as well as in the
348
+ # handler.
349
+ # BatchCreateTasksRequest.parent will also be the same value as the
350
+ # individual CreateTaskRequest.parent.
351
+ # The maximum number of requests is 100.
352
+ # @!attribute [rw] request_id
353
+ # @return [::String]
354
+ # Optional. This field will be used to identify the long running operation,
355
+ # avoiding duplication when user retries. If not provided, then a UUID will
356
+ # be generated at server side.
357
+ class BatchCreateTasksRequest
358
+ include ::Google::Protobuf::MessageExts
359
+ extend ::Google::Protobuf::MessageExts::ClassMethods
360
+ end
361
+
337
362
  # Request message for deleting a task using
338
363
  # {::Google::Cloud::Tasks::V2::CloudTasks::Client#delete_task DeleteTask}.
339
364
  # @!attribute [rw] name
@@ -345,6 +370,90 @@ module Google
345
370
  extend ::Google::Protobuf::MessageExts::ClassMethods
346
371
  end
347
372
 
373
+ # Request message for deleting a batch of tasks using
374
+ # {::Google::Cloud::Tasks::V2::CloudTasks::Client#batch_delete_tasks BatchDeleteTasks}.
375
+ # @!attribute [rw] parent
376
+ # @return [::String]
377
+ # Required. The queue name. For example:
378
+ # Format: `projects/PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_ID`
379
+ # @!attribute [rw] names
380
+ # @return [::Array<::String>]
381
+ # Required. The names of the tasks to delete.
382
+ # A maximum of 1000 tasks can be deleted in a batch.
383
+ # For example:
384
+ # Format:
385
+ # `projects/PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_ID/tasks/TASK_ID`
386
+ # @!attribute [rw] request_id
387
+ # @return [::String]
388
+ # Optional. This field will be used to identify the long running operation,
389
+ # avoiding duplication when user retries. If not provided, then a UUID will
390
+ # be generated at server side.
391
+ class BatchDeleteTasksRequest
392
+ include ::Google::Protobuf::MessageExts
393
+ extend ::Google::Protobuf::MessageExts::ClassMethods
394
+ end
395
+
396
+ # Metadata for the long-running operation returned by
397
+ # {::Google::Cloud::Tasks::V2::CloudTasks::Client#batch_delete_tasks BatchDeleteTasks}.
398
+ # This message is used to hold metadata information about the
399
+ # batch delete tasks operation; that is, it is put in
400
+ # {::Google::Longrunning::Operation#metadata google.longrunning.Operation.metadata}.
401
+ # @!attribute [r] start_time
402
+ # @return [::Google::Protobuf::Timestamp]
403
+ # Output only. The time when the batch delete started.
404
+ # @!attribute [r] end_time
405
+ # @return [::Google::Protobuf::Timestamp]
406
+ # Output only. The time when the batch delete finished.
407
+ # @!attribute [r] state
408
+ # @return [::Google::Cloud::Tasks::V2::BatchDeleteTasksMetadata::State]
409
+ # Output only. The state of the batch delete operation.
410
+ # @!attribute [r] failed_requests
411
+ # @return [::Google::Protobuf::Map{::Integer => ::Google::Rpc::Status}]
412
+ # Output only. A map of failed requests, where the key is the index of the
413
+ # request in BatchDeleteTasksRequest.names and the value is the error status.
414
+ class BatchDeleteTasksMetadata
415
+ include ::Google::Protobuf::MessageExts
416
+ extend ::Google::Protobuf::MessageExts::ClassMethods
417
+
418
+ # @!attribute [rw] key
419
+ # @return [::Integer]
420
+ # @!attribute [rw] value
421
+ # @return [::Google::Rpc::Status]
422
+ class FailedRequestsEntry
423
+ include ::Google::Protobuf::MessageExts
424
+ extend ::Google::Protobuf::MessageExts::ClassMethods
425
+ end
426
+
427
+ # The state of the batch delete operation.
428
+ # This enum is not frozen and new values may be added in the future.
429
+ module State
430
+ # The default value. This value is used if the state is omitted.
431
+ STATE_UNSPECIFIED = 0
432
+
433
+ # The batch delete is running.
434
+ RUNNING = 1
435
+
436
+ # The batch delete has finished and all tasks were successfully deleted.
437
+ SUCCEEDED = 2
438
+
439
+ # The batch delete has finished with partial success.
440
+ # The tasks that failed to be deleted are reported in
441
+ # {::Google::Cloud::Tasks::V2::BatchDeleteTasksMetadata#failed_requests failed_requests}.
442
+ # When all requests in the batch fail,
443
+ # {::Google::Longrunning::Operation#error google.longrunning.Operation.error}
444
+ # will be set with `code` = `google.rpc.Code.ABORTED` and `message` = "None
445
+ # of the requests succeeded, refer to
446
+ # BatchDeleteTasksMetadata.failed_requests for individual error details".
447
+ PARTIALLY_SUCCEEDED = 3
448
+
449
+ # The batch delete has failed.
450
+ # This means the overall batch delete operation failed to complete.
451
+ # This can happen due to an internal error preventing the operation from
452
+ # finishing.
453
+ FAILED = 4
454
+ end
455
+ end
456
+
348
457
  # Request message for forcing a task to run now using
349
458
  # {::Google::Cloud::Tasks::V2::CloudTasks::Client#run_task RunTask}.
350
459
  # @!attribute [rw] name
@@ -369,6 +478,94 @@ module Google
369
478
  include ::Google::Protobuf::MessageExts
370
479
  extend ::Google::Protobuf::MessageExts::ClassMethods
371
480
  end
481
+
482
+ # Request message for
483
+ # {::Google::Cloud::Tasks::V2::CloudTasks::Client#update_cmek_config UpdateCmekConfig}.
484
+ # @!attribute [rw] cmek_config
485
+ # @return [::Google::Cloud::Tasks::V2::CmekConfig]
486
+ # Required. The config to update. Its name attribute distinguishes it.
487
+ # @!attribute [rw] update_mask
488
+ # @return [::Google::Protobuf::FieldMask]
489
+ # List of fields to be updated in this request.
490
+ class UpdateCmekConfigRequest
491
+ include ::Google::Protobuf::MessageExts
492
+ extend ::Google::Protobuf::MessageExts::ClassMethods
493
+ end
494
+
495
+ # Request message for
496
+ # {::Google::Cloud::Tasks::V2::CloudTasks::Client#get_cmek_config GetCmekConfig}.
497
+ # @!attribute [rw] name
498
+ # @return [::String]
499
+ # Required. The config. For example:
500
+ # `projects/PROJECT_ID/locations/LOCATION_ID/CmekConfig`
501
+ class GetCmekConfigRequest
502
+ include ::Google::Protobuf::MessageExts
503
+ extend ::Google::Protobuf::MessageExts::ClassMethods
504
+ end
505
+
506
+ # Response message for [BatchCreateTasks].
507
+ # @!attribute [rw] tasks
508
+ # @return [::Array<::Google::Cloud::Tasks::V2::Task>]
509
+ # The tasks that were successfully created.
510
+ class BatchCreateTasksResponse
511
+ include ::Google::Protobuf::MessageExts
512
+ extend ::Google::Protobuf::MessageExts::ClassMethods
513
+ end
514
+
515
+ # Metadata message for [BatchCreateTasks].
516
+ # @!attribute [rw] start_time
517
+ # @return [::Google::Protobuf::Timestamp]
518
+ # The time when the batch create started.
519
+ # @!attribute [rw] end_time
520
+ # @return [::Google::Protobuf::Timestamp]
521
+ # The time when the batch create finished.
522
+ # @!attribute [r] state
523
+ # @return [::Google::Cloud::Tasks::V2::BatchCreateTasksMetadata::State]
524
+ # Output only. The state of the batch create operation.
525
+ # @!attribute [rw] failed_requests
526
+ # @return [::Google::Protobuf::Map{::Integer => ::Google::Rpc::Status}]
527
+ # A map of failed requests, where the key is the index of the request in
528
+ # BatchCreateTasksRequest.requests and the value is the error status.
529
+ class BatchCreateTasksMetadata
530
+ include ::Google::Protobuf::MessageExts
531
+ extend ::Google::Protobuf::MessageExts::ClassMethods
532
+
533
+ # @!attribute [rw] key
534
+ # @return [::Integer]
535
+ # @!attribute [rw] value
536
+ # @return [::Google::Rpc::Status]
537
+ class FailedRequestsEntry
538
+ include ::Google::Protobuf::MessageExts
539
+ extend ::Google::Protobuf::MessageExts::ClassMethods
540
+ end
541
+
542
+ # The state of the batch create operation.
543
+ module State
544
+ # The default value. This value is used if the state is omitted.
545
+ STATE_UNSPECIFIED = 0
546
+
547
+ # The batch create is running.
548
+ RUNNING = 1
549
+
550
+ # The batch create has finished.
551
+ # All tasks in the request were successfully created.
552
+ SUCCEEDED = 2
553
+
554
+ # The batch create has finished with partial success.
555
+ # The tasks that failed to be created are reported in
556
+ # {::Google::Cloud::Tasks::V2::BatchCreateTasksMetadata#failed_requests failed_requests}.
557
+ PARTIALLY_SUCCEEDED = 5
558
+
559
+ # The batch create has failed.
560
+ # This means the overall batch create operation failed to complete.
561
+ # This can happen due to an internal error preventing the operation from
562
+ # finishing.
563
+ FAILED = 3
564
+
565
+ # The batch create was cancelled.
566
+ CANCELLED = 4
567
+ end
568
+ end
372
569
  end
373
570
  end
374
571
  end
@@ -0,0 +1,44 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2026 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+
20
+ module Google
21
+ module Cloud
22
+ module Tasks
23
+ module V2
24
+ # Describes the customer-managed encryption key (CMEK) configuration associated
25
+ # with a project and location.
26
+ # @!attribute [r] name
27
+ # @return [::String]
28
+ # Output only. The config resource name which includes the project and
29
+ # location and must end in 'cmekConfig', in the format
30
+ # `projects/PROJECT_ID/locations/LOCATION_ID/cmekConfig`
31
+ # @!attribute [rw] kms_key
32
+ # @return [::String]
33
+ # Resource name of the Cloud KMS key, of the form
34
+ # `projects/PROJECT_ID/locations/LOCATION_ID/keyRings/KEY_RING_ID/cryptoKeys/KEY_ID`,
35
+ # that will be used to encrypt the Queues & Tasks in the region. Setting
36
+ # this as blank will turn off CMEK encryption.
37
+ class CmekConfig
38
+ include ::Google::Protobuf::MessageExts
39
+ extend ::Google::Protobuf::MessageExts::ClassMethods
40
+ end
41
+ end
42
+ end
43
+ end
44
+ end
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # Copyright 2020 Google LLC
3
+ # Copyright 2026 Google LLC
4
4
  #
5
5
  # Licensed under the Apache License, Version 2.0 (the "License");
6
6
  # you may not use this file except in compliance with the License.
@@ -59,6 +59,9 @@ module Google
59
59
  # {::Google::Cloud::Tasks::V2::AppEngineHttpRequest App Engine tasks} in the
60
60
  # queue, no matter what the setting is for the [task-level
61
61
  # app_engine_routing][google.cloud.tasks.v2.AppEngineHttpRequest.app_engine_routing].
62
+ # @!attribute [rw] http_target
63
+ # @return [::Google::Cloud::Tasks::V2::HttpTarget]
64
+ # Modifies HTTP target for HTTP tasks.
62
65
  # @!attribute [rw] rate_limits
63
66
  # @return [::Google::Cloud::Tasks::V2::RateLimits]
64
67
  # Rate limits for task dispatches.
@@ -74,8 +77,8 @@ module Google
74
77
  # queue, regardless of whether the dispatch is from a first
75
78
  # attempt or a retry).
76
79
  # * {::Google::Cloud::Tasks::V2::Queue#retry_config retry_config} controls what
77
- # happens to
78
- # particular a task after its first attempt fails. That is,
80
+ # happens to a
81
+ # particular task after its first attempt fails. That is,
79
82
  # {::Google::Cloud::Tasks::V2::Queue#retry_config retry_config} controls task
80
83
  # retries (the second attempt, third attempt, etc).
81
84
  #
@@ -187,7 +190,7 @@ module Google
187
190
  # If unspecified when the queue is created, Cloud Tasks will pick the
188
191
  # default.
189
192
  #
190
- # * The maximum allowed value is 500.
193
+ # The maximum allowed value is 500.
191
194
  #
192
195
  #
193
196
  # This field has the same meaning as
@@ -210,11 +213,13 @@ module Google
210
213
  # token is removed from the bucket. Tasks will be dispatched until
211
214
  # the queue's bucket runs out of tokens. The bucket will be
212
215
  # continuously refilled with new tokens based on
213
- # {::Google::Cloud::Tasks::V2::RateLimits#max_dispatches_per_second max_dispatches_per_second}.
216
+ # `max_dispatches_per_second`.
214
217
  #
215
- # Cloud Tasks will pick the value of `max_burst_size` based on the
216
- # value of
217
- # {::Google::Cloud::Tasks::V2::RateLimits#max_dispatches_per_second max_dispatches_per_second}.
218
+ # Cloud Tasks automatically sets an appropriate `max_burst_size` based
219
+ # on the value of `max_dispatches_per_second`. The value is dynamically
220
+ # optimized to ensure queue stability and throughput. It is generally at
221
+ # least equal to `max_dispatches_per_second` but might be higher to
222
+ # accommodate bursts of traffic.
218
223
  #
219
224
  # For queues that were created or updated using
220
225
  # `queue.yaml/xml`, `max_burst_size` is equal to
@@ -222,11 +227,8 @@ module Google
222
227
  # Since `max_burst_size` is output only, if
223
228
  # {::Google::Cloud::Tasks::V2::CloudTasks::Client#update_queue UpdateQueue} is called on a
224
229
  # queue created by `queue.yaml/xml`, `max_burst_size` will be reset based on
225
- # the value of
226
- # {::Google::Cloud::Tasks::V2::RateLimits#max_dispatches_per_second max_dispatches_per_second},
227
- # regardless of whether
228
- # {::Google::Cloud::Tasks::V2::RateLimits#max_dispatches_per_second max_dispatches_per_second}
229
- # is updated.
230
+ # the value of `max_dispatches_per_second`, regardless of whether
231
+ # `max_dispatches_per_second` is updated.
230
232
  # @!attribute [rw] max_concurrent_dispatches
231
233
  # @return [::Integer]
232
234
  # The maximum number of concurrent tasks that Cloud Tasks allows
@@ -254,17 +256,25 @@ module Google
254
256
  # These settings determine when a failed task attempt is retried.
255
257
  # @!attribute [rw] max_attempts
256
258
  # @return [::Integer]
257
- # Number of attempts per task.
259
+ # Number of attempts per task, including the first attempt. (If the
260
+ # first attempt fails, there will be `max_attempts - 1` retries.)
258
261
  #
259
- # Cloud Tasks will attempt the task `max_attempts` times (that is, if the
260
- # first attempt fails, then there will be `max_attempts - 1` retries). Must
261
- # be >= -1.
262
+ # Must be greater than or equal to -1, which indicates unlimited attempts.
263
+ #
264
+ #
265
+ # Cloud Tasks stops retrying only when `max_attempts` and
266
+ # `max_retry_duration` are both satisfied, or when the task is successfully
267
+ # executed. When the task has been attempted
268
+ # `max_attempts` times and when the `max_retry_duration` time has passed, no
269
+ # further attempts are made, and the task is deleted. If `max_attempts` is
270
+ # set to -1 and `max_retry_duration` is set to 0, the task is retried
271
+ # until the [maximum task
272
+ # retention](https://docs.cloud.google.com/tasks/docs/quotas#limits) limit is
273
+ # reached.
262
274
  #
263
275
  # If unspecified when the queue is created, Cloud Tasks will pick the
264
276
  # default.
265
277
  #
266
- # -1 indicates unlimited attempts.
267
- #
268
278
  # This field has the same meaning as
269
279
  # [task_retry_limit in
270
280
  # queue.yaml/xml](https://cloud.google.com/appengine/docs/standard/python/config/queueref#retry_parameters).
@@ -275,16 +285,22 @@ module Google
275
285
  # attempted. Once `max_retry_duration` time has passed *and* the
276
286
  # task has been attempted
277
287
  # {::Google::Cloud::Tasks::V2::RetryConfig#max_attempts max_attempts} times, no
278
- # further attempts will be made and the task will be deleted.
288
+ # further attempts are made and the task is deleted.
279
289
  #
280
- # If zero, then the task age is unlimited.
281
- #
282
- # If unspecified when the queue is created, Cloud Tasks will pick the
283
- # default.
290
+ # A zero (0) indicates an unlimited duration, up to the
291
+ # [maximum task
292
+ # retention](https://docs.cloud.google.com/tasks/docs/quotas#limits) limit.
284
293
  #
285
294
  #
295
+ # The value must be given as a string that indicates the length of time
296
+ # (in seconds) followed by `s` (for "seconds"). For the maximum possible
297
+ # value or the format, see the documentation for
298
+ # [Duration](https://protobuf.dev/reference/protobuf/google.protobuf/#duration).
286
299
  # `max_retry_duration` will be truncated to the nearest second.
287
300
  #
301
+ # If unspecified when the queue is created, Cloud Tasks will pick the
302
+ # default.
303
+ #
288
304
  # This field has the same meaning as
289
305
  # [task_age_limit in
290
306
  # queue.yaml/xml](https://cloud.google.com/appengine/docs/standard/python/config/queueref#retry_parameters).
@@ -297,12 +313,16 @@ module Google
297
313
  # {::Google::Cloud::Tasks::V2::RetryConfig RetryConfig} specifies that the task
298
314
  # should be retried.
299
315
  #
300
- # If unspecified when the queue is created, Cloud Tasks will pick the
301
- # default.
302
- #
303
316
  #
317
+ # The value must be given as a string that indicates the length of time
318
+ # (in seconds) followed by `s` (for "seconds"). For more information on the
319
+ # format, see the documentation for
320
+ # [Duration](https://protobuf.dev/reference/protobuf/google.protobuf/#duration).
304
321
  # `min_backoff` will be truncated to the nearest second.
305
322
  #
323
+ # If unspecified when the queue is created, Cloud Tasks will pick the
324
+ # default.
325
+ #
306
326
  # This field has the same meaning as
307
327
  # [min_backoff_seconds in
308
328
  # queue.yaml/xml](https://cloud.google.com/appengine/docs/standard/python/config/queueref#retry_parameters).
@@ -315,12 +335,16 @@ module Google
315
335
  # {::Google::Cloud::Tasks::V2::RetryConfig RetryConfig} specifies that the task
316
336
  # should be retried.
317
337
  #
318
- # If unspecified when the queue is created, Cloud Tasks will pick the
319
- # default.
320
- #
321
338
  #
339
+ # The value must be given as a string that indicates the length of time
340
+ # (in seconds) followed by `s` (for "seconds"). For more information on the
341
+ # format, see the documentation for
342
+ # [Duration](https://protobuf.dev/reference/protobuf/google.protobuf/#duration).
322
343
  # `max_backoff` will be truncated to the nearest second.
323
344
  #
345
+ # If unspecified when the queue is created, Cloud Tasks will pick the
346
+ # default.
347
+ #
324
348
  # This field has the same meaning as
325
349
  # [max_backoff_seconds in
326
350
  # queue.yaml/xml](https://cloud.google.com/appengine/docs/standard/python/config/queueref#retry_parameters).