community.rabbitmq.rabbitmq_queue – Manage rabbitMQ queues

Note

This plugin is part of the community.rabbitmq collection (version 1.1.0).

You might already have this collection installed if you are using the ansible package. It is not included in ansible-core. To check whether it is installed, run ansible-galaxy collection list.

To install it, use: ansible-galaxy collection install community.rabbitmq.

To use it in a playbook, specify: community.rabbitmq.rabbitmq_queue.

Synopsis

  • This module uses rabbitMQ Rest API to create/delete queues.

  • Due to limitations in the API, it cannot modify existing queues.

Requirements

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

  • requests >= 1.0.0

Parameters

Parameter

Comments

arguments

dictionary

extra arguments for queue. If defined this argument is a key/value dictionary

Arguments here take precedence over parameters. If both are defined, the argument will be used.

Default: {}

auto_delete

boolean

if the queue should delete itself after all queues/queues unbound from it

Choices:

  • no ← (default)

  • yes

auto_expires

integer

How long a queue can be unused before it is automatically deleted (milliseconds)

ca_cert

aliases: cacert

path

CA certificate to verify SSL connection to management API.

client_cert

aliases: cert

path

Client certificate to send on SSL connections to management API.

client_key

aliases: key

path

Private key matching the client certificate.

dead_letter_exchange

string

Optional name of an exchange to which messages will be republished if they

are rejected or expire

dead_letter_routing_key

string

Optional replacement routing key to use when a message is dead-lettered.

Original routing key will be used if unset

durable

boolean

whether queue is durable or not

Choices:

  • no

  • yes ← (default)

login_host

string

RabbitMQ host for connection.

Default: “localhost”

login_password

string

RabbitMQ password for connection.

Default: “guest”

login_port

string

RabbitMQ management API port.

Default: “15672”

login_protocol

string

RabbitMQ management API protocol.

Choices:

  • http ← (default)

  • https

login_user

string

RabbitMQ user for connection.

Default: “guest”

max_length

integer

How many messages can the queue contain before it starts rejecting

max_priority

integer

Maximum number of priority levels for the queue to support.

If not set, the queue will not support message priorities.

Larger numbers indicate higher priority.

message_ttl

integer

How long a message can live in queue before it is discarded (milliseconds)

name

string / required

Name of the queue

state

string

Whether the queue should be present or absent

Choices:

  • present ← (default)

  • absent

vhost

string

RabbitMQ virtual host.

Default: “/”

Examples

# Create a queue
- community.rabbitmq.rabbitmq_queue:
    name: myQueue

# Create a queue on remote host
- community.rabbitmq.rabbitmq_queue:
    name: myRemoteQueue
    login_user: user
    login_password: secret
    login_host: remote.example.org

Authors

  • Manuel Sousa (@manuel-sousa)