Merge "Use kpartx option to update partition mappings"
This commit is contained in:
commit
b6d4bef9eb
@ -206,7 +206,7 @@ class Partitioning(PluginBase):
|
||||
# now all the partitions are created, get device-mapper to
|
||||
# mount them
|
||||
if not os.path.exists("/.dockerenv"):
|
||||
exec_sudo(["kpartx", "-avs", self.device_path])
|
||||
exec_sudo(["kpartx", "-uvs", self.device_path])
|
||||
else:
|
||||
# If running inside Docker, make our nodes manually,
|
||||
# because udev will not be working. kpartx cannot run in
|
||||
|
@ -70,7 +70,7 @@ class TestGPT(tc.TestGraphGeneration):
|
||||
cmd_sequence = [
|
||||
mock.call(parted_cmd),
|
||||
mock.call(['sync']),
|
||||
mock.call(['kpartx', '-avs', '/dev/loopX'])
|
||||
mock.call(['kpartx', '-uvs', '/dev/loopX'])
|
||||
]
|
||||
self.assertEqual(mock_exec_sudo.call_count, len(cmd_sequence))
|
||||
mock_exec_sudo.assert_has_calls(cmd_sequence)
|
||||
|
@ -512,7 +512,7 @@ class TestLVM(tc.TestGraphGeneration):
|
||||
mock.call.create_mbr(),
|
||||
# now mount partitions
|
||||
mock.call.sudo_part(['sync']),
|
||||
mock.call.sudo_part(['kpartx', '-avs', '/dev/fake/image0']),
|
||||
mock.call.sudo_part(['kpartx', '-uvs', '/dev/fake/image0']),
|
||||
# now create lvm environment
|
||||
mock.call.sudo_lvm(['pvcreate', '/dev/fake/root', '--force']),
|
||||
mock.call.sudo_lvm(
|
||||
|
@ -0,0 +1,6 @@
|
||||
---
|
||||
fixes:
|
||||
- Fix cases of 'mkfs' failing because the partitions never showed up.
|
||||
Partition mappings will now be updated instead of just adding them with
|
||||
'kpartx'. That means that 'kpartx' will also remove devmappings for deleted
|
||||
partitions.
|
Loading…
Reference in New Issue
Block a user