From 47894bb05f8446d8db645dcd6dc580d5d4ae64d2 Mon Sep 17 00:00:00 2001
From: "Swapnil Kulkarni (coolsvap)" <me@coolsvap.net>
Date: Thu, 14 Apr 2016 10:44:48 +0530
Subject: [PATCH] Remove check for config files to verify MountFlags

Check MountFlags option with systemd rather than with
configuration files which can be overriden with
different ones.

Co-Authored-By: Jeffrey Zhang <jeffrey.zhang@99cloud.net>
Change-Id: Ifa4ce62372af3fe75a66b45c8e7cf9ac9f9c2415
Closes-Bug: #1571281
---
 ansible/roles/prechecks/tasks/service_checks.yml | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/ansible/roles/prechecks/tasks/service_checks.yml b/ansible/roles/prechecks/tasks/service_checks.yml
index 14aed9904d..29e9f90173 100644
--- a/ansible/roles/prechecks/tasks/service_checks.yml
+++ b/ansible/roles/prechecks/tasks/service_checks.yml
@@ -12,11 +12,13 @@
   failed_when: result | failed
                or (result.stdout | from_yaml).Server.Version | regex_replace('(\\d+\\.\\d+\\.\\d+).*', '\\1') | version_compare(docker_version_min, '<')
 
-- name: Checking if 'MountFlags' in /lib/systemd/system/docker.service is set to 'shared'
-  command: cat /lib/systemd/system/docker.service
+# When MountFlags is set to shared, a signal bit configured on 20th bit of a number
+# We need to check the 20th bit. 2^20 = 1048576. So we are validating against it.
+- name: Checking if 'MountFlags' for docker service is set to 'shared'
+  command: systemctl show docker
   register: result
   changed_when: false
-  failed_when: result.stdout.find('MountFlags=shared') == -1
+  failed_when: result.stdout.find('MountFlags=1048576') == -1
   when:
     - (inventory_hostname in groups['neutron-dhcp-agent']
        or inventory_hostname in groups['neutron-l3-agent']