From 1e2a1a8fe12cd34abe904bbaca652884529f6f9a Mon Sep 17 00:00:00 2001
From: Mark Goddard <mark@stackhpc.com>
Date: Fri, 15 Feb 2019 14:45:33 +0000
Subject: [PATCH] Fix rabbitmq reconfigure, simplify role

Since Id724b44a3edd951fa8b06c9f2c347e9ed8c5ffd9, there is a reference to a
non-existent variable, rabbitmq_confs, that causes deployment to fail if
rabbitmq configuration other than config.json is changed.

I'm taking this opportunity to simplify the role, since we can use the Ansible
handler notification system to determine when handlers need to run, without
registering and checking variables. This simpler approach was used in the
haproxy refactor.

Change-Id: Ibe0e7fda93afff741243ff9c350db1c8c6e1e6d3
Closes-Bug: #1816053
---
 ansible/roles/rabbitmq/handlers/main.yml | 14 --------------
 ansible/roles/rabbitmq/tasks/config.yml  |  5 -----
 2 files changed, 19 deletions(-)

diff --git a/ansible/roles/rabbitmq/handlers/main.yml b/ansible/roles/rabbitmq/handlers/main.yml
index 6e69358352..c8e91203a1 100644
--- a/ansible/roles/rabbitmq/handlers/main.yml
+++ b/ansible/roles/rabbitmq/handlers/main.yml
@@ -3,8 +3,6 @@
   vars:
     service_name: "rabbitmq"
     service: "{{ rabbitmq_services[service_name] }}"
-    config_json: "{{ rabbitmq_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    rabbitmq_container: "{{ check_rabbitmq_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -17,10 +15,6 @@
   when:
     - kolla_action != "config"
     - inventory_hostname == groups[service.group]|first
-    - service.enabled | bool
-    - config_json.changed | bool
-      or rabbitmq_confs.changed | bool
-      or rabbitmq_container.changed | bool
   notify:
     - Waiting for rabbitmq to start on first node
 
@@ -36,8 +30,6 @@
   vars:
     service_name: "rabbitmq"
     service: "{{ rabbitmq_services[service_name] }}"
-    config_json: "{{ rabbitmq_config_jsons.results|selectattr('item.key', 'equalto', service_name)|first }}"
-    rabbitmq_container: "{{ check_rabbitmq_containers.results|selectattr('item.key', 'equalto', service_name)|first }}"
   become: true
   kolla_docker:
     action: "recreate_or_restart_container"
@@ -50,9 +42,3 @@
   when:
     - kolla_action != "config"
     - inventory_hostname != groups[service.group]|first
-    - service.enabled | bool
-    - config_json.changed | bool
-      or rabbitmq_env_conf.changed | bool
-      or rabbitmq_config.changed | bool
-      or rabbitmq_definitions.changed | bool
-      or rabbitmq_container.changed | bool
diff --git a/ansible/roles/rabbitmq/tasks/config.yml b/ansible/roles/rabbitmq/tasks/config.yml
index 22334723b4..be27a9d32b 100644
--- a/ansible/roles/rabbitmq/tasks/config.yml
+++ b/ansible/roles/rabbitmq/tasks/config.yml
@@ -18,7 +18,6 @@
     dest: "{{ node_config_directory }}/{{ project_name }}/config.json"
     mode: "0770"
   become: true
-  register: rabbitmq_config_jsons
   when:
     - inventory_hostname in groups[item.value.group]
     - item.value.enabled | bool
@@ -39,7 +38,6 @@
     - "{{ node_custom_config }}/rabbitmq/{{ inventory_hostname }}/rabbitmq-env.conf"
     - "{{ node_custom_config }}/rabbitmq/rabbitmq-env.conf"
     - "rabbitmq-env.conf.j2"
-  register: rabbitmq_env_conf
   when:
     - inventory_hostname in groups[service.group]
     - service.enabled | bool
@@ -60,7 +58,6 @@
     - "{{ node_custom_config }}/rabbitmq/{{ inventory_hostname }}/rabbitmq.conf"
     - "{{ node_custom_config }}/rabbitmq/rabbitmq.conf"
     - "rabbitmq.conf.j2"
-  register: rabbitmq_config
   when:
     - inventory_hostname in groups[service.group]
     - service.enabled | bool
@@ -80,7 +77,6 @@
     - "{{ node_custom_config }}/rabbitmq/{{ inventory_hostname }}/definitions.json"
     - "{{ node_custom_config }}/rabbitmq/definitions.json"
     - "definitions.json.j2"
-  register: rabbitmq_definitions
   when:
     - inventory_hostname in groups[service.group]
     - service.enabled | bool
@@ -98,7 +94,6 @@
     volumes: "{{ item.value.volumes }}"
     environment: "{{ item.value.environment }}"
     dimensions: "{{ item.value.dimensions }}"
-  register: check_rabbitmq_containers
   when:
     - kolla_action != "config"
     - inventory_hostname in groups[item.value.group]