diff options
| author | Jenkins <jenkins@review.openstack.org> | 2012-09-18 15:50:00 +0000 |
|---|---|---|
| committer | Gerrit Code Review <review@openstack.org> | 2012-09-18 15:50:00 +0000 |
| commit | f615e9c22c4c003ac1cd3d01ec8f7cbabd76b96d (patch) | |
| tree | e62f2690a474f9572bd1f13c6fb516a4633bb049 | |
| parent | 5b8d9ada4b44ca7aac523f7e0ec4158bff08232d (diff) | |
| parent | d05637f99271e081f9579b69cf77de1969839561 (diff) | |
| download | nova-f615e9c22c4c003ac1cd3d01ec8f7cbabd76b96d.tar.gz nova-f615e9c22c4c003ac1cd3d01ec8f7cbabd76b96d.tar.xz nova-f615e9c22c4c003ac1cd3d01ec8f7cbabd76b96d.zip | |
Merge "Fix volume deletion when device mapper is used"
| -rw-r--r-- | etc/nova/rootwrap.d/volume.filters | 4 | ||||
| -rw-r--r-- | nova/volume/driver.py | 4 |
2 files changed, 8 insertions, 0 deletions
diff --git a/etc/nova/rootwrap.d/volume.filters b/etc/nova/rootwrap.d/volume.filters index 9451e5115..e2b0f6203 100644 --- a/etc/nova/rootwrap.d/volume.filters +++ b/etc/nova/rootwrap.d/volume.filters @@ -27,3 +27,7 @@ lvdisplay: CommandFilter, /sbin/lvdisplay, root # nova/volume/driver.py: 'iscsiadm', '-m', 'node', '-T', ... iscsiadm: CommandFilter, /sbin/iscsiadm, root iscsiadm_usr: CommandFilter, /usr/bin/iscsiadm, root + +# nova/volume/driver.py +dmsetup: CommandFilter, /sbin/dmsetup, root +dmsetup_usr: CommandFilter, /usr/sbin/dmsetup, root diff --git a/nova/volume/driver.py b/nova/volume/driver.py index f7cd9fb57..bb80d9f93 100644 --- a/nova/volume/driver.py +++ b/nova/volume/driver.py @@ -142,6 +142,10 @@ class VolumeDriver(object): # zero out old volumes to prevent data leaking between users # TODO(ja): reclaiming space should be done lazy and low priority self._copy_volume('/dev/zero', self.local_path(volume), size_in_g) + dev_path = self.local_path(volume) + if os.path.exists(dev_path): + self._try_execute('dmsetup', 'remove', '-f', dev_path, + run_as_root=True) self._try_execute('lvremove', '-f', "%s/%s" % (FLAGS.volume_group, self._escape_snapshot(volume['name'])), |
