Beispiel #1
0
    def test_fix_instance_volume_disk_paths(self):
        block_device_info = db_fakes.get_fake_block_device_info(
            FAKE_TARGET_PORTAL, FAKE_VOLUME_ID)
        fake_vol_conn_info = (
            block_device_info['block_device_mapping'][0]['connection_info'])

        with contextlib.nested(
            mock.patch.object(self._volumeops,
                              '_get_volume_driver'),
            mock.patch.object(self._volumeops,
                              'ebs_root_in_block_devices')
            ) as (mock_get_volume_driver,
                  mock_ebs_in_block_devices):

            fake_vol_driver = mock_get_volume_driver.return_value
            mock_ebs_in_block_devices.return_value = False

            self._volumeops.fix_instance_volume_disk_paths(
                mock.sentinel.instance_name,
                block_device_info)

            func = fake_vol_driver.fix_instance_volume_disk_path
            func.assert_called_once_with(
                mock.sentinel.instance_name,
                fake_vol_conn_info, 0)
Beispiel #2
0
    def test_fix_instace_volume_disk_path(self):
        block_device_info = db_fakes.get_fake_block_device_info(
            FAKE_TARGET_PORTAL, FAKE_VOLUME_ID)
        fake_vol_conn_info = (
            block_device_info['block_device_mapping'][0]['connection_info'])

        with contextlib.nested(
            mock.patch.object(self._volume_driver,
                              '_get_mounted_disk_from_lun'),
            mock.patch.object(self._volume_driver._vmutils,
                              'get_vm_scsi_controller'),
            mock.patch.object(self._volume_driver._vmutils,
                              'set_disk_host_resource')
            ) as (mock_get_mounted_disk_from_lun,
                  mock_get_vm_scsi_controller,
                  mock_set_disk_host_resource):

            mock_get_mounted_disk_from_lun.return_value = (
                mock.sentinel.mounted_path)
            mock_get_vm_scsi_controller.return_value = (
                mock.sentinel.controller_path)

            self._volume_driver.fix_instance_volume_disk_path(
                mock.sentinel.instance_name,
                fake_vol_conn_info,
                mock.sentinel.disk_address)

            mock_get_mounted_disk_from_lun.assert_called_with(
                'iqn.2010-10.org.openstack:volume-' + FAKE_VOLUME_ID,
                1, True)
            mock_get_vm_scsi_controller.assert_called_with(
                mock.sentinel.instance_name)
            mock_set_disk_host_resource.assert_called_once_with(
                mock.sentinel.instance_name, mock.sentinel.controller_path,
                mock.sentinel.disk_address, mock.sentinel.mounted_path)
Beispiel #3
0
    def test_disconnect_volumes(self, mock_logout_storage_target):
        block_device_info = db_fakes.get_fake_block_device_info(
            FAKE_TARGET_PORTAL, FAKE_VOLUME_ID)
        block_device_mapping = block_device_info['block_device_mapping']
        fake_target_iqn = 'iqn.2010-10.org.openstack:volume-' + FAKE_VOLUME_ID

        self._volume_driver.disconnect_volumes(block_device_mapping)

        mock_logout_storage_target.assert_called_once_with(fake_target_iqn, 1)
Beispiel #4
0
    def test_disconnect_volumes(self, mock_get_volume_driver):
        block_device_info = db_fakes.get_fake_block_device_info(
            FAKE_TARGET_PORTAL, FAKE_VOLUME_ID)
        block_device_mapping = (
            block_device_info['block_device_mapping'])
        fake_volume_driver = mock_get_volume_driver.return_value

        self._volumeops.disconnect_volumes(block_device_info)

        fake_volume_driver.disconnect_volumes.assert_called_once_with(
            block_device_mapping)
Beispiel #5
0
    def test_boot_from_volume(self):
        block_device_info = db_fakes.get_fake_block_device_info(
            self._volume_target_portal, self._volume_id)

        self._setup_spawn_instance_mocks(cow=False,
                                         block_device_info=block_device_info,
                                         boot_from_volume=True)

        self._mox.ReplayAll()
        self._spawn_instance(False, block_device_info)
        self._mox.VerifyAll()

        self.assertEqual(len(self._instance_volume_disks), 1)
    def test_boot_from_volume(self):
        block_device_info = db_fakes.get_fake_block_device_info(
            self._volume_target_portal, self._volume_id)

        self._setup_spawn_instance_mocks(cow=False,
                                         block_device_info=block_device_info,
                                         boot_from_volume=True)

        self._mox.ReplayAll()
        self._spawn_instance(False, block_device_info)
        self._mox.VerifyAll()

        self.assertEqual(len(self._instance_volume_disks), 1)