Example #1
0
    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)
Example #2
0
    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)
Example #3
0
    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)
Example #4
0
 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)