From 3cd5eec2ec7659c895e71d3eb7055694d59e125d Mon Sep 17 00:00:00 2001
From: Sam Yaple <sam@yaple.net>
Date: Fri, 20 Nov 2015 20:50:01 +0000
Subject: [PATCH] Fix udev cinder issue

/run/udev contains the udev information needed for the lvm tools
/run and /dev must be bound in for this to work properly

Change-Id: Icfe07c4ce3673310cc24591b42c107c9710cd3ac
Closes-Bug: #1518454
Closes-Bug: #1487780
Related-Bug: #1487807
---
 ansible/roles/cinder/tasks/start.yml    |  2 ++
 docker/cinder/cinder-base/Dockerfile.j2 | 14 ++------------
 2 files changed, 4 insertions(+), 12 deletions(-)

diff --git a/ansible/roles/cinder/tasks/start.yml b/ansible/roles/cinder/tasks/start.yml
index 5c30315ef7..d7d16df8bb 100644
--- a/ansible/roles/cinder/tasks/start.yml
+++ b/ansible/roles/cinder/tasks/start.yml
@@ -80,6 +80,8 @@
     volumes:
       - "{{ node_config_directory }}/cinder-volume/:{{ container_config_directory }}/:ro"
       - "/var/lib/kolla/dev/log:/dev/log"
+      - /dev/:/dev/
+      - /run/:/run/
     env:
       KOLLA_CONFIG_STRATEGY: "{{ config_strategy }}"
   when: inventory_hostname in groups['cinder-volume']
diff --git a/docker/cinder/cinder-base/Dockerfile.j2 b/docker/cinder/cinder-base/Dockerfile.j2
index 3741578f6a..a9bb1b2a56 100644
--- a/docker/cinder/cinder-base/Dockerfile.j2
+++ b/docker/cinder/cinder-base/Dockerfile.j2
@@ -9,12 +9,7 @@ RUN yum -y install openstack-cinder \
     lvm2 \
     ceph-common \
   && yum clean all \
-  && mkdir -p /etc/ceph \
-  && sed -i "s|udev_rules = 1|udev_rules = 0|g" /etc/lvm/lvm.conf \
-  && sed -i "s|udev_sync = 1|udev_sync = 0|g" /etc/lvm/lvm.conf
-
-# NOTE(sdake): The sed operations make LVM tools work inside a container - see
-# https://groups.google.com/forum/#!topic/docker-user/n4Xtvsb4RAw
+  && mkdir -p /etc/ceph
 
     {% endif %}
 {% elif install_type == 'source' %}
@@ -39,11 +34,6 @@ RUN ln -s cinder-base-source/* cinder \
     && pip --no-cache-dir install -c requirements/upper-constraints.txt /cinder \
     && mkdir -p /etc/cinder /var/log/cinder /home/cinder \
     && cp -r /cinder/etc/cinder/* /etc/cinder/ \
-    && chown -R cinder: /etc/cinder /var/log/cinder /home/cinder \
-    && sed -i "s|udev_rules = 1|udev_rules = 0|g" /etc/lvm/lvm.conf \
-    && sed -i "s|udev_sync = 1|udev_sync = 0|g" /etc/lvm/lvm.conf
-
-# NOTE(sdake): The sed operations make LVM tools work inside a container - see
-# https://groups.google.com/forum/#!topic/docker-user/n4Xtvsb4RAw
+    && chown -R cinder: /etc/cinder /var/log/cinder /home/cinder
 
 {% endif %}