# gcp_cloudtasks_queue – Creates a GCP Queue

New in version 2.9.

- Synopsis
- Requirements
- Parameters
- Notes
- Examples
- Return Values
- Status

## Synopsis

- A named resource to which messages are sent by publishers.

## Requirements

The below requirements are needed on the host that executes this module.

- python >= 2.6
- requests >= 2.18.4
- google-auth >= 1.3.0

## Parameters

Parameter | Choices/Defaults | Comments
--- | --- | ---
app_engine_routing_override dictionary |  | Overrides for task-level appEngineRouting. These settings apply only to App Engine tasks in this queue .
| instance string |  | App instance. By default, the task is sent to an instance which is available when the task is attempted.
| service string |  | App service. By default, the task is sent to the service which is the default service when the task is attempted.
| version string |  | App version. By default, the task is sent to the version which is the default version when the task is attempted.

auth_kind
string / required

Choices:
- application
- machineaccount
- serviceaccount

The type of credential used.

env_type string |  | Specifies which Ansible environment you're running this module within. This should not be set unless you know what you're doing. This only alters the User Agent string for any API requests.
location string / required |  | The location of the queue.
name string |  | The queue name.
project string |  | The Google Cloud Platform project to use.
rate_limits dictionary |  | Rate limits for task dispatches. The queue's actual dispatch rate is the result of: * Number of tasks in the queue * User-specified throttling: rateLimits, retryConfig, and the queue's state. * System throttling due to 429 (Too Many Requests) or 503 (Service Unavailable) responses from the worker, high error rates, or to smooth sudden large traffic spikes.
| max_concurrent_dispatches integer |  | The maximum number of concurrent tasks that Cloud Tasks allows to be dispatched for this queue. After this threshold has been reached, Cloud Tasks stops dispatching tasks until the number of concurrent requests decreases.
| max_dispatches_per_second integer |  | The maximum rate at which tasks are dispatched from this queue. If unspecified when the queue is created, Cloud Tasks will pick the default.
retry_config dictionary |  | Settings that determine the retry behavior.
| max_attempts integer |  | Number of attempts per task. Cloud Tasks will attempt the task maxAttempts times (that is, if the first attempt fails, then there will be maxAttempts - 1 retries). Must be >= -1. If unspecified when the queue is created, Cloud Tasks will pick the default. -1 indicates unlimited attempts.
| max_backoff string |  | A task will be scheduled for retry between minBackoff and maxBackoff duration after it fails, if the queue's RetryConfig specifies that the task should be retried.
| max_doublings integer |  | The time between retries will double maxDoublings times. A task's retry interval starts at minBackoff, then doubles maxDoublings times, then increases linearly, and finally retries retries at intervals of maxBackoff up to maxAttempts times.
| max_retry_duration string |  | If positive, maxRetryDuration specifies the time limit for retrying a failed task, measured from when the task was first attempted. Once maxRetryDuration time has passed and the task has been attempted maxAttempts times, no further attempts will be made and the task will be deleted. If zero, then the task age is unlimited.
| min_backoff string |  | A task will be scheduled for retry between minBackoff and maxBackoff duration after it fails, if the queue's RetryConfig specifies that the task should be retried.
scopes list |  | Array of scopes to be used.
service_account_contents jsonarg |  | The contents of a Service Account JSON file, either in a dictionary or as a JSON string that represents it.
service_account_email string |  | An optional service account email address if machineaccount is selected and the user does not wish to use the default email.
service_account_file path |  | The path of a Service Account JSON file if serviceaccount is selected as type.

state
string

Choices:
- present ←
- absent

Whether the given object should exist in GCP

status string |  | The current state of the queue. Some valid choices include: "RUNNING", "PAUSED", "DISABLED"

## Notes

Note

- for authentication, you can set service_account_file using the c(gcp_service_account_file) env variable.
- for authentication, you can set service_account_contents using the c(GCP_SERVICE_ACCOUNT_CONTENTS) env variable.
- For authentication, you can set service_account_email using the `GCP_SERVICE_ACCOUNT_EMAIL` env variable.
- For authentication, you can set auth_kind using the `GCP_AUTH_KIND` env variable.
- For authentication, you can set scopes using the `GCP_SCOPES` env variable.
- Environment variables values will only be used if the playbook values are not set.
- The service_account_email and service_account_file options are mutually exclusive.

## Examples

    - name: create a queue
      gcp_cloudtasks_queue:
        name: test_object
        location: us-central1
        project: test_project
        auth_kind: serviceaccount
        service_account_file: "/tmp/auth.pem"
        state: present

## Return Values

Common return values are documented here, the following are the fields unique to this module:

Key | Returned | Description
--- | --- | ---
appEngineRoutingOverride complex | success | Overrides for task-level appEngineRouting. These settings apply only to App Engine tasks in this queue .
| host string | success | The host that the task is sent to.
| instance string | success | App instance. By default, the task is sent to an instance which is available when the task is attempted.
| service string | success | App service. By default, the task is sent to the service which is the default service when the task is attempted.
| version string | success | App version. By default, the task is sent to the version which is the default version when the task is attempted.
location string | success | The location of the queue.
name string | success | The queue name.
rateLimits complex | success | Rate limits for task dispatches. The queue's actual dispatch rate is the result of: * Number of tasks in the queue * User-specified throttling: rateLimits, retryConfig, and the queue's state. * System throttling due to 429 (Too Many Requests) or 503 (Service Unavailable) responses from the worker, high error rates, or to smooth sudden large traffic spikes.
| maxBurstSize integer | success | The max burst size. Max burst size limits how fast tasks in queue are processed when many tasks are in the queue and the rate is high. This field allows the queue to have a high rate so processing starts shortly after a task is enqueued, but still limits resource usage when many tasks are enqueued in a short period of time.
| maxConcurrentDispatches integer | success | The maximum number of concurrent tasks that Cloud Tasks allows to be dispatched for this queue. After this threshold has been reached, Cloud Tasks stops dispatching tasks until the number of concurrent requests decreases.
| maxDispatchesPerSecond integer | success | The maximum rate at which tasks are dispatched from this queue. If unspecified when the queue is created, Cloud Tasks will pick the default.
retryConfig complex | success | Settings that determine the retry behavior.
| maxAttempts integer | success | Number of attempts per task. Cloud Tasks will attempt the task maxAttempts times (that is, if the first attempt fails, then there will be maxAttempts - 1 retries). Must be >= -1. If unspecified when the queue is created, Cloud Tasks will pick the default. -1 indicates unlimited attempts.
| maxBackoff string | success | A task will be scheduled for retry between minBackoff and maxBackoff duration after it fails, if the queue's RetryConfig specifies that the task should be retried.
| maxDoublings integer | success | The time between retries will double maxDoublings times. A task's retry interval starts at minBackoff, then doubles maxDoublings times, then increases linearly, and finally retries retries at intervals of maxBackoff up to maxAttempts times.
| maxRetryDuration string | success | If positive, maxRetryDuration specifies the time limit for retrying a failed task, measured from when the task was first attempted. Once maxRetryDuration time has passed and the task has been attempted maxAttempts times, no further attempts will be made and the task will be deleted. If zero, then the task age is unlimited.
| minBackoff string | success | A task will be scheduled for retry between minBackoff and maxBackoff duration after it fails, if the queue's RetryConfig specifies that the task should be retried.
| purgeTime string | success | The last time this queue was purged.
status string | success | The current state of the queue.

## Status

- This module is not guaranteed to have a backwards compatible interface. [preview]
- This module is maintained by the Ansible Community. [community]

### Authors

- Google Inc. (@googlecloudplatform)

Hint

If you notice any issues in this documentation, you can edit this document to improve it.