def test__prepare_floppy_image_use_webserver(self, tempfile_mock, fatimage_mock, copy_mock): mock_image_file_handle = mock.MagicMock(spec=file) mock_image_file_obj = mock.MagicMock(spec=file) mock_image_file_obj.name = 'image-tmp-file' mock_image_file_handle.__enter__.return_value = mock_image_file_obj tempfile_mock.return_value = mock_image_file_handle self.config(use_web_server_for_images=True, group='ilo') deploy_args = {'arg1': 'val1', 'arg2': 'val2'} CONF.deploy.http_url = "http://abc.com/httpboot" CONF.deploy.http_root = "/httpboot" with task_manager.acquire(self.context, self.node.uuid, shared=False) as task: node_uuid = task.node.uuid object_name = 'image-' + node_uuid http_url = CONF.deploy.http_url + '/' + object_name copy_mock.return_value = "http://abc.com/httpboot/" + object_name temp_url = ilo_common._prepare_floppy_image(task, deploy_args) fatimage_mock.assert_called_once_with('image-tmp-file', parameters=deploy_args) copy_mock.assert_called_once_with('image-tmp-file', object_name) self.assertEqual(http_url, temp_url)
def test__prepare_floppy_image(self, tempfile_mock, fatimage_mock, swift_api_mock): mock_image_file_handle = mock.MagicMock(spec=file) mock_image_file_obj = mock.MagicMock(spec=file) mock_image_file_obj.name = 'image-tmp-file' mock_image_file_handle.__enter__.return_value = mock_image_file_obj tempfile_mock.return_value = mock_image_file_handle swift_obj_mock = swift_api_mock.return_value self.config(swift_ilo_container='ilo_cont', group='ilo') self.config(swift_object_expiry_timeout=1, group='ilo') deploy_args = {'arg1': 'val1', 'arg2': 'val2'} swift_obj_mock.get_temp_url.return_value = 'temp-url' timeout = CONF.ilo.swift_object_expiry_timeout object_headers = {'X-Delete-After': timeout} with task_manager.acquire(self.context, self.node.uuid, shared=False) as task: temp_url = ilo_common._prepare_floppy_image(task, deploy_args) node_uuid = task.node.uuid object_name = 'image-' + node_uuid fatimage_mock.assert_called_once_with('image-tmp-file', parameters=deploy_args) swift_obj_mock.create_object.assert_called_once_with( 'ilo_cont', object_name, 'image-tmp-file', object_headers=object_headers) swift_obj_mock.get_temp_url.assert_called_once_with( 'ilo_cont', object_name, timeout) self.assertEqual('temp-url', temp_url)
def test__prepare_floppy_image(self, tempfile_mock, fatimage_mock, swift_api_mock): mock_image_file_handle = mock.MagicMock(spec=file) mock_image_file_obj = mock.MagicMock(spec=file) mock_image_file_obj.name = "image-tmp-file" mock_image_file_handle.__enter__.return_value = mock_image_file_obj tempfile_mock.return_value = mock_image_file_handle swift_obj_mock = swift_api_mock.return_value self.config(swift_ilo_container="ilo_cont", group="ilo") self.config(swift_object_expiry_timeout=1, group="ilo") deploy_args = {"arg1": "val1", "arg2": "val2"} swift_obj_mock.get_temp_url.return_value = "temp-url" timeout = CONF.ilo.swift_object_expiry_timeout object_headers = {"X-Delete-After": timeout} with task_manager.acquire(self.context, self.node.uuid, shared=False) as task: temp_url = ilo_common._prepare_floppy_image(task, deploy_args) node_uuid = task.node.uuid object_name = "image-" + node_uuid fatimage_mock.assert_called_once_with("image-tmp-file", parameters=deploy_args) swift_obj_mock.create_object.assert_called_once_with( "ilo_cont", object_name, "image-tmp-file", object_headers=object_headers ) swift_obj_mock.get_temp_url.assert_called_once_with("ilo_cont", object_name, timeout) self.assertEqual("temp-url", temp_url)
def test__prepare_floppy_image_noauth(self, tempfile_mock, fatimage_mock, swift_api_mock): mock_token_file_obj = mock.MagicMock(spec=file) mock_token_file_obj.name = 'token-tmp-file' mock_image_file_handle = mock.MagicMock(spec=file) mock_image_file_obj = mock.MagicMock(spec=file) mock_image_file_obj.name = 'image-tmp-file' mock_image_file_handle.__enter__.return_value = mock_image_file_obj tempfile_mock.side_effect = iter([mock_image_file_handle]) self.config(swift_ilo_container='ilo_cont', group='ilo') self.config(swift_object_expiry_timeout=1, group='ilo') deploy_args = {'arg1': 'val1', 'arg2': 'val2'} with task_manager.acquire(self.context, self.node.uuid, shared=False) as task: task.context.auth_token = None ilo_common._prepare_floppy_image(task, deploy_args) files_info = {} fatimage_mock.assert_called_once_with('image-tmp-file', files_info=files_info, parameters=deploy_args)
def test__prepare_floppy_image_noauth(self, tempfile_mock, fatimage_mock, swift_api_mock): mock_token_file_obj = mock.MagicMock() mock_token_file_obj.name = 'token-tmp-file' mock_image_file_handle = mock.MagicMock(spec=file) mock_image_file_obj = mock.MagicMock() mock_image_file_obj.name = 'image-tmp-file' mock_image_file_handle.__enter__.return_value = mock_image_file_obj tempfile_mock.side_effect = [mock_image_file_handle] self.config(swift_ilo_container='ilo_cont', group='ilo') self.config(swift_object_expiry_timeout=1, group='ilo') deploy_args = {'arg1': 'val1', 'arg2': 'val2'} with task_manager.acquire(self.context, self.node.uuid, shared=False) as task: task.context.auth_token = None ilo_common._prepare_floppy_image(task, deploy_args) files_info = {} fatimage_mock.assert_called_once_with('image-tmp-file', files_info=files_info, parameters=deploy_args)