def _set_up_controller(self):
     ext_info = extension_info.LoadedExtensionInfo()
     self.controller = servers_v21.ServersController(
         extension_info=ext_info)
     CONF.set_override('extensions_blacklist', 'os-availability-zone',
                       'osapi_v21')
     self.no_availability_zone_controller = servers_v21.ServersController(
         extension_info=ext_info)
 def _setup_controller(self):
     ext_info = extension_info.LoadedExtensionInfo()
     self.controller = servers_v21.ServersController(
         extension_info=ext_info)
     CONF.set_override('extensions_blacklist', 'os-block-device-mapping',
                       'osapi_v21')
     self.no_bdm_v2_controller = servers_v21.ServersController(
         extension_info=ext_info)
     CONF.set_override('extensions_blacklist', '', 'osapi_v21')
    def test_create_instance_decide_format_legacy(self):
        ext_info = extension_info.LoadedExtensionInfo()
        CONF.set_override(
            'extensions_blacklist',
            ['os-block-device-mapping', 'os-block-device-mapping-v1'],
            'osapi_v21')
        controller = servers_v21.ServersController(extension_info=ext_info)
        bdm = [{
            'device_name': 'foo1',
            'volume_id': fakes.FAKE_UUID,
            'delete_on_termination': True
        }]

        expected_legacy_flag = True

        old_create = compute_api.API.create

        def create(*args, **kwargs):
            legacy_bdm = kwargs.get('legacy_bdm', True)
            self.assertEqual(legacy_bdm, expected_legacy_flag)
            return old_create(*args, **kwargs)

        def _validate_bdm(*args, **kwargs):
            pass

        self.stubs.Set(compute_api.API, 'create', create)
        self.stubs.Set(compute_api.API, '_validate_bdm', _validate_bdm)

        self._test_create({}, override_controller=controller)

        params = {'block_device_mapping': bdm}
        self._test_create(params, override_controller=controller)
 def test_create_instance_both_bdm_formats(self):
     ext_info = extension_info.LoadedExtensionInfo()
     CONF.set_override('extensions_blacklist', '', 'osapi_v21')
     both_controllers = servers_v21.ServersController(
         extension_info=ext_info)
     bdm = [{'device_name': 'foo'}]
     bdm_v2 = [{'source_type': 'volume', 'uuid': 'fake_vol'}]
     params = {
         'block_device_mapping': bdm,
         'block_device_mapping_v2': bdm_v2
     }
     self.assertRaises(exc.HTTPBadRequest,
                       self._test_create,
                       params,
                       override_controller=both_controllers)
Exemple #5
0
 def _set_up_controller(self):
     ext_info = extension_info.LoadedExtensionInfo()
     self.controller = servers_v21.ServersController(
         extension_info=ext_info)