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 Choices/Defaults Comments
arguments
dictionary
Default:
{}
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.
auto_delete
boolean
    Choices:
  • no ←
  • yes
if the queue should delete itself after all queues/queues unbound from it
auto_expires
integer
How long a queue can be unused before it is automatically deleted (milliseconds)
ca_cert
path
CA certificate to verify SSL connection to management API.

aliases: cacert
client_cert
path
Client certificate to send on SSL connections to management API.

aliases: cert
client_key
path
Private key matching the client certificate.

aliases: key
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
    Choices:
  • no
  • yes ←
whether queue is durable or not
login_host
string
Default:
"localhost"
RabbitMQ host for connection.
login_password
string
Default:
"guest"
RabbitMQ password for connection.
login_port
string
Default:
"15672"
RabbitMQ management API port.
login_protocol
string
    Choices:
  • http ←
  • https
RabbitMQ management API protocol.
login_user
string
Default:
"guest"
RabbitMQ user for connection.
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
    Choices:
  • present ←
  • absent
Whether the queue should be present or absent
vhost
string
Default:
"/"
RabbitMQ virtual host.

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)