Skip to content
Snippets Groups Projects
Commit ec02702d authored by noelmcloughlin's avatar noelmcloughlin
Browse files

feat(queues): create/delete queues using cli

parent 41085231
No related branches found
No related tags found
No related merge requests found
...@@ -45,12 +45,13 @@ rabbitmq: ...@@ -45,12 +45,13 @@ rabbitmq:
queue: queue:
my-new-queue: my-new-queue:
- user: saltstack ## note : dict format
- passwd: 'password' user: saltstack
- durable: true passwd: 'password'
- auto_delete: false durable: true
- vhost: test_vhost auto_delete: false
- arguments: vhost: test_vhost
arguments:
- 'x-message-ttl': 8640000 - 'x-message-ttl': 8640000
- 'x-expires': 8640000 - 'x-expires': 8640000
- 'x-dead-letter-exchange': 'my-new-exchange' - 'x-dead-letter-exchange': 'my-new-exchange'
......
...@@ -12,6 +12,7 @@ include: ...@@ -12,6 +12,7 @@ include:
- .policy.clean - .policy.clean
- .plugin.clean - .plugin.clean
- .upstream.clean - .upstream.clean
- .queue.clean
- .vhost.clean - .vhost.clean
- .user.clean - .user.clean
- .file.clean - .file.clean
......
...@@ -5,6 +5,7 @@ include: ...@@ -5,6 +5,7 @@ include:
- .file - .file
- .user - .user
- .vhost - .vhost
- .queue
- .policy - .policy
- .plugin - .plugin
- .upstream - .upstream
......
# -*- coding: utf-8 -*-
# vim: ft=sls
{%- set tplroot = tpldir.split('/')[0] %}
{%- from tplroot ~ "/map.jinja" import mapdata as rabbitmq with context %}
{%- set sls_service_running = tplroot ~ '.service.running' %}
include:
- {{ sls_service_running }}
{% for name, q in salt["pillar.get"]("rabbitmq:queue", {}).items() %}
rabbitmq-config-queue-absent-{{ name }}:
cmd.run:
- name: /usr/local/sbin/rabbitmqadmin delete queue --vhost={{ q.vhost }} --username={{ q.user }} --password={{ q.passwd }} name={{ name }}
- require:
- service: {{ rabbitmq.service.name }}
{% endfor %}
# -*- coding: utf-8 -*-
# vim: ft=sls
include:
- .install
# -*- coding: utf-8 -*-
# vim: ft=sls
{%- set tplroot = tpldir.split('/')[0] %}
{%- from tplroot ~ "/map.jinja" import mapdata as rabbitmq with context %}
{%- set sls_service_running = tplroot ~ '.service.running' %}
include:
- {{ sls_service_running }}
{% for name, q in salt["pillar.get"]("rabbitmq:queue", {}).items() %}
rabbitmq-config-queue-present-{{ name }}:
cmd.run:
- name: /usr/local/sbin/rabbitmqadmin declare queue --vhost={{ q.vhost }} --username={{ q.user }} --password={{ q.passwd }} name={{ name }} durable={{ q.durable|to_bool|lower }} auto_delete={{ q.auto_delete|to_bool|lower }}
### note: arguments='{# q.arguments|json #}' causes "mapping values are not allowed in this context"
- require:
- service: {{ rabbitmq.service.name }}
{% endfor %}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment