Exemplo n.º 1
0
 def test_libvirt_vzstorage_driver_disconnect(self):
     drv = vzstorage.LibvirtVZStorageVolumeDriver(self.fake_host)
     drv.connector.disconnect_volume = mock.MagicMock()
     conn = {'data': mock.sentinel.conn_data}
     drv.disconnect_volume(conn, mock.sentinel.instance)
     drv.connector.disconnect_volume.assert_called_once_with(
         mock.sentinel.conn_data, None)
Exemplo n.º 2
0
    def test_libvirt_vzstorage_driver_connect(self, mock_synchronized):
        def brick_conn_vol(data):
            return {'path': 'vstorage://testcluster'}

        drv = vzstorage.LibvirtVZStorageVolumeDriver(self.fake_host)
        drv.connector.connect_volume = brick_conn_vol

        export_string = 'testcluster'
        connection_info = {
            'data': {
                'export': export_string,
                'name': self.name
            }
        }

        drv.connect_volume(connection_info, self.disk_info,
                           mock.sentinel.instance)
        self.assertEqual('vstorage://testcluster',
                         connection_info['data']['device_path'])
        self.assertEqual(
            '-u stack -g qemu -m 0770 '
            '-l /var/log/vstorage/testcluster/nova.log.gz '
            '-C /tmp/ssd-cache/testcluster',
            connection_info['data']['options'])
        mock_synchronized.assert_called_once_with('vz_share-testcluster')
Exemplo n.º 3
0
 def test_libvirt_vzstorage_driver_disconnect(self):
     drv = vzstorage.LibvirtVZStorageVolumeDriver(self.fake_host)
     drv.connector.disconnect_volume = mock.MagicMock()
     conn = {'data': self.disk_info}
     drv.disconnect_volume(conn, self.disk_info)
     drv.connector.disconnect_volume.assert_called_once_with(
         self.disk_info, None)
Exemplo n.º 4
0
    def test_libvirt_vzstorage_driver_get_config(self):
        libvirt_driver = vzstorage.LibvirtVZStorageVolumeDriver(self.fake_host)
        export_string = 'vzstorage'
        export_mnt_base = os.path.join(self.mnt_base,
                                       utils.get_hash_str(export_string))
        file_path = os.path.join(export_mnt_base, self.name)

        connection_info = {'data': {'export': export_string,
                                    'name': self.name,
                                    'device_path': file_path}}
        conf = libvirt_driver.get_config(connection_info, self.disk_info)
        self.assertEqual('file', conf.source_type)
        self.assertEqual(file_path, conf.source_path)
        self.assertEqual('raw', conf.driver_format)
        self.assertEqual('writeback', conf.driver_cache)
Exemplo n.º 5
0
    def test_libvirt_vzstorage_driver_share_fmt_neg(self):

        drv = vzstorage.LibvirtVZStorageVolumeDriver(self.fake_host)

        wrong_export_string = 'mds1, mds2:/testcluster:passwd12111'
        connection_info = {'data': {'export': wrong_export_string,
                                    'name': self.name}}

        err_pattern = ("^Valid share format is "
                    "\[mds\[,mds1\[\.\.\.\]\]:/\]clustername\[:password\]$")
        self.assertRaisesRegex(exception.InvalidVolume,
                                err_pattern,
                                drv.connect_volume,
                                connection_info,
                                mock.sentinel.instance)
Exemplo n.º 6
0
    def test_libvirt_vzstorage_driver_connect(self):
        def brick_conn_vol(data):
            return {'path': 'vstorage://testcluster'}

        drv = vzstorage.LibvirtVZStorageVolumeDriver(self.fake_conn)
        drv.connector.connect_volume = brick_conn_vol

        export_string = 'testcluster'
        connection_info = {
            'data': {
                'export': export_string,
                'name': self.name
            }
        }

        drv.connect_volume(connection_info, self.disk_info)
        self.assertEqual('vstorage://testcluster',
                         connection_info['data']['device_path'])
        self.assertEqual(
            '-u stack -g qemu -m 0770 '
            '-l /var/log/pstorage/testcluster/nova.log.gz '
            '-C /tmp/ssd-cache/testcluster',
            connection_info['data']['options'])
Exemplo n.º 7
0
 def test_libvirt_vzstorage_driver(self):
     libvirt_driver = vzstorage.LibvirtVZStorageVolumeDriver(self.fake_host)
     self.assertIsInstance(libvirt_driver.connector,
                           connector.RemoteFsConnector)