Openstack is moving to using a transport_url instead of discrete rabbitmq servers, username, and password settings. This makes doing templating with a configuration management like salt, my personal favorite, problematic as you need to interlace sensitive passwords in a string of arbitrary length. The best I could come up with is this:
{% set rabbit_credential = ['openstack',pillar['openstack_rabbit_pass']]|join(':') %}
{% set rabbit_hosts_list = pillar['rabbit_hosts'].split(',') %}
...
transport_url: rabbit://{% for item in rabbit_hosts_list %}{{rabbit_credential}}@{{item}}:5672,{% endfor %}
The secret is that a transport url can end in a comma without causing any problems.
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment