Merge "Rescan device after filesystem creation"
This commit is contained in:
commit
bcd5d11d9a
@ -316,6 +316,9 @@ def work_on_disk(dev, root_mb, swap_mb, ephemeral_mb, ephemeral_format,
|
||||
"formatted for node %(node)s",
|
||||
{'ephemeral': ephemeral_part, 'node': node_uuid})
|
||||
|
||||
# Rescan device to get current status (e.g. reflect modification of mkfs)
|
||||
disk_utils.trigger_device_rescan(dev)
|
||||
|
||||
uuids_to_return = {
|
||||
'root uuid': root_part,
|
||||
'efi system partition uuid': part_dict.get('efi system partition'),
|
||||
|
@ -408,6 +408,8 @@ class WorkOnDiskTestCase(base.IronicAgentTest):
|
||||
cpu_arch="")
|
||||
mock_unlink.assert_called_once_with('fake-path')
|
||||
|
||||
@mock.patch.object(disk_utils, 'trigger_device_rescan',
|
||||
lambda d: None)
|
||||
@mock.patch.object(utils, 'mkfs', lambda fs, path, label=None: None)
|
||||
@mock.patch.object(disk_utils, 'block_uuid', lambda p: 'uuid')
|
||||
@mock.patch.object(disk_utils, 'populate_image', autospec=True)
|
||||
@ -442,6 +444,8 @@ class WorkOnDiskTestCase(base.IronicAgentTest):
|
||||
self.assertEqual('uuid', res['root uuid'])
|
||||
self.assertFalse(mock_populate.called)
|
||||
|
||||
@mock.patch.object(disk_utils, 'trigger_device_rescan',
|
||||
lambda d: None)
|
||||
@mock.patch.object(utils, 'mkfs', lambda fs, path, label=None: None)
|
||||
@mock.patch.object(disk_utils, 'block_uuid', lambda p: 'uuid')
|
||||
@mock.patch.object(disk_utils, 'populate_image', lambda image_path,
|
||||
@ -475,11 +479,12 @@ class WorkOnDiskTestCase(base.IronicAgentTest):
|
||||
disk_label='gpt',
|
||||
cpu_arch="")
|
||||
|
||||
@mock.patch.object(disk_utils, 'trigger_device_rescan', autospec=True)
|
||||
@mock.patch.object(disk_utils, 'block_uuid', autospec=True)
|
||||
@mock.patch.object(disk_utils, 'populate_image', autospec=True)
|
||||
@mock.patch.object(utils, 'mkfs', autospec=True)
|
||||
def test_uefi_localboot(self, mock_mkfs, mock_populate_image,
|
||||
mock_block_uuid):
|
||||
mock_block_uuid, mock_trigger_device_rescan):
|
||||
"""Test that we create a fat filesystem with UEFI localboot."""
|
||||
root_part = '/dev/fake-part1'
|
||||
efi_part = '/dev/fake-part2'
|
||||
@ -510,12 +515,14 @@ class WorkOnDiskTestCase(base.IronicAgentTest):
|
||||
root_part, conv_flags=None)
|
||||
mock_block_uuid.assert_any_call(root_part)
|
||||
mock_block_uuid.assert_any_call(efi_part)
|
||||
mock_trigger_device_rescan.assert_called_once_with(self.dev)
|
||||
|
||||
@mock.patch.object(disk_utils, 'trigger_device_rescan', autospec=True)
|
||||
@mock.patch.object(disk_utils, 'block_uuid', autospec=True)
|
||||
@mock.patch.object(disk_utils, 'populate_image', autospec=True)
|
||||
@mock.patch.object(utils, 'mkfs', autospec=True)
|
||||
def test_preserve_ephemeral(self, mock_mkfs, mock_populate_image,
|
||||
mock_block_uuid):
|
||||
mock_block_uuid, mock_trigger_device_rescan):
|
||||
"""Test that ephemeral partition doesn't get overwritten."""
|
||||
ephemeral_part = '/dev/fake-part1'
|
||||
root_part = '/dev/fake-part2'
|
||||
@ -543,11 +550,12 @@ class WorkOnDiskTestCase(base.IronicAgentTest):
|
||||
cpu_arch="")
|
||||
self.assertFalse(mock_mkfs.called)
|
||||
|
||||
@mock.patch.object(disk_utils, 'trigger_device_rescan', autospec=True)
|
||||
@mock.patch.object(disk_utils, 'block_uuid', autospec=True)
|
||||
@mock.patch.object(disk_utils, 'populate_image', autospec=True)
|
||||
@mock.patch.object(utils, 'mkfs', autospec=True)
|
||||
def test_ppc64le_prep_part(self, mock_mkfs, mock_populate_image,
|
||||
mock_block_uuid):
|
||||
mock_block_uuid, mock_trigger_device_rescan):
|
||||
"""Test that PReP partition uuid is returned."""
|
||||
prep_part = '/dev/fake-part1'
|
||||
root_part = '/dev/fake-part2'
|
||||
@ -573,11 +581,12 @@ class WorkOnDiskTestCase(base.IronicAgentTest):
|
||||
cpu_arch="ppc64le")
|
||||
self.assertFalse(mock_mkfs.called)
|
||||
|
||||
@mock.patch.object(disk_utils, 'trigger_device_rescan', autospec=True)
|
||||
@mock.patch.object(disk_utils, 'block_uuid', autospec=True)
|
||||
@mock.patch.object(disk_utils, 'populate_image', autospec=True)
|
||||
@mock.patch.object(utils, 'mkfs', autospec=True)
|
||||
def test_convert_to_sparse(self, mock_mkfs, mock_populate_image,
|
||||
mock_block_uuid):
|
||||
mock_block_uuid, mock_trigger_device_rescan):
|
||||
ephemeral_part = '/dev/fake-part1'
|
||||
swap_part = '/dev/fake-part2'
|
||||
root_part = '/dev/fake-part3'
|
||||
|
@ -0,0 +1,5 @@
|
||||
---
|
||||
fixes:
|
||||
- |
|
||||
Adds device rescan operation after partitioning the root device to ensure
|
||||
that updated UUIDs are reflected correctly
|
Loading…
x
Reference in New Issue
Block a user