[Glusterfs] Fix delete share, mount point not disconnected

When we delete the shared instance, in addition to erasing the data
in the share, we should disconnect the client's mount point to
prevent the data from being written in.

Closes-Bug: #1886010
Change-Id: I7a334fb895669cc807a288e6aefe62154a89a7e4
(cherry picked from commit 9d44ba0b6a)
(cherry picked from commit 4f2e400a6b)
(cherry picked from commit d9e6743ba5)
This commit is contained in:
linpeiwen 2020-07-02 04:48:17 -04:00 committed by Tom Barron
parent 7ed8f7fac4
commit 4e75f14c76
3 changed files with 11 additions and 2 deletions

View File

@ -433,6 +433,7 @@ class GlusterfsVolumeMappedLayout(layout.GlusterfsShareLayoutBase):
# them to the pool (after some purification rituals)
self._wipe_gluster_vol(gmgr)
gmgr.set_vol_option(USER_MANILA_SHARE, 'NONE')
gmgr.set_vol_option('nfs.disable', 'on')
self._push_gluster_vol(gmgr.qualified)
except exception.GlusterfsException:

View File

@ -600,8 +600,10 @@ class GlusterfsVolumeMappedLayoutTestCase(test.TestCase):
self.glusterfs_target1)
self._layout.private_storage.delete.assert_called_once_with(
self.share1['id'])
gmgr1.set_vol_option.assert_called_once_with(
'user.manila-share', 'NONE')
gmgr1.set_vol_option.assert_has_calls([
mock.call('user.manila-share', 'NONE'),
mock.call('nfs.disable', 'on')
])
def test_delete_share_clone(self):
self._layout._push_gluster_vol = mock.Mock()

View File

@ -0,0 +1,6 @@
---
fixes:
- |
Fixed `bug #1886010 <https://bugs.launchpad.net/manila/+bug/1886010>`_
This bug caused glusterfs shares to still be readable/writable to
connected clients while the share was deleted from manila.