def test__prepare_iso_image_kernel_params(self, mock_create_boot_iso, mock_publish_image): with task_manager.acquire(self.context, self.node.uuid, shared=True) as task: kernel_params = 'network-config=base64-cloudinit-blob' task.node.instance_info.update(kernel_append_params=kernel_params) image_utils._prepare_iso_image(task, 'http://kernel/img', 'http://ramdisk/img', bootloader_href=None, root_uuid=task.node.uuid, base_iso='/path/to/baseiso') mock_create_boot_iso.assert_called_once_with( mock.ANY, mock.ANY, 'http://kernel/img', 'http://ramdisk/img', boot_mode='bios', esp_image_href=None, kernel_params=kernel_params, root_uuid='1be26c0b-03f2-4d2e-ae87-c02d7f33c123', base_iso='/path/to/baseiso', inject_files=None)
def test__prepare_iso_image_bios( self, mock_create_boot_iso, mock_publish_image): with task_manager.acquire(self.context, self.node.uuid, shared=True) as task: expected_url = 'https://a.b/c.f?e=f' mock_publish_image.return_value = expected_url url = image_utils._prepare_iso_image( task, 'http://kernel/img', 'http://ramdisk/img', bootloader_href=None, root_uuid=task.node.uuid, base_iso=None) object_name = 'boot-%s.iso' % task.node.uuid mock_publish_image.assert_called_once_with( mock.ANY, mock.ANY, object_name) mock_create_boot_iso.assert_called_once_with( mock.ANY, mock.ANY, 'http://kernel/img', 'http://ramdisk/img', boot_mode='bios', esp_image_href=None, kernel_params='nofb nomodeset vga=normal', root_uuid='1be26c0b-03f2-4d2e-ae87-c02d7f33c123', base_iso=None, inject_files=None) self.assertEqual(expected_url, url)
def test__prepare_iso_image_default_boot_mode( self, mock_create_boot_iso, mock_publish_image): self.config(default_boot_mode='uefi', group='deploy') with task_manager.acquire(self.context, self.node.uuid, shared=True) as task: image_utils._prepare_iso_image( task, 'http://kernel/img', 'http://ramdisk/img', bootloader_href=None, root_uuid=task.node.uuid, base_iso='/path/to/baseiso') mock_create_boot_iso.assert_called_once_with( mock.ANY, mock.ANY, 'http://kernel/img', 'http://ramdisk/img', boot_mode='uefi', esp_image_href=None, kernel_params='nofb nomodeset vga=normal', root_uuid='1be26c0b-03f2-4d2e-ae87-c02d7f33c123', base_iso='/path/to/baseiso', inject_files=None)
def test__prepare_iso_image_bootable_iso(self): with task_manager.acquire(self.context, self.node.uuid, shared=True) as task: base_image_url = 'http://bearmetal.net/boot.iso' self.config(ramdisk_image_download_source='http', group='deploy') url = image_utils._prepare_iso_image(task, None, None, bootloader_href=None, root_uuid=None, base_iso=base_image_url) self.assertEqual(url, base_image_url)