def _use_glance_plugin_to_copy_image_to_volume(self, context, volume, image_service, image_id): sr_uuid, vdi_uuid = volume['provider_location'].split('/') api_servers = glance.get_api_servers() glance_server = api_servers.next() auth_token = context.auth_token overwrite_result = self.nfs_ops.use_glance_plugin_to_overwrite_volume( CONF.xenapi_nfs_server, CONF.xenapi_nfs_serverpath, sr_uuid, vdi_uuid, glance_server, image_id, auth_token, CONF.xenapi_sr_base_path) if overwrite_result is False: raise exception.ImageCopyFailure(reason='Overwriting volume ' 'failed.') self.nfs_ops.resize_volume( CONF.xenapi_nfs_server, CONF.xenapi_nfs_serverpath, sr_uuid, vdi_uuid, volume['size'])
def test_get_api_servers_not_mounted_at_root_and_ssl(self): service_catalog = [{u'type': u'image', u'name': u'glance', u'endpoints': [{ u'publicURL': u'https://example.com/image'}]}] self.context = context.RequestContext('fake', 'fake', auth_token=True) self.context.service_catalog = service_catalog result = glance.get_api_servers(self.context) expected = (u'example.com/image', True) self.assertEqual(expected, next(result))
def test_get_api_servers_not_mounted_at_root_and_ssl(self): service_catalog = [ {u"type": u"image", u"name": u"glance", u"endpoints": [{u"publicURL": u"https://example.com/image"}]} ] self.context = context.RequestContext("fake", "fake", auth_token=True) self.context.service_catalog = service_catalog result = glance.get_api_servers(self.context) expected = (u"example.com/image", True) self.assertEqual(expected, next(result))
def _use_glance_plugin_to_upload_volume(self, context, volume, image_service, image_meta): image_id = image_meta['id'] sr_uuid, vdi_uuid = volume['provider_location'].split('/') api_servers = glance.get_api_servers() glance_server = api_servers.next() auth_token = context.auth_token self.nfs_ops.use_glance_plugin_to_upload_volume( FLAGS.xenapi_nfs_server, FLAGS.xenapi_nfs_serverpath, sr_uuid, vdi_uuid, glance_server, image_id, auth_token, FLAGS.xenapi_sr_base_path)
def copy_volume_to_image(self, context, volume, image_service, image_meta): image_id = image_meta['id'] sr_uuid, vdi_uuid = volume['provider_location'].split('/') api_servers = glance.get_api_servers() glance_server = api_servers.next() auth_token = context.auth_token self.nfs_ops.use_glance_plugin_to_upload_volume( FLAGS.xenapi_nfs_server, FLAGS.xenapi_nfs_serverpath, sr_uuid, vdi_uuid, glance_server, image_id, auth_token, FLAGS.xenapi_sr_base_path)
def _use_glance_plugin_to_upload_volume(self, context, volume, image_service, image_meta): image_id = image_meta["id"] sr_uuid, vdi_uuid = volume["provider_location"].split("/") api_servers = glance.get_api_servers() glance_server = api_servers.next() auth_token = context.auth_token self.nfs_ops.use_glance_plugin_to_upload_volume( CONF.xenapi_nfs_server, CONF.xenapi_nfs_serverpath, sr_uuid, vdi_uuid, glance_server, image_id, auth_token, CONF.xenapi_sr_base_path, )
def test_get_api_servers(self): result = glance.get_api_servers(self.context) expected = (u'example.com:9292', False) self.assertEqual(expected, next(result))