From 12987ca0facdb7699c2c59b8a105fa348df9cf5c Mon Sep 17 00:00:00 2001
From: Mark Goddard <mark@stackhpc.com>
Date: Thu, 24 Oct 2019 16:15:23 +0100
Subject: [PATCH] Fix kolla-bootstrap-servers with docker_storage_driver set

If docker_storage_driver is set in globals.yml, then kolla-ansible
bootstrap-servers is run, it fails like so:

The conditional check 'docker_storage_driver' failed. The error was: error
while evaluating conditional (docker_storage_driver): 'devicemapper' is
undefined

Ansible does not like evaluating strings as conditionals. This change switches
to using the length filter.

Change-Id: Ib95cbdac2a659e7a0d5f113fe48046de3a39dcda
Closes-Bug: #1849691
---
 ansible/roles/baremetal/tasks/post-install.yml | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/ansible/roles/baremetal/tasks/post-install.yml b/ansible/roles/baremetal/tasks/post-install.yml
index 0f69d31b6..9839625b3 100644
--- a/ansible/roles/baremetal/tasks/post-install.yml
+++ b/ansible/roles/baremetal/tasks/post-install.yml
@@ -71,7 +71,7 @@
   debug:
     msg: >
       docker_custom_option is deprecated in favor of docker_custom_config
-  when: docker_custom_option
+  when: docker_custom_option | length > 0
 
 - name: Setup docker insecure registries
   vars:
@@ -83,12 +83,12 @@
 - name: Setup docker storage driver
   set_fact:
     docker_config: "{{ docker_config | combine({'storage-driver': docker_storage_driver}) }}"
-  when: docker_storage_driver
+  when: docker_storage_driver | length > 0
 
 - name: Setup docker runtime directory
   set_fact:
     docker_config: "{{ docker_config | combine({'data-root': docker_runtime_directory}) }}"
-  when: docker_runtime_directory
+  when: docker_runtime_directory | length > 0
 
 - name: Merge custom docker config
   set_fact:
@@ -117,14 +117,14 @@
     path: /etc/systemd/system/docker.service.d
     state: directory
     recurse: yes
-  when: docker_custom_option or docker_configure_for_zun|bool
+  when: docker_custom_option | length > 0 or docker_configure_for_zun|bool
 
 - name: Configure docker service
   become: True
   template:
     src: docker_systemd_service.j2
     dest: /etc/systemd/system/docker.service.d/kolla.conf
-  when: docker_custom_option or docker_configure_for_zun|bool
+  when: docker_custom_option | length > 0 or docker_configure_for_zun|bool
 
 - name: Reload docker service file
   become: True
-- 
GitLab