From 20c0f4c3f166a800f6a4bc4cf1d740932090b3ed Mon Sep 17 00:00:00 2001
From: Qiu Yu <qiuyu@ebaysf.com>
Date: Fri, 15 Jan 2016 13:41:41 -0700
Subject: [PATCH] Fix ceph-mon existing cluster detection logic

After moving from data container to named volumes, ceph monmap detection
is broken. This change fix the logic by leverage kolla_docker's
idempotency creating a named volume.

Change-Id: Iabc2e2fe5f526e1a6fc2e1b1158d1702aaf4bdf9
Related-Bug: #1533368
---
 ansible/roles/ceph/tasks/bootstrap_mons.yml | 15 +++++++--------
 1 file changed, 7 insertions(+), 8 deletions(-)

diff --git a/ansible/roles/ceph/tasks/bootstrap_mons.yml b/ansible/roles/ceph/tasks/bootstrap_mons.yml
index 622f3b50cd..49c80f53b2 100644
--- a/ansible/roles/ceph/tasks/bootstrap_mons.yml
+++ b/ansible/roles/ceph/tasks/bootstrap_mons.yml
@@ -11,19 +11,18 @@
   always_run: True
   run_once: True
 
-# TODO(SamYaple): Improve failed_when check
-- name: Checking if a previous cluster exists
-  command: docker exec ceph_mon_data stat /etc/ceph/ceph.monmap
-  register: exists
-  changed_when: False
-  failed_when: False
-  always_run: True
+- name: Creating ceph_mon_conifg volume
+  kolla_docker:
+    action: "create_volume"
+    common_options: "{{ docker_common_options }}"
+    name: "ceph_mon_config"
+  register: ceph_mon_config_volume
 
 - name: Writing hostname of host with existing cluster files to temp file
   local_action: copy content={{ ansible_hostname }} dest=/tmp/kolla_ceph_cluster mode=0600
   changed_when: False
   always_run: True
-  when: exists.rc == 0
+  when: not ceph_mon_config_volume.changed
 
 - name: Registering host from temp file
   set_fact: