From 1bafe4df85cb34990f4ed2f85dbb094f9c96762b Mon Sep 17 00:00:00 2001 From: Brent Eagles Date: Thu, 30 Jan 2020 15:33:56 -0330 Subject: [PATCH] Octavia: do not attempt container restart on empty list With composable roles, the node with the octavia agents may not have any processes running when we hit step 5 external deploy tasks, resulting in our "one line" restart failing. This patch splits the query for octavia containers out into a separate task and we conditionally run the restart task depending on whether there are containers found. Change-Id: I08a06b300d43aca7db2c9e3341a07bc903163d26 Closes-Bug: #1861413 --- .../octavia_controller_post_config/tasks/main.yml | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/tripleo_ansible/roles/octavia_controller_post_config/tasks/main.yml b/tripleo_ansible/roles/octavia_controller_post_config/tasks/main.yml index ada8e761d..5e9b0f758 100644 --- a/tripleo_ansible/roles/octavia_controller_post_config/tasks/main.yml +++ b/tripleo_ansible/roles/octavia_controller_post_config/tasks/main.yml @@ -49,12 +49,22 @@ when: - octavia_config_updated +- name: get list of running octavia containers + become: true + shell: | + sudo "{{ container_cli }}" ps -f name=octavia -q + register: running_octavia_containers + when: + - octavia_config_updated + - name: restart octavia containers become: true become_user: root - shell: "{{ container_cli }} restart $(sudo {{ container_cli }} ps -f name=octavia -q)" + shell: "{{ container_cli }} restart {{ running_octavia_containers.stdout }}" when: - octavia_config_updated + - running_octavia_containers.rc != 0 + - (running_octavia_containers.stdout|length) > 0 - name: remove directory /etc/octavia/conf.d/common (LP#1836074) file: