diff options
Diffstat (limited to 'ironic/tests/unit/common/test_pxe_utils.py')
-rw-r--r-- | ironic/tests/unit/common/test_pxe_utils.py | 34 |
1 files changed, 33 insertions, 1 deletions
diff --git a/ironic/tests/unit/common/test_pxe_utils.py b/ironic/tests/unit/common/test_pxe_utils.py index f85034442..a8aa3a558 100644 --- a/ironic/tests/unit/common/test_pxe_utils.py +++ b/ironic/tests/unit/common/test_pxe_utils.py @@ -127,6 +127,10 @@ class TestPXEUtils(db_base.DbTestCase): 'boot_from_iso': True, 'boot_iso_url': 'http://1.2.3.4:1234/uuid/iso' }) + self.ipxe_options_boot_from_ramdisk = self.ipxe_options.copy() + self.ipxe_options_boot_from_ramdisk.update({ + 'ramdisk_kernel_arguments': 'ramdisk_params' + }) self.node = object_utils.create_test_node(self.context) @@ -278,6 +282,27 @@ class TestPXEUtils(db_base.DbTestCase): expected_template = f.read().rstrip() self.assertEqual(str(expected_template), rendered_template) + def test_default_ipxe_boot_from_ramdisk(self): + self.config( + pxe_config_template='ironic/drivers/modules/ipxe_config.template', + group='pxe' + ) + self.config(http_url='http://1.2.3.4:1234', group='deploy') + + pxe_options = self.ipxe_options_boot_from_ramdisk + + rendered_template = utils.render_template( + CONF.pxe.pxe_config_template, + {'pxe_options': pxe_options, + 'ROOT': '{{ ROOT }}'}, + ) + + templ_file = 'ironic/tests/unit/drivers/' \ + 'ipxe_config_boot_from_ramdisk.template' + with open(templ_file) as f: + expected_template = f.read().rstrip() + self.assertEqual(str(expected_template), rendered_template) + def test_default_grub_config(self): pxe_opts = self.pxe_options pxe_opts['boot_mode'] = 'uefi' @@ -1455,7 +1480,8 @@ class PXEBuildConfigOptionsTestCase(db_base.DbTestCase): whle_dsk_img=False, debug=False, mode='deploy', ramdisk_params=None, - expected_pxe_params=None): + expected_pxe_params=None, + ramdisk_kernel_opt=None): self.config(debug=debug) self.config(pxe_append_params='test_param', group='pxe') @@ -1517,6 +1543,8 @@ class PXEBuildConfigOptionsTestCase(db_base.DbTestCase): 'ari_path': ramdisk, 'aki_path': kernel, } + if ramdisk_kernel_opt: + expected_options.update({'ramdisk_opts': ramdisk_kernel_opt}) if mode == 'rescue': self.node.provision_state = states.RESCUING @@ -1542,6 +1570,10 @@ class PXEBuildConfigOptionsTestCase(db_base.DbTestCase): del self.node.driver_internal_info['is_whole_disk_image'] self._test_build_pxe_config_options_pxe(debug=True, mode='rescue') + def test_build_pxe_config_options_pxe_opts_ramdisk_opt(self): + self.node.instance_info = {'ramdisk_kernel_arguments': 'cat meow'} + self._test_build_pxe_config_options_pxe(ramdisk_kernel_opt='cat meow') + def test_build_pxe_config_options_pxe_local_boot(self): del self.node.driver_internal_info['is_whole_disk_image'] i_info = self.node.instance_info |