Merge "Move MQ vhost/user creation into role"

This commit is contained in:
Zuul 2018-07-18 23:12:32 +00:00 committed by Gerrit Code Review
commit 2619e03d38
4 changed files with 79 additions and 8 deletions

View File

@ -219,18 +219,22 @@ ironic_pip_packages:
## Oslo Messaging Info
# RPC
ironic_oslomsg_rpc_transport: rabbit
ironic_oslomsg_rpc_servers: 127.0.0.1
ironic_oslomsg_rpc_port: 5672
ironic_oslomsg_rpc_use_ssl: False
ironic_oslomsg_rpc_host_group: "{{ oslomsg_rpc_host_group | default('rabbitmq_all') }}"
ironic_oslomsg_rpc_setup_host: "{{ (ironic_oslomsg_rpc_host_group in groups) | ternary(groups[ironic_oslomsg_rpc_host_group][0], 'localhost') }}"
ironic_oslomsg_rpc_transport: "{{ oslomsg_rpc_transport | default('rabbit') }}"
ironic_oslomsg_rpc_servers: "{{ oslomsg_rpc_servers | default('127.0.0.1') }}"
ironic_oslomsg_rpc_port: "{{ oslomsg_rpc_port | default('5672') }}"
ironic_oslomsg_rpc_use_ssl: "{{ oslomsg_rpc_use_ssl | default(False) }}"
ironic_oslomsg_rpc_userid: ironic
ironic_oslomsg_rpc_vhost: /ironic
# Notify
ironic_oslomsg_notify_transport: rabbit
ironic_oslomsg_notify_servers: 127.0.0.1
ironic_oslomsg_notify_port: 5672
ironic_oslomsg_notify_use_ssl: False
ironic_oslomsg_notify_host_group: "{{ oslomsg_notify_host_group | default('rabbitmq_all') }}"
ironic_oslomsg_notify_setup_host: "{{ (ironic_oslomsg_notify_host_group in groups) | ternary(groups[ironic_oslomsg_notify_host_group][0], 'localhost') }}"
ironic_oslomsg_notify_transport: "{{ oslomsg_notify_transport | default('rabbit') }}"
ironic_oslomsg_notify_servers: "{{ oslomsg_notify_servers | default('127.0.0.1') }}"
ironic_oslomsg_notify_port: "{{ oslomsg_notify_port | default('5672') }}"
ironic_oslomsg_notify_use_ssl: "{{ oslomsg_notify_use_ssl | default(False) }}"
ironic_oslomsg_notify_userid: ironic
ironic_oslomsg_notify_vhost: /ironic

View File

@ -48,6 +48,25 @@
tags:
- ironic-config
- include_tasks: mq_setup.yml
when:
- "ironic_services['ironic-api']['group'] in group_names"
- "inventory_hostname == ((groups[ironic_services['ironic-api']['group']]| intersect(ansible_play_hosts)) | list)[0]"
with_items:
- oslomsg_setup_host: "{{ ironic_oslomsg_rpc_setup_host }}"
oslomsg_userid: "{{ ironic_oslomsg_rpc_userid }}"
oslomsg_password: "{{ ironic_oslomsg_rpc_password }}"
oslomsg_vhost: "{{ ironic_oslomsg_rpc_vhost }}"
oslomsg_transport: "{{ ironic_oslomsg_rpc_transport }}"
- oslomsg_setup_host: "{{ ironic_oslomsg_notify_setup_host }}"
oslomsg_userid: "{{ ironic_oslomsg_notify_userid }}"
oslomsg_password: "{{ ironic_oslomsg_notify_password }}"
oslomsg_vhost: "{{ ironic_oslomsg_notify_vhost }}"
oslomsg_transport: "{{ ironic_oslomsg_notify_transport }}"
no_log: true
tags:
- ironic-config
- include: ironic_db_setup.yml
when: inventory_hostname == groups['ironic_conductor'][0]
tags:

45
tasks/mq_setup.yml Normal file
View File

@ -0,0 +1,45 @@
---
# Copyright 2018, Rackspace US, Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# WARNING:
# This file is maintained in the openstack-ansible-tests repository.
# https://git.openstack.org/cgit/openstack/openstack-ansible-tests/tree/sync/mq_setup.yml
# If you need to modify this file, update the one in the openstack-ansible-tests
# repository. Once it merges there, the changes will automatically be proposed to
# all the repositories which use it.
- name: Setup MQ Service (RabbitMQ)
delegate_to: "{{ item.oslomsg_setup_host }}"
when:
- "item.oslomsg_transport == 'rabbit'"
block:
- name: Add RabbitMQ vhost
rabbitmq_vhost:
name: "{{ item.oslomsg_vhost }}"
state: "present"
- name: Add RabbitMQ user
rabbitmq_user:
user: "{{ item.oslomsg_userid }}"
password: "{{ item.oslomsg_password }}"
vhost: "{{ item.oslomsg_vhost }}"
configure_priv: ".*"
read_priv: ".*"
write_priv: ".*"
state: "present"
force: true
no_log: true
# Note: Add the tasks for additional MQ servers here

View File

@ -37,3 +37,6 @@ neutron_l3: True
neutron_metadata: True
ironic_pip_package_state: latest
ironic_service_user_name: "ironic"
ironic_oslomsg_rpc_password: "{{ oslomsg_rpc_password }}"
ironic_oslomsg_notify_password: "{{ oslomsg_notify_password }}"