Deprecate direct access to clients methods
This change deprecates access to methods like clients.nova() replacing them with calls to clients.client('nova') This allows the memoization to be done in one place (the client() method) and also establishes the preferred API for accessing clients that are contributed by plugins. All calls should now be going through the new client() method. Any calls to the old methods will result in a deprecated log warning. Change-Id: I3dc45aaed2655536ed1558e03f468b0733527815
This commit is contained in:
parent
b160972b08
commit
09d9683ee7
|
@ -24,15 +24,7 @@ except ImportError:
|
|||
|
||||
class Clients(heat_clients.OpenStackClients):
|
||||
|
||||
def __init__(self, context):
|
||||
super(Clients, self).__init__(context)
|
||||
self._barbican = None
|
||||
|
||||
def barbican(self):
|
||||
if self._barbican:
|
||||
return self._barbican
|
||||
|
||||
keystone_client = self.keystone().client
|
||||
def _barbican(self):
|
||||
keystone_client = self.client('keystone').client
|
||||
auth_plugin = auth.KeystoneAuthV2(keystone=keystone_client)
|
||||
self._barbican = barbican_client.Client(auth_plugin=auth_plugin)
|
||||
return self._barbican
|
||||
return barbican_client.Client(auth_plugin=auth_plugin)
|
||||
|
|
|
@ -106,14 +106,17 @@ class Order(resource.Resource):
|
|||
super(Order, self).__init__(name, json_snippet, stack)
|
||||
self.clients = clients.Clients(self.context)
|
||||
|
||||
def barbican(self):
|
||||
return self.clients.client('barbican')
|
||||
|
||||
def handle_create(self):
|
||||
info = dict(self.properties)
|
||||
order_ref = self.clients.barbican().orders.create(**info)
|
||||
order_ref = self.barbican().orders.create(**info)
|
||||
self.resource_id_set(order_ref)
|
||||
return order_ref
|
||||
|
||||
def check_create_complete(self, order_href):
|
||||
order = self.clients.barbican().orders.get(order_href)
|
||||
order = self.barbican().orders.get(order_href)
|
||||
|
||||
if order.status == 'ERROR':
|
||||
reason = order.error_reason
|
||||
|
@ -129,7 +132,7 @@ class Order(resource.Resource):
|
|||
return
|
||||
|
||||
try:
|
||||
self.clients.barbican().orders.delete(self.resource_id)
|
||||
self.barbican().orders.delete(self.resource_id)
|
||||
self.resource_id_set(None)
|
||||
except clients.barbican_client.HTTPClientError as exc:
|
||||
# This is the only exception the client raises
|
||||
|
@ -141,7 +144,7 @@ class Order(resource.Resource):
|
|||
|
||||
def _resolve_attribute(self, name):
|
||||
try:
|
||||
order = self.clients.barbican().orders.get(self.resource_id)
|
||||
order = self.barbican().orders.get(self.resource_id)
|
||||
except clients.barbican_client.HTTPClientError as exc:
|
||||
LOG.warn(_("Order '%(name)s' not found: %(exc)s") %
|
||||
{'name': self.resource_id, 'exc': str(exc)})
|
||||
|
|
|
@ -109,6 +109,9 @@ class Secret(resource.Resource):
|
|||
super(Secret, self).__init__(name, json_snippet, stack)
|
||||
self.clients = clients.Clients(self.context)
|
||||
|
||||
def barbican(self):
|
||||
return self.clients.client('barbican')
|
||||
|
||||
def validate(self):
|
||||
super(Secret, self).validate()
|
||||
self._validate_payload()
|
||||
|
@ -125,7 +128,7 @@ class Secret(resource.Resource):
|
|||
|
||||
def handle_create(self):
|
||||
info = dict(self.properties)
|
||||
secret_ref = self.clients.barbican().secrets.store(**info)
|
||||
secret_ref = self.barbican().secrets.store(**info)
|
||||
self.resource_id_set(secret_ref)
|
||||
return secret_ref
|
||||
|
||||
|
@ -134,7 +137,7 @@ class Secret(resource.Resource):
|
|||
return
|
||||
|
||||
try:
|
||||
self.clients.barbican().secrets.delete(self.resource_id)
|
||||
self.barbican().secrets.delete(self.resource_id)
|
||||
self.resource_id_set(None)
|
||||
except clients.barbican_client.HTTPClientError as exc:
|
||||
# This is the only exception the client raises
|
||||
|
@ -147,10 +150,10 @@ class Secret(resource.Resource):
|
|||
def _resolve_attribute(self, name):
|
||||
try:
|
||||
if name == self.DECRYPTED_PAYLOAD:
|
||||
return self.clients.barbican().secrets.decrypt(
|
||||
return self.barbican().secrets.decrypt(
|
||||
self.resource_id)
|
||||
|
||||
secret = self.clients.barbican().secrets.get(self.resource_id)
|
||||
secret = self.barbican().secrets.get(self.resource_id)
|
||||
if name == self.STATUS:
|
||||
return secret.status
|
||||
except clients.barbican_client.HTTPClientError as e:
|
||||
|
|
|
@ -33,12 +33,12 @@ class TestClient(HeatTestCase):
|
|||
mock_barbican_client,
|
||||
mock_heat_clients):
|
||||
mock_ks = mock.Mock()
|
||||
self.clients.keystone = mock.Mock()
|
||||
self.clients.keystone.return_value.client = mock_ks
|
||||
self.clients._keystone = mock.Mock()
|
||||
self.clients._keystone.return_value.client = mock_ks
|
||||
mock_plugin = mock.Mock()
|
||||
mock_auth.KeystoneAuthV2.return_value = mock_plugin
|
||||
|
||||
self.clients.barbican()
|
||||
self.clients.client('barbican')
|
||||
mock_auth.KeystoneAuthV2.assert_called_once_with(keystone=mock_ks)
|
||||
mock_barbican_client.Client.assert_called_once_with(auth_plugin=
|
||||
mock_plugin)
|
||||
|
|
|
@ -52,9 +52,9 @@ class TestOrder(HeatTestCase):
|
|||
self.props = tmpl['resources']['order']['properties']
|
||||
self._register_resources()
|
||||
|
||||
self.patcher_client = mock.patch.object(order.clients, 'Clients')
|
||||
self.patcher_client = mock.patch.object(order.Order, 'barbican')
|
||||
mock_client = self.patcher_client.start()
|
||||
self.barbican = mock_client.return_value.barbican.return_value
|
||||
self.barbican = mock_client.return_value
|
||||
|
||||
def tearDown(self):
|
||||
super(TestOrder, self).tearDown()
|
||||
|
|
|
@ -42,9 +42,9 @@ class TestSecret(HeatTestCase):
|
|||
utils.setup_dummy_db()
|
||||
self.ctx = utils.dummy_context()
|
||||
|
||||
self.patcher_client = mock.patch.object(secret.clients, 'Clients')
|
||||
self.patcher_client = mock.patch.object(secret.Secret, 'barbican')
|
||||
mock_client = self.patcher_client.start()
|
||||
self.barbican = mock_client.return_value.barbican.return_value
|
||||
self.barbican = mock_client.return_value
|
||||
|
||||
self._register_resources()
|
||||
self.stack = utils.parse_stack(template_format.parse(stack_template))
|
||||
|
@ -86,7 +86,7 @@ class TestSecret(HeatTestCase):
|
|||
def test_attributes_handles_exceptions(self):
|
||||
secret.clients.barbican_client.HTTPClientError = Exception
|
||||
some_error = secret.clients.barbican_client.HTTPClientError('boom')
|
||||
secret.clients.Clients().barbican.side_effect = some_error
|
||||
secret.Secret.barbican.side_effect = some_error
|
||||
|
||||
self.assertEqual('', self.res.FnGetAtt('status'))
|
||||
|
||||
|
|
|
@ -26,15 +26,7 @@ except ImportError:
|
|||
|
||||
class Clients(clients.OpenStackClients):
|
||||
|
||||
"""Convenience class to create and cache client instances."""
|
||||
|
||||
def __init__(self, context):
|
||||
super(Clients, self).__init__(context)
|
||||
self._marconi = None
|
||||
|
||||
def marconi(self, service_type="queuing"):
|
||||
if self._marconi:
|
||||
return self._marconi
|
||||
def _marconi(self, service_type="queuing"):
|
||||
|
||||
con = self.context
|
||||
if self.auth_token is None:
|
||||
|
@ -52,6 +44,4 @@ class Clients(clients.OpenStackClients):
|
|||
conf = {'auth_opts': auth_opts}
|
||||
endpoint = self.url_for(service_type=service_type)
|
||||
|
||||
self._marconi = marconiclient.Client(url=endpoint, conf=conf)
|
||||
|
||||
return self._marconi
|
||||
return marconiclient.Client(url=endpoint, conf=conf)
|
||||
|
|
|
@ -70,7 +70,7 @@ class MarconiQueue(resource.Resource):
|
|||
self.clients = clients.Clients(self.context)
|
||||
|
||||
def marconi(self):
|
||||
return self.clients.marconi()
|
||||
return self.clients.client('marconi')
|
||||
|
||||
def physical_resource_name(self):
|
||||
return self.properties[self.NAME]
|
||||
|
|
|
@ -68,8 +68,8 @@ class CloudServersTest(HeatTestCase):
|
|||
|
||||
def _mock_get_image_id_success(self, imageId_input, imageId):
|
||||
g_cli_mock = self.m.CreateMockAnything()
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, 'glance')
|
||||
clients.OpenStackClients.glance().MultipleTimes().AndReturn(
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, '_glance')
|
||||
clients.OpenStackClients._glance().MultipleTimes().AndReturn(
|
||||
g_cli_mock)
|
||||
self.m.StubOutWithMock(glance_utils, 'get_image_id')
|
||||
glance_utils.get_image_id(g_cli_mock, imageId_input).MultipleTimes().\
|
||||
|
@ -79,8 +79,8 @@ class CloudServersTest(HeatTestCase):
|
|||
# stub nova validate
|
||||
self.m.StubOutWithMock(server, 'nova')
|
||||
server.nova().MultipleTimes().AndReturn(self.fc)
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, 'nova')
|
||||
clients.OpenStackClients.nova().MultipleTimes().AndReturn(self.fc)
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, '_nova')
|
||||
clients.OpenStackClients._nova().MultipleTimes().AndReturn(self.fc)
|
||||
|
||||
# stub glance image validate
|
||||
self._mock_get_image_id_success(imageId_input, image_id)
|
||||
|
@ -324,7 +324,7 @@ class CloudServersTest(HeatTestCase):
|
|||
self.assertEqual('Error: Unknown Managed Cloud automation status: FOO',
|
||||
str(exc))
|
||||
|
||||
@mock.patch.object(clients.OpenStackClients, 'nova')
|
||||
@mock.patch.object(clients.OpenStackClients, '_nova')
|
||||
@mock.patch.object(resource.Resource, 'data_set')
|
||||
def test_create_store_admin_pass_resource_data(self,
|
||||
mock_data_set,
|
||||
|
@ -348,7 +348,7 @@ class CloudServersTest(HeatTestCase):
|
|||
'autogenerated', redact=True)
|
||||
self.assertIn(expected_call, mock_data_set.call_args_list)
|
||||
|
||||
@mock.patch.object(clients.OpenStackClients, 'nova')
|
||||
@mock.patch.object(clients.OpenStackClients, '_nova')
|
||||
@mock.patch.object(resource.Resource, 'data_set')
|
||||
def test_create_save_admin_pass_is_false(self,
|
||||
mock_data_set,
|
||||
|
@ -372,7 +372,7 @@ class CloudServersTest(HeatTestCase):
|
|||
mock.ANY, mock.ANY)
|
||||
self.assertNotIn(expected_call, mock_data_set.call_args_list)
|
||||
|
||||
@mock.patch.object(clients.OpenStackClients, 'nova')
|
||||
@mock.patch.object(clients.OpenStackClients, '_nova')
|
||||
@mock.patch.object(resource.Resource, 'data_set')
|
||||
def test_create_save_admin_pass_defaults_to_false(self,
|
||||
mock_data_set,
|
||||
|
@ -396,7 +396,7 @@ class CloudServersTest(HeatTestCase):
|
|||
mock.ANY, mock.ANY)
|
||||
self.assertNotIn(expected_call, mock_data_set.call_args_list)
|
||||
|
||||
@mock.patch.object(clients.OpenStackClients, 'nova')
|
||||
@mock.patch.object(clients.OpenStackClients, '_nova')
|
||||
@mock.patch.object(resource.Resource, 'data_set')
|
||||
def test_create_without_adminPass_attribute(self,
|
||||
mock_data_set,
|
||||
|
@ -440,7 +440,7 @@ class CloudServersTest(HeatTestCase):
|
|||
resource_defns['WebServer'], stack)
|
||||
self.assertEqual('foo', server.FnGetAtt('admin_pass'))
|
||||
|
||||
@mock.patch.object(clients.OpenStackClients, 'nova')
|
||||
@mock.patch.object(clients.OpenStackClients, '_nova')
|
||||
def _test_server_config_drive(self, user_data, config_drive, result,
|
||||
mock_nova):
|
||||
return_server = self.fc.servers.list()[1]
|
||||
|
|
|
@ -21,6 +21,7 @@ from novaclient import shell as novashell
|
|||
from oslo.config import cfg
|
||||
from swiftclient import client as swiftclient
|
||||
from troveclient import client as troveclient
|
||||
import warnings
|
||||
|
||||
from heat.common import heat_keystoneclient as hkc
|
||||
from heat.openstack.common.gettextutils import _
|
||||
|
@ -48,28 +49,40 @@ class OpenStackClients(object):
|
|||
self.context = context
|
||||
self._clients = {}
|
||||
|
||||
def client(self, name):
|
||||
if name in self._clients:
|
||||
return self._clients[name]
|
||||
method_name = '_%s' % name
|
||||
if callable(getattr(self, method_name, None)):
|
||||
client = getattr(self, method_name)()
|
||||
self._clients[name] = client
|
||||
return client
|
||||
|
||||
@property
|
||||
def auth_token(self):
|
||||
# Always use the auth_token from the keystone() client, as
|
||||
# this may be refreshed if the context contains credentials
|
||||
# which allow reissuing of a new token before the context
|
||||
# auth_token expiry (e.g trust_id or username/password)
|
||||
return self.keystone().auth_token
|
||||
return self.client('keystone').auth_token
|
||||
|
||||
def keystone(self):
|
||||
if 'keystone' in self._clients:
|
||||
return self._clients['keystone']
|
||||
warnings.warn('keystone() is deprecated. '
|
||||
'Replace with calls to client("keystone")')
|
||||
return self.client('keystone')
|
||||
|
||||
self._clients['keystone'] = hkc.KeystoneClient(self.context)
|
||||
return self._clients['keystone']
|
||||
def _keystone(self):
|
||||
return hkc.KeystoneClient(self.context)
|
||||
|
||||
def url_for(self, **kwargs):
|
||||
return self.keystone().url_for(**kwargs)
|
||||
return self.client('keystone').url_for(**kwargs)
|
||||
|
||||
def nova(self):
|
||||
if 'nova' in self._clients:
|
||||
return self._clients['nova']
|
||||
warnings.warn('nova() is deprecated. '
|
||||
'Replace with calls to client("nova")')
|
||||
return self.client('nova')
|
||||
|
||||
def _nova(self):
|
||||
con = self.context
|
||||
computeshell = novashell.OpenStackComputeShell()
|
||||
extensions = computeshell._discover_extensions("1.1")
|
||||
|
@ -96,12 +109,14 @@ class OpenStackClients(object):
|
|||
client.client.auth_token = self.auth_token
|
||||
client.client.management_url = management_url
|
||||
|
||||
self._clients['nova'] = client
|
||||
return client
|
||||
|
||||
def swift(self):
|
||||
if 'swift' in self._clients:
|
||||
return self._clients['swift']
|
||||
warnings.warn('swift() is deprecated. '
|
||||
'Replace with calls to client("swift")')
|
||||
return self.client('swift')
|
||||
|
||||
def _swift(self):
|
||||
|
||||
con = self.context
|
||||
endpoint_type = self._get_client_option('swift', 'endpoint_type')
|
||||
|
@ -118,12 +133,14 @@ class OpenStackClients(object):
|
|||
'cacert': self._get_client_option('swift', 'ca_file'),
|
||||
'insecure': self._get_client_option('swift', 'insecure')
|
||||
}
|
||||
self._clients['swift'] = swiftclient.Connection(**args)
|
||||
return self._clients['swift']
|
||||
return swiftclient.Connection(**args)
|
||||
|
||||
def glance(self):
|
||||
if 'glance' in self._clients:
|
||||
return self._clients['glance']
|
||||
warnings.warn('glance() is deprecated. '
|
||||
'Replace with calls to client("glance")')
|
||||
return self.client('glance')
|
||||
|
||||
def _glance(self):
|
||||
|
||||
con = self.context
|
||||
endpoint_type = self._get_client_option('glance', 'endpoint_type')
|
||||
|
@ -141,12 +158,14 @@ class OpenStackClients(object):
|
|||
'insecure': self._get_client_option('glance', 'insecure')
|
||||
}
|
||||
|
||||
self._clients['glance'] = glanceclient.Client('1', endpoint, **args)
|
||||
return self._clients['glance']
|
||||
return glanceclient.Client('1', endpoint, **args)
|
||||
|
||||
def neutron(self):
|
||||
if 'neutron' in self._clients:
|
||||
return self._clients['neutron']
|
||||
warnings.warn('neutron() is deprecated. '
|
||||
'Replace with calls to client("neutron")')
|
||||
return self.client('neutron')
|
||||
|
||||
def _neutron(self):
|
||||
|
||||
con = self.context
|
||||
if self.auth_token is None:
|
||||
|
@ -165,13 +184,14 @@ class OpenStackClients(object):
|
|||
'insecure': self._get_client_option('neutron', 'insecure')
|
||||
}
|
||||
|
||||
self._clients['neutron'] = neutronclient.Client(**args)
|
||||
|
||||
return self._clients['neutron']
|
||||
return neutronclient.Client(**args)
|
||||
|
||||
def cinder(self):
|
||||
if 'cinder' in self._clients:
|
||||
return self._clients['cinder']
|
||||
warnings.warn('cinder() is deprecated. '
|
||||
'Replace with calls to client("cinder")')
|
||||
return self.client('cinder')
|
||||
|
||||
def _cinder(self):
|
||||
|
||||
con = self.context
|
||||
endpoint_type = self._get_client_option('cinder', 'endpoint_type')
|
||||
|
@ -186,22 +206,25 @@ class OpenStackClients(object):
|
|||
'insecure': self._get_client_option('cinder', 'insecure')
|
||||
}
|
||||
|
||||
self._clients['cinder'] = cinderclient.Client('1', **args)
|
||||
client = cinderclient.Client('1', **args)
|
||||
management_url = self.url_for(service_type='volume',
|
||||
endpoint_type=endpoint_type)
|
||||
self._clients['cinder'].client.auth_token = self.auth_token
|
||||
self._clients['cinder'].client.management_url = management_url
|
||||
client.client.auth_token = self.auth_token
|
||||
client.client.management_url = management_url
|
||||
|
||||
return self._clients['cinder']
|
||||
return client
|
||||
|
||||
def trove(self, service_type="database"):
|
||||
if 'trove' in self._clients:
|
||||
return self._clients['trove']
|
||||
def trove(self):
|
||||
warnings.warn('trove() is deprecated. '
|
||||
'Replace with calls to client("trove")')
|
||||
return self.client('trove')
|
||||
|
||||
def _trove(self):
|
||||
|
||||
con = self.context
|
||||
endpoint_type = self._get_client_option('trove', 'endpoint_type')
|
||||
args = {
|
||||
'service_type': service_type,
|
||||
'service_type': 'database',
|
||||
'auth_url': con.auth_url,
|
||||
'proxy_token': con.auth_token,
|
||||
'username': None,
|
||||
|
@ -211,17 +234,20 @@ class OpenStackClients(object):
|
|||
'endpoint_type': endpoint_type
|
||||
}
|
||||
|
||||
self._clients['trove'] = troveclient.Client('1.0', **args)
|
||||
management_url = self.url_for(service_type=service_type,
|
||||
client = troveclient.Client('1.0', **args)
|
||||
management_url = self.url_for(service_type='database',
|
||||
endpoint_type=endpoint_type)
|
||||
self._clients['trove'].client.auth_token = con.auth_token
|
||||
self._clients['trove'].client.management_url = management_url
|
||||
client.client.auth_token = con.auth_token
|
||||
client.client.management_url = management_url
|
||||
|
||||
return self._clients['trove']
|
||||
return client
|
||||
|
||||
def ceilometer(self):
|
||||
if 'ceilometer' in self._clients:
|
||||
return self._clients['ceilometer']
|
||||
warnings.warn('ceilometer() is deprecated. '
|
||||
'Replace with calls to client("ceilometer")')
|
||||
return self.client('ceilometer')
|
||||
|
||||
def _ceilometer(self):
|
||||
|
||||
con = self.context
|
||||
endpoint_type = self._get_client_option('ceilometer', 'endpoint_type')
|
||||
|
@ -239,10 +265,7 @@ class OpenStackClients(object):
|
|||
'insecure': self._get_client_option('ceilometer', 'insecure')
|
||||
}
|
||||
|
||||
client = ceilometerclient.Client('2', endpoint, **args)
|
||||
|
||||
self._clients['ceilometer'] = client
|
||||
return self._clients['ceilometer']
|
||||
return ceilometerclient.Client('2', endpoint, **args)
|
||||
|
||||
def _get_client_option(self, client, option):
|
||||
try:
|
||||
|
@ -262,8 +285,11 @@ class OpenStackClients(object):
|
|||
return heat_url
|
||||
|
||||
def heat(self):
|
||||
if 'heat' in self._clients:
|
||||
return self._clients['heat']
|
||||
warnings.warn('heat() is deprecated. '
|
||||
'Replace with calls to client("heat")')
|
||||
return self.client('heat')
|
||||
|
||||
def _heat(self):
|
||||
|
||||
con = self.context
|
||||
endpoint_type = self._get_client_option('heat', 'endpoint_type')
|
||||
|
@ -282,9 +308,7 @@ class OpenStackClients(object):
|
|||
if not endpoint:
|
||||
endpoint = self.url_for(service_type='orchestration',
|
||||
endpoint_type=endpoint_type)
|
||||
self._clients['heat'] = heatclient.Client('1', endpoint, **args)
|
||||
|
||||
return self._clients['heat']
|
||||
return heatclient.Client('1', endpoint, **args)
|
||||
|
||||
|
||||
class ClientBackend(object):
|
||||
|
|
|
@ -277,7 +277,8 @@ class Stack(collections.Mapping):
|
|||
# Create a context containing a trust_id and trustor_user_id
|
||||
# if trusts are enabled
|
||||
if cfg.CONF.deferred_auth_method == 'trusts':
|
||||
trust_ctx = self.clients.keystone().create_trust_context()
|
||||
keystone = self.clients.client('keystone')
|
||||
trust_ctx = keystone.create_trust_context()
|
||||
new_creds = db_api.user_creds_create(trust_ctx)
|
||||
else:
|
||||
new_creds = db_api.user_creds_create(self.context)
|
||||
|
@ -771,7 +772,8 @@ class Stack(collections.Mapping):
|
|||
trust_id = user_creds.get('trust_id')
|
||||
if trust_id:
|
||||
try:
|
||||
self.clients.keystone().delete_trust(trust_id)
|
||||
self.clients.client('keystone').delete_trust(
|
||||
trust_id)
|
||||
except Exception as ex:
|
||||
LOG.exception(ex)
|
||||
stack_status = self.FAILED
|
||||
|
@ -791,7 +793,8 @@ class Stack(collections.Mapping):
|
|||
# If the stack has a domain project, delete it
|
||||
if self.stack_user_project_id:
|
||||
try:
|
||||
self.clients.keystone().delete_stack_domain_project(
|
||||
keystone = self.clients.client('keystone')
|
||||
keystone.delete_stack_domain_project(
|
||||
project_id=self.stack_user_project_id)
|
||||
except Exception as ex:
|
||||
LOG.exception(ex)
|
||||
|
@ -884,10 +887,11 @@ class Stack(collections.Mapping):
|
|||
# restart the whole stack
|
||||
|
||||
def get_availability_zones(self):
|
||||
nova = self.clients.client('nova')
|
||||
if self._zones is None:
|
||||
self._zones = [
|
||||
zone.zoneName for zone in
|
||||
self.clients.nova().availability_zones.list(detailed=False)]
|
||||
nova.availability_zones.list(detailed=False)]
|
||||
return self._zones
|
||||
|
||||
def set_stack_user_project_id(self, project_id):
|
||||
|
|
|
@ -93,6 +93,9 @@ class Resource(object):
|
|||
|
||||
support_status = support.SupportStatus()
|
||||
|
||||
# Default name to use for calls to self.client()
|
||||
default_client_name = None
|
||||
|
||||
def __new__(cls, name, definition, stack):
|
||||
'''Create a new Resource of the appropriate class for its type.'''
|
||||
|
||||
|
@ -335,32 +338,37 @@ class Resource(object):
|
|||
return list(
|
||||
[r.name for r in self.stack.dependencies.required_by(self)])
|
||||
|
||||
def client(self, name=None):
|
||||
client_name = name or self.default_client_name
|
||||
assert client_name, "Must specify client name"
|
||||
return self.stack.clients.client(client_name)
|
||||
|
||||
def keystone(self):
|
||||
return self.stack.clients.keystone()
|
||||
return self.client('keystone')
|
||||
|
||||
def nova(self):
|
||||
return self.stack.clients.nova()
|
||||
return self.client('nova')
|
||||
|
||||
def swift(self):
|
||||
return self.stack.clients.swift()
|
||||
return self.client('swift')
|
||||
|
||||
def neutron(self):
|
||||
return self.stack.clients.neutron()
|
||||
return self.client('neutron')
|
||||
|
||||
def cinder(self):
|
||||
return self.stack.clients.cinder()
|
||||
return self.client('cinder')
|
||||
|
||||
def trove(self):
|
||||
return self.stack.clients.trove()
|
||||
return self.client('trove')
|
||||
|
||||
def ceilometer(self):
|
||||
return self.stack.clients.ceilometer()
|
||||
return self.client('ceilometer')
|
||||
|
||||
def heat(self):
|
||||
return self.stack.clients.heat()
|
||||
return self.client('heat')
|
||||
|
||||
def glance(self):
|
||||
return self.stack.clients.glance()
|
||||
return self.client('glance')
|
||||
|
||||
def _do_action(self, action, pre_func=None, resource_data=None):
|
||||
'''
|
||||
|
|
|
@ -21,7 +21,7 @@ class ImageConstraint(constraints.BaseCustomConstraint):
|
|||
expected_exceptions = (exception.ImageNotFound,)
|
||||
|
||||
def validate_with_client(self, client, value):
|
||||
glance_client = client.glance()
|
||||
glance_client = client.client('glance')
|
||||
glance_utils.get_image_id(glance_client, value)
|
||||
|
||||
|
||||
|
|
|
@ -189,7 +189,7 @@ class NetworkConstraint(constraints.BaseCustomConstraint):
|
|||
expected_exceptions = (neutron_exp.NeutronClientException,)
|
||||
|
||||
def validate_with_client(self, client, value):
|
||||
neutron_client = client.neutron()
|
||||
neutron_client = client.client('neutron')
|
||||
neutronV20.find_resourceid_by_name_or_id(
|
||||
neutron_client, 'network', value)
|
||||
|
||||
|
|
|
@ -138,7 +138,7 @@ class KeypairConstraint(constraints.BaseCustomConstraint):
|
|||
# Don't validate empty key, which can happen when you use a KeyPair
|
||||
# resource
|
||||
return True
|
||||
nova_client = client.nova()
|
||||
nova_client = client.client('nova')
|
||||
nova_utils.get_keypair(nova_client, value)
|
||||
|
||||
|
||||
|
|
|
@ -1049,7 +1049,7 @@ class FlavorConstraint(constraints.BaseCustomConstraint):
|
|||
expected_exceptions = (exception.FlavorMissing,)
|
||||
|
||||
def validate_with_client(self, client, value):
|
||||
nova_client = client.nova()
|
||||
nova_client = client.client('nova')
|
||||
nova_utils.get_flavor_id(nova_client, value)
|
||||
|
||||
|
||||
|
|
|
@ -250,7 +250,7 @@ class VolumeExtendTask(object):
|
|||
def __call__(self):
|
||||
LOG.debug(str(self))
|
||||
|
||||
cinder = self.clients.cinder().volumes
|
||||
cinder = self.clients.client('cinder').volumes
|
||||
vol = cinder.get(self.volume_id)
|
||||
|
||||
try:
|
||||
|
@ -307,14 +307,14 @@ class VolumeAttachTask(object):
|
|||
"""Return a co-routine which runs the task."""
|
||||
LOG.debug(str(self))
|
||||
|
||||
va = self.clients.nova().volumes.create_server_volume(
|
||||
va = self.clients.client('nova').volumes.create_server_volume(
|
||||
server_id=self.server_id,
|
||||
volume_id=self.volume_id,
|
||||
device=self.device)
|
||||
self.attachment_id = va.id
|
||||
yield
|
||||
|
||||
vol = self.clients.cinder().volumes.get(self.volume_id)
|
||||
vol = self.clients.client('cinder').volumes.get(self.volume_id)
|
||||
while vol.status == 'available' or vol.status == 'attaching':
|
||||
LOG.debug('%(name)s - volume status: %(status)s'
|
||||
% {'name': str(self), 'status': vol.status})
|
||||
|
@ -354,13 +354,13 @@ class VolumeDetachTask(object):
|
|||
"""Return a co-routine which runs the task."""
|
||||
LOG.debug(str(self))
|
||||
|
||||
server_api = self.clients.nova().volumes
|
||||
server_api = self.clients.client('nova').volumes
|
||||
|
||||
# get reference to the volume while it is attached
|
||||
try:
|
||||
nova_vol = server_api.get_server_volume(self.server_id,
|
||||
self.attachment_id)
|
||||
vol = self.clients.cinder().volumes.get(nova_vol.id)
|
||||
vol = self.clients.client('cinder').volumes.get(nova_vol.id)
|
||||
except (clients.cinderclient.exceptions.NotFound,
|
||||
clients.novaclient.exceptions.BadRequest,
|
||||
clients.novaclient.exceptions.NotFound):
|
||||
|
|
|
@ -115,7 +115,7 @@ class HeatTestCase(testscenarios.WithScenarios,
|
|||
return mockfixture.mock
|
||||
|
||||
def stub_keystoneclient(self, **kwargs):
|
||||
client = self.patchobject(clients.OpenStackClients, "keystone")
|
||||
client = self.patchobject(clients.OpenStackClients, "_keystone")
|
||||
fkc = fakes.FakeKeystoneClient(**kwargs)
|
||||
client.return_value = fkc
|
||||
return fkc
|
||||
|
|
|
@ -213,8 +213,8 @@ class AutoScalingGroupTest(HeatTestCase):
|
|||
def _mock_get_image_id_success(self, imageId_input, imageId,
|
||||
update_image=None):
|
||||
g_cli_mock = self.m.CreateMockAnything()
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, 'glance')
|
||||
clients.OpenStackClients.glance().MultipleTimes().AndReturn(
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, '_glance')
|
||||
clients.OpenStackClients._glance().MultipleTimes().AndReturn(
|
||||
g_cli_mock)
|
||||
self.m.StubOutWithMock(glance_utils, 'get_image_id')
|
||||
|
||||
|
@ -253,7 +253,7 @@ class AutoScalingGroupTest(HeatTestCase):
|
|||
"""
|
||||
self._stub_validate()
|
||||
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, 'nova')
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, '_nova')
|
||||
self.m.StubOutWithMock(instance.Instance, 'handle_create')
|
||||
self.m.StubOutWithMock(instance.Instance, 'check_create_complete')
|
||||
|
||||
|
@ -262,7 +262,7 @@ class AutoScalingGroupTest(HeatTestCase):
|
|||
|
||||
cookie = object()
|
||||
|
||||
clients.OpenStackClients.nova().MultipleTimes().AndReturn(self.fc)
|
||||
clients.OpenStackClients._nova().MultipleTimes().AndReturn(self.fc)
|
||||
# for load balancer setup
|
||||
if setup_lb:
|
||||
self._stub_lb_create()
|
||||
|
@ -289,13 +289,13 @@ class AutoScalingGroupTest(HeatTestCase):
|
|||
notification.send(mox.IgnoreArg()).MultipleTimes().AndReturn(None)
|
||||
|
||||
# for instances in the group
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, 'nova')
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, '_nova')
|
||||
self.m.StubOutWithMock(instance.Instance, 'handle_create')
|
||||
self.m.StubOutWithMock(instance.Instance, 'check_create_complete')
|
||||
self.m.StubOutWithMock(instance.Instance, 'destroy')
|
||||
|
||||
if num_reloads_expected_on_updt > 1:
|
||||
clients.OpenStackClients.nova().MultipleTimes().AndReturn(self.fc)
|
||||
clients.OpenStackClients._nova().MultipleTimes().AndReturn(self.fc)
|
||||
|
||||
cookie = object()
|
||||
for i in range(num_creates_expected_on_updt):
|
||||
|
|
|
@ -356,10 +356,10 @@ class CombinationAlarmTest(HeatTestCase):
|
|||
def setUp(self):
|
||||
super(CombinationAlarmTest, self).setUp()
|
||||
self.fc = FakeCeilometerClient()
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, 'ceilometer')
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, '_ceilometer')
|
||||
|
||||
def create_alarm(self):
|
||||
clients.OpenStackClients.ceilometer().MultipleTimes().AndReturn(
|
||||
clients.OpenStackClients._ceilometer().AndReturn(
|
||||
self.fc)
|
||||
self.m.StubOutWithMock(self.fc.alarms, 'create')
|
||||
self.fc.alarms.create(
|
||||
|
|
|
@ -52,11 +52,11 @@ class ClientsTest(HeatTestCase):
|
|||
obj._get_heat_url.return_value = None
|
||||
obj.url_for = mock.Mock(name="url_for")
|
||||
obj.url_for.return_value = "url_from_keystone"
|
||||
obj.heat()
|
||||
obj.client('heat')
|
||||
self.assertEqual('url_from_keystone', mock_call.call_args[0][1])
|
||||
obj._get_heat_url.return_value = "url_from_config"
|
||||
del(obj._clients['heat'])
|
||||
obj.heat()
|
||||
obj.client('heat')
|
||||
self.assertEqual('url_from_config', mock_call.call_args[0][1])
|
||||
|
||||
@mock.patch.object(heatclient, 'Client')
|
||||
|
@ -71,8 +71,8 @@ class ClientsTest(HeatTestCase):
|
|||
obj._get_heat_url.return_value = None
|
||||
obj.url_for = mock.Mock(name="url_for")
|
||||
obj.url_for.return_value = "url_from_keystone"
|
||||
self.assertIsNotNone(obj.heat())
|
||||
self.assertEqual('anewtoken', obj.keystone().auth_token)
|
||||
self.assertIsNotNone(obj.client('heat'))
|
||||
self.assertEqual('anewtoken', obj.client('keystone').auth_token)
|
||||
|
||||
@mock.patch.object(heatclient, 'Client')
|
||||
def test_clients_heat_cached(self, mock_call):
|
||||
|
@ -87,8 +87,8 @@ class ClientsTest(HeatTestCase):
|
|||
obj.url_for = mock.Mock(name="url_for")
|
||||
obj.url_for.return_value = "url_from_keystone"
|
||||
obj._heat = None
|
||||
heat = obj.heat()
|
||||
heat_cached = obj.heat()
|
||||
heat = obj.client('heat')
|
||||
heat_cached = obj.client('heat')
|
||||
self.assertEqual(heat, heat_cached)
|
||||
|
||||
def test_clients_auth_token_update(self):
|
||||
|
@ -100,7 +100,7 @@ class ClientsTest(HeatTestCase):
|
|||
con.password = 'verysecret'
|
||||
con.auth_token = None
|
||||
obj = clients.Clients(con)
|
||||
self.assertIsNotNone(obj.heat())
|
||||
self.assertIsNotNone(obj.client('heat'))
|
||||
self.assertEqual('token1', obj.auth_token)
|
||||
fkc.auth_token = 'token2'
|
||||
self.assertEqual('token2', obj.auth_token)
|
||||
|
|
|
@ -196,15 +196,15 @@ def get_stack(stack_name, ctx, template):
|
|||
|
||||
def setup_keystone_mocks(mocks, stack):
|
||||
fkc = test_fakes.FakeKeystoneClient()
|
||||
mocks.StubOutWithMock(stack.clients, 'keystone')
|
||||
stack.clients.keystone().MultipleTimes().AndReturn(fkc)
|
||||
mocks.StubOutWithMock(stack.clients, '_keystone')
|
||||
stack.clients._keystone().MultipleTimes().AndReturn(fkc)
|
||||
|
||||
|
||||
def setup_mock_for_image_constraint(mocks, imageId_input,
|
||||
imageId_output=744):
|
||||
g_cli_mock = mocks.CreateMockAnything()
|
||||
mocks.StubOutWithMock(clients.OpenStackClients, 'glance')
|
||||
clients.OpenStackClients.glance().MultipleTimes().AndReturn(
|
||||
mocks.StubOutWithMock(clients.OpenStackClients, '_glance')
|
||||
clients.OpenStackClients._glance().MultipleTimes().AndReturn(
|
||||
g_cli_mock)
|
||||
mocks.StubOutWithMock(glance_utils, 'get_image_id')
|
||||
glance_utils.get_image_id(g_cli_mock, imageId_input).\
|
||||
|
@ -215,8 +215,8 @@ def setup_mocks(mocks, stack, mock_image_constraint=True):
|
|||
fc = fakes.FakeClient()
|
||||
mocks.StubOutWithMock(instances.Instance, 'nova')
|
||||
instances.Instance.nova().MultipleTimes().AndReturn(fc)
|
||||
mocks.StubOutWithMock(clients.OpenStackClients, 'nova')
|
||||
clients.OpenStackClients.nova().MultipleTimes().AndReturn(fc)
|
||||
mocks.StubOutWithMock(clients.OpenStackClients, '_nova')
|
||||
clients.OpenStackClients._nova().MultipleTimes().AndReturn(fc)
|
||||
instance = stack['WebServer']
|
||||
if mock_image_constraint:
|
||||
setup_mock_for_image_constraint(mocks,
|
||||
|
|
|
@ -80,8 +80,8 @@ class InstancesTest(HeatTestCase):
|
|||
|
||||
def _mock_get_image_id_success(self, imageId_input, imageId):
|
||||
g_cli_mock = self.m.CreateMockAnything()
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, 'glance')
|
||||
clients.OpenStackClients.glance().MultipleTimes().AndReturn(
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, '_glance')
|
||||
clients.OpenStackClients._glance().MultipleTimes().AndReturn(
|
||||
g_cli_mock)
|
||||
self.m.StubOutWithMock(glance_utils, 'get_image_id')
|
||||
glance_utils.get_image_id(g_cli_mock, imageId_input).MultipleTimes().\
|
||||
|
@ -89,8 +89,8 @@ class InstancesTest(HeatTestCase):
|
|||
|
||||
def _mock_get_image_id_fail(self, image_id, exp):
|
||||
g_cli_mock = self.m.CreateMockAnything()
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, 'glance')
|
||||
clients.OpenStackClients.glance().MultipleTimes().AndReturn(
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, '_glance')
|
||||
clients.OpenStackClients._glance().MultipleTimes().AndReturn(
|
||||
g_cli_mock)
|
||||
self.m.StubOutWithMock(glance_utils, 'get_image_id')
|
||||
glance_utils.get_image_id(g_cli_mock, image_id).AndRaise(exp)
|
||||
|
@ -116,8 +116,8 @@ class InstancesTest(HeatTestCase):
|
|||
|
||||
self.m.StubOutWithMock(instance, 'nova')
|
||||
instance.nova().MultipleTimes().AndReturn(self.fc)
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, 'nova')
|
||||
clients.OpenStackClients.nova().MultipleTimes().AndReturn(self.fc)
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, '_nova')
|
||||
clients.OpenStackClients._nova().MultipleTimes().AndReturn(self.fc)
|
||||
|
||||
if stub_create:
|
||||
self.m.StubOutWithMock(self.fc.servers, 'create')
|
||||
|
@ -314,8 +314,8 @@ class InstancesTest(HeatTestCase):
|
|||
instance = instances.Instance('instance_create_image',
|
||||
resource_defns['WebServer'], stack)
|
||||
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, 'nova')
|
||||
clients.OpenStackClients.nova().MultipleTimes().AndReturn(self.fc)
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, '_nova')
|
||||
clients.OpenStackClients._nova().MultipleTimes().AndReturn(self.fc)
|
||||
|
||||
self._mock_get_image_id_success('1', 1)
|
||||
self.m.ReplayAll()
|
||||
|
|
|
@ -152,8 +152,8 @@ class instancesTest(HeatTestCase):
|
|||
|
||||
def _mock_get_image_id_success(self, imageId_input, imageId):
|
||||
g_cli_mock = self.m.CreateMockAnything()
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, 'glance')
|
||||
clients.OpenStackClients.glance().MultipleTimes().AndReturn(
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, '_glance')
|
||||
clients.OpenStackClients._glance().MultipleTimes().AndReturn(
|
||||
g_cli_mock)
|
||||
self.m.StubOutWithMock(glance_utils, 'get_image_id')
|
||||
glance_utils.get_image_id(g_cli_mock, imageId_input).MultipleTimes().\
|
||||
|
@ -177,8 +177,8 @@ class instancesTest(HeatTestCase):
|
|||
|
||||
self.m.StubOutWithMock(instance, 'nova')
|
||||
instance.nova().MultipleTimes().AndReturn(self.fc)
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, 'nova')
|
||||
clients.OpenStackClients.nova().MultipleTimes().AndReturn(self.fc)
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, '_nova')
|
||||
clients.OpenStackClients._nova().MultipleTimes().AndReturn(self.fc)
|
||||
|
||||
self._mock_get_image_id_success(image_id, 1)
|
||||
|
||||
|
@ -237,8 +237,8 @@ class instancesTest(HeatTestCase):
|
|||
|
||||
self.m.StubOutWithMock(instance, 'nova')
|
||||
instance.nova().MultipleTimes().AndReturn(self.fc)
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, 'nova')
|
||||
clients.OpenStackClients.nova().MultipleTimes().AndReturn(self.fc)
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, '_nova')
|
||||
clients.OpenStackClients._nova().MultipleTimes().AndReturn(self.fc)
|
||||
|
||||
# need to resolve the template functions
|
||||
server_userdata = nova_utils.build_userdata(
|
||||
|
|
|
@ -104,7 +104,7 @@ class LoadBalancerTest(HeatTestCase):
|
|||
def setUp(self):
|
||||
super(LoadBalancerTest, self).setUp()
|
||||
self.fc = fakes.FakeClient()
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, 'nova')
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, '_nova')
|
||||
self.m.StubOutWithMock(self.fc.servers, 'create')
|
||||
self.m.StubOutWithMock(resource.Resource, 'metadata_set')
|
||||
self.stub_keystoneclient(username='test_stack.CfnLBUser')
|
||||
|
@ -124,8 +124,8 @@ class LoadBalancerTest(HeatTestCase):
|
|||
|
||||
def _mock_get_image_id_success(self, imageId_input, imageId):
|
||||
g_cli_mock = self.m.CreateMockAnything()
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, 'glance')
|
||||
clients.OpenStackClients.glance().MultipleTimes().AndReturn(
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, '_glance')
|
||||
clients.OpenStackClients._glance().MultipleTimes().AndReturn(
|
||||
g_cli_mock)
|
||||
self.m.StubOutWithMock(glance_utils, 'get_image_id')
|
||||
glance_utils.get_image_id(g_cli_mock, imageId_input).\
|
||||
|
@ -136,7 +136,7 @@ class LoadBalancerTest(HeatTestCase):
|
|||
utils.PhysName('test_stack', 'LoadBalancer'),
|
||||
'LB_instance',
|
||||
limit=instance.Instance.physical_resource_name_limit)
|
||||
clients.OpenStackClients.nova().MultipleTimes().AndReturn(self.fc)
|
||||
clients.OpenStackClients._nova().MultipleTimes().AndReturn(self.fc)
|
||||
self.fc.servers.create(
|
||||
flavor=2, image=746, key_name=key_name,
|
||||
meta=None, nics=None, name=server_name,
|
||||
|
|
|
@ -2381,8 +2381,8 @@ class NeutronPortTest(HeatTestCase):
|
|||
class NetworkConstraintTest(HeatTestCase):
|
||||
|
||||
def test_validate(self):
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, 'neutron')
|
||||
clients.OpenStackClients.neutron().MultipleTimes().AndReturn(None)
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, '_neutron')
|
||||
clients.OpenStackClients._neutron().MultipleTimes().AndReturn(None)
|
||||
self.m.StubOutWithMock(net.neutronV20, 'find_resourceid_by_name_or_id')
|
||||
net.neutronV20.find_resourceid_by_name_or_id(
|
||||
None, 'network', 'foo'
|
||||
|
|
|
@ -955,10 +955,10 @@ class LoadBalancerTest(HeatTestCase):
|
|||
self.m.StubOutWithMock(neutronclient.Client, 'create_member')
|
||||
self.m.StubOutWithMock(neutronclient.Client, 'delete_member')
|
||||
self.stub_keystoneclient()
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, 'nova')
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, '_nova')
|
||||
|
||||
def create_load_balancer(self):
|
||||
clients.OpenStackClients.nova().MultipleTimes().AndReturn(self.fc)
|
||||
clients.OpenStackClients._nova().AndReturn(self.fc)
|
||||
neutronclient.Client.create_member({
|
||||
'member': {
|
||||
'pool_id': 'pool123', 'protocol_port': 8080,
|
||||
|
|
|
@ -18,7 +18,6 @@ from novaclient.v1_1 import security_groups as nova_sg
|
|||
|
||||
from heat.common import exception
|
||||
from heat.common import template_format
|
||||
from heat.engine import clients
|
||||
from heat.engine import parser
|
||||
from heat.engine import scheduler
|
||||
from heat.tests.common import HeatTestCase
|
||||
|
@ -86,7 +85,6 @@ Resources:
|
|||
def setUp(self):
|
||||
super(SecurityGroupTest, self).setUp()
|
||||
self.fc = fakes.FakeClient()
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, 'nova')
|
||||
self.stub_keystoneclient()
|
||||
self.m.StubOutWithMock(nova_sgr.SecurityGroupRuleManager, 'create')
|
||||
self.m.StubOutWithMock(nova_sgr.SecurityGroupRuleManager, 'delete')
|
||||
|
|
|
@ -62,8 +62,8 @@ class nokeyTest(HeatTestCase):
|
|||
self.m.StubOutWithMock(instance, 'nova')
|
||||
instance.nova().MultipleTimes().AndReturn(self.fc)
|
||||
g_cli_mock = self.m.CreateMockAnything()
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, 'glance')
|
||||
clients.OpenStackClients.glance().MultipleTimes().AndReturn(
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, '_glance')
|
||||
clients.OpenStackClients._glance().MultipleTimes().AndReturn(
|
||||
g_cli_mock)
|
||||
self.m.StubOutWithMock(glance_utils, 'get_image_id')
|
||||
glance_utils.get_image_id(g_cli_mock, 'CentOS 5.2').MultipleTimes().\
|
||||
|
|
|
@ -63,7 +63,7 @@ class NovaFloatingIPTest(HeatTestCase):
|
|||
super(NovaFloatingIPTest, self).setUp()
|
||||
|
||||
self.novaclient = novaclient.Client('user', 'pass', 'project', 'uri')
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, 'nova')
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, '_nova')
|
||||
self.m.StubOutWithMock(self.novaclient.floating_ips, 'create')
|
||||
self.m.StubOutWithMock(self.novaclient.floating_ips, 'get')
|
||||
self.m.StubOutWithMock(self.novaclient.floating_ips, 'delete')
|
||||
|
@ -79,7 +79,7 @@ class NovaFloatingIPTest(HeatTestCase):
|
|||
return mock
|
||||
|
||||
def prepare_floating_ip(self):
|
||||
clients.OpenStackClients.nova().AndReturn(self.novaclient)
|
||||
clients.OpenStackClients._nova().AndReturn(self.novaclient)
|
||||
self.novaclient.floating_ips.create(pool='public').AndReturn(
|
||||
self._make_obj(**{
|
||||
'id': '1',
|
||||
|
@ -95,7 +95,7 @@ class NovaFloatingIPTest(HeatTestCase):
|
|||
return NovaFloatingIp('MyFloatingIP', floating_ip, stack)
|
||||
|
||||
def prepare_floating_ip_assoc(self):
|
||||
clients.OpenStackClients.nova().MultipleTimes().AndReturn(
|
||||
clients.OpenStackClients._nova().AndReturn(
|
||||
self.novaclient)
|
||||
self.novaclient.servers.get('67dc62f9-efde-4c8b-94af-013e00f5dc57')
|
||||
self.novaclient.floating_ips.get('1').AndReturn(
|
||||
|
@ -132,7 +132,6 @@ class NovaFloatingIPTest(HeatTestCase):
|
|||
rsrc = self.prepare_floating_ip()
|
||||
rsrc.validate()
|
||||
|
||||
clients.OpenStackClients.nova().AndReturn(self.novaclient)
|
||||
self.novaclient.floating_ips.delete('1')
|
||||
|
||||
self.m.ReplayAll()
|
||||
|
|
|
@ -152,8 +152,8 @@ class KeypairConstraintTest(HeatTestCase):
|
|||
|
||||
def test_validation(self):
|
||||
client = fakes.FakeClient()
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, 'nova')
|
||||
clients.OpenStackClients.nova().MultipleTimes().AndReturn(client)
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, '_nova')
|
||||
clients.OpenStackClients._nova().MultipleTimes().AndReturn(client)
|
||||
client.keypairs = self.m.CreateMockAnything()
|
||||
|
||||
key = collections.namedtuple("Key", ["name"])
|
||||
|
|
|
@ -466,9 +466,9 @@ Mappings:
|
|||
snippet = {"Fn::GetAZs": ""}
|
||||
stack = parser.Stack(self.ctx, 'test_stack',
|
||||
parser.Template(empty_template))
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, 'nova')
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, '_nova')
|
||||
fc = fakes.FakeClient()
|
||||
clients.OpenStackClients.nova().MultipleTimes().AndReturn(fc)
|
||||
clients.OpenStackClients._nova().MultipleTimes().AndReturn(fc)
|
||||
self.m.ReplayAll()
|
||||
self.assertEqual(["nova1"], self.resolve(snippet, tmpl, stack))
|
||||
|
||||
|
@ -1346,8 +1346,8 @@ class StackTest(HeatTestCase):
|
|||
def delete_trust(self, trust_id):
|
||||
raise Exception("Shouldn't delete")
|
||||
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, 'keystone')
|
||||
clients.OpenStackClients.keystone().MultipleTimes().AndReturn(
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, '_keystone')
|
||||
clients.OpenStackClients._keystone().MultipleTimes().AndReturn(
|
||||
FakeKeystoneClientFail())
|
||||
self.m.ReplayAll()
|
||||
|
||||
|
@ -1372,8 +1372,8 @@ class StackTest(HeatTestCase):
|
|||
def delete_trust(self, trust_id):
|
||||
raise kc_exceptions.Forbidden("Denied!")
|
||||
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, 'keystone')
|
||||
clients.OpenStackClients.keystone().MultipleTimes().AndReturn(
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, '_keystone')
|
||||
clients.OpenStackClients._keystone().MultipleTimes().AndReturn(
|
||||
FakeKeystoneClientFail())
|
||||
self.m.ReplayAll()
|
||||
|
||||
|
@ -2959,8 +2959,8 @@ class StackTest(HeatTestCase):
|
|||
"""
|
||||
cfg.CONF.set_override('deferred_auth_method', 'trusts')
|
||||
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, 'keystone')
|
||||
clients.OpenStackClients.keystone().MultipleTimes().AndReturn(
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, '_keystone')
|
||||
clients.OpenStackClients._keystone().MultipleTimes().AndReturn(
|
||||
FakeKeystoneClient())
|
||||
self.m.ReplayAll()
|
||||
|
||||
|
@ -3118,8 +3118,9 @@ class StackTest(HeatTestCase):
|
|||
def delete_stack_domain_project(self, project_id):
|
||||
raise kc_exceptions.Forbidden("Denied!")
|
||||
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, 'keystone')
|
||||
clients.OpenStackClients.keystone().AndReturn(FakeKeystoneClientFail())
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, '_keystone')
|
||||
clients.OpenStackClients._keystone().AndReturn(
|
||||
FakeKeystoneClientFail())
|
||||
self.m.ReplayAll()
|
||||
|
||||
self.stack = parser.Stack(self.ctx, 'user_project_init',
|
||||
|
@ -3245,8 +3246,8 @@ class StackTest(HeatTestCase):
|
|||
# Mock objects so the query for flavors in server.FlavorConstraint
|
||||
# works for stack creation
|
||||
fc = fakes.FakeClient()
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, 'nova')
|
||||
clients.OpenStackClients.nova().MultipleTimes().AndReturn(fc)
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, '_nova')
|
||||
clients.OpenStackClients._nova().MultipleTimes().AndReturn(fc)
|
||||
|
||||
fc.flavors = self.m.CreateMockAnything()
|
||||
flavor = collections.namedtuple("Flavor", ["id", "name"])
|
||||
|
|
|
@ -127,7 +127,7 @@ Resources:
|
|||
def setUp(self):
|
||||
super(SecurityGroupTest, self).setUp()
|
||||
self.fc = fakes.FakeClient()
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, 'nova')
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, '_nova')
|
||||
self.stub_keystoneclient()
|
||||
self.m.StubOutWithMock(nova_sgr.SecurityGroupRuleManager, 'create')
|
||||
self.m.StubOutWithMock(nova_sgr.SecurityGroupRuleManager, 'delete')
|
||||
|
@ -164,14 +164,13 @@ Resources:
|
|||
|
||||
def test_security_group_nova(self):
|
||||
#create script
|
||||
clients.OpenStackClients.nova().AndReturn(self.fc)
|
||||
clients.OpenStackClients._nova().AndReturn(self.fc)
|
||||
nova_sg.SecurityGroupManager.list().AndReturn([NovaSG(
|
||||
id=1,
|
||||
name='test',
|
||||
description='FAKE_SECURITY_GROUP',
|
||||
rules=[],
|
||||
)])
|
||||
clients.OpenStackClients.nova().AndReturn(self.fc)
|
||||
sg_name = utils.PhysName('test_stack', 'the_sg')
|
||||
nova_sg.SecurityGroupManager.create(
|
||||
sg_name,
|
||||
|
@ -181,7 +180,6 @@ Resources:
|
|||
description='HTTP and SSH access',
|
||||
rules=[]))
|
||||
|
||||
clients.OpenStackClients.nova().AndReturn(self.fc)
|
||||
nova_sgr.SecurityGroupRuleManager.create(
|
||||
2, 'tcp', '22', '22', '0.0.0.0/0', None).AndReturn(None)
|
||||
nova_sgr.SecurityGroupRuleManager.create(
|
||||
|
@ -192,7 +190,6 @@ Resources:
|
|||
2, 'icmp', None, None, None, '1').AndReturn(None)
|
||||
|
||||
# delete script
|
||||
clients.OpenStackClients.nova().AndReturn(self.fc)
|
||||
nova_sg.SecurityGroupManager.get(2).AndReturn(NovaSG(
|
||||
id=2,
|
||||
name=sg_name,
|
||||
|
@ -241,15 +238,10 @@ Resources:
|
|||
'id': 133
|
||||
}]
|
||||
))
|
||||
clients.OpenStackClients.nova().AndReturn(self.fc)
|
||||
nova_sgr.SecurityGroupRuleManager.delete(130).AndReturn(None)
|
||||
clients.OpenStackClients.nova().AndReturn(self.fc)
|
||||
nova_sgr.SecurityGroupRuleManager.delete(131).AndReturn(None)
|
||||
clients.OpenStackClients.nova().AndReturn(self.fc)
|
||||
nova_sgr.SecurityGroupRuleManager.delete(132).AndReturn(None)
|
||||
clients.OpenStackClients.nova().AndReturn(self.fc)
|
||||
nova_sgr.SecurityGroupRuleManager.delete(133).AndReturn(None)
|
||||
clients.OpenStackClients.nova().AndReturn(self.fc)
|
||||
nova_sg.SecurityGroupManager.delete(2).AndReturn(None)
|
||||
|
||||
self.m.ReplayAll()
|
||||
|
@ -264,14 +256,13 @@ Resources:
|
|||
|
||||
def test_security_group_nova_bad_source_group(self):
|
||||
#create script
|
||||
clients.OpenStackClients.nova().AndReturn(self.fc)
|
||||
clients.OpenStackClients._nova().AndReturn(self.fc)
|
||||
nova_sg.SecurityGroupManager.list().AndReturn([NovaSG(
|
||||
id=1,
|
||||
name='test',
|
||||
description='FAKE_SECURITY_GROUP',
|
||||
rules=[],
|
||||
)])
|
||||
clients.OpenStackClients.nova().AndReturn(self.fc)
|
||||
sg_name = utils.PhysName('test_stack', 'the_sg')
|
||||
nova_sg.SecurityGroupManager.create(
|
||||
sg_name,
|
||||
|
@ -281,14 +272,12 @@ Resources:
|
|||
description='HTTP and SSH access',
|
||||
rules=[]))
|
||||
|
||||
clients.OpenStackClients.nova().AndReturn(self.fc)
|
||||
nova_sgr.SecurityGroupRuleManager.create(
|
||||
2, 'tcp', '22', '22', '0.0.0.0/0', None).AndReturn(None)
|
||||
nova_sgr.SecurityGroupRuleManager.create(
|
||||
2, 'tcp', '80', '80', '0.0.0.0/0', None).AndReturn(None)
|
||||
|
||||
# delete script
|
||||
clients.OpenStackClients.nova().AndReturn(self.fc)
|
||||
nova_sg.SecurityGroupManager.get(2).AndReturn(NovaSG(
|
||||
id=2,
|
||||
name=sg_name,
|
||||
|
@ -315,11 +304,8 @@ Resources:
|
|||
'id': 131
|
||||
}]
|
||||
))
|
||||
clients.OpenStackClients.nova().AndReturn(self.fc)
|
||||
nova_sgr.SecurityGroupRuleManager.delete(130).AndReturn(None)
|
||||
clients.OpenStackClients.nova().AndReturn(self.fc)
|
||||
nova_sgr.SecurityGroupRuleManager.delete(131).AndReturn(None)
|
||||
clients.OpenStackClients.nova().AndReturn(self.fc)
|
||||
nova_sg.SecurityGroupManager.delete(2).AndReturn(None)
|
||||
|
||||
self.m.ReplayAll()
|
||||
|
@ -334,7 +320,7 @@ Resources:
|
|||
|
||||
def test_security_group_nova_exception(self):
|
||||
#create script
|
||||
clients.OpenStackClients.nova().AndReturn(self.fc)
|
||||
clients.OpenStackClients._nova().AndReturn(self.fc)
|
||||
sg_name = utils.PhysName('test_stack', 'the_sg')
|
||||
nova_sg.SecurityGroupManager.list().AndReturn([
|
||||
NovaSG(
|
||||
|
@ -351,7 +337,6 @@ Resources:
|
|||
)
|
||||
])
|
||||
|
||||
clients.OpenStackClients.nova().AndReturn(self.fc)
|
||||
nova_sgr.SecurityGroupRuleManager.create(
|
||||
2, 'tcp', '22', '22', '0.0.0.0/0', None).AndRaise(
|
||||
clients.novaclient.exceptions.BadRequest(
|
||||
|
@ -370,7 +355,6 @@ Resources:
|
|||
400, 'Rule already exists'))
|
||||
|
||||
# delete script
|
||||
clients.OpenStackClients.nova().AndReturn(self.fc)
|
||||
nova_sg.SecurityGroupManager.get(2).AndReturn(NovaSG(
|
||||
id=2,
|
||||
name=sg_name,
|
||||
|
@ -419,22 +403,16 @@ Resources:
|
|||
'id': 133
|
||||
}]
|
||||
))
|
||||
clients.OpenStackClients.nova().AndReturn(self.fc)
|
||||
nova_sgr.SecurityGroupRuleManager.delete(130).AndRaise(
|
||||
clients.novaclient.exceptions.NotFound('goneburger'))
|
||||
clients.OpenStackClients.nova().AndReturn(self.fc)
|
||||
nova_sgr.SecurityGroupRuleManager.delete(131).AndRaise(
|
||||
clients.novaclient.exceptions.NotFound('goneburger'))
|
||||
clients.OpenStackClients.nova().AndReturn(self.fc)
|
||||
nova_sgr.SecurityGroupRuleManager.delete(132).AndRaise(
|
||||
clients.novaclient.exceptions.NotFound('goneburger'))
|
||||
clients.OpenStackClients.nova().AndReturn(self.fc)
|
||||
nova_sgr.SecurityGroupRuleManager.delete(133).AndRaise(
|
||||
clients.novaclient.exceptions.NotFound('goneburger'))
|
||||
clients.OpenStackClients.nova().AndReturn(self.fc)
|
||||
nova_sg.SecurityGroupManager.delete(2).AndReturn(None)
|
||||
|
||||
clients.OpenStackClients.nova().AndReturn(self.fc)
|
||||
nova_sg.SecurityGroupManager.get(2).AndRaise(
|
||||
clients.novaclient.exceptions.NotFound('goneburger'))
|
||||
|
||||
|
|
|
@ -126,8 +126,8 @@ class ServersTest(HeatTestCase):
|
|||
|
||||
self.m.StubOutWithMock(server, 'nova')
|
||||
server.nova().MultipleTimes().AndReturn(self.fc)
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, 'nova')
|
||||
clients.OpenStackClients.nova().MultipleTimes().AndReturn(self.fc)
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, '_nova')
|
||||
clients.OpenStackClients._nova().MultipleTimes().AndReturn(self.fc)
|
||||
|
||||
if stub_create:
|
||||
self.m.StubOutWithMock(self.fc.servers, 'create')
|
||||
|
@ -165,8 +165,8 @@ class ServersTest(HeatTestCase):
|
|||
def _mock_get_image_id_success(self, imageId_input, imageId,
|
||||
server_rebuild=False):
|
||||
g_cli_mock = self.m.CreateMockAnything()
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, 'glance')
|
||||
clients.OpenStackClients.glance().MultipleTimes().AndReturn(
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, '_glance')
|
||||
clients.OpenStackClients._glance().MultipleTimes().AndReturn(
|
||||
g_cli_mock)
|
||||
self.m.StubOutWithMock(glance_utils, 'get_image_id')
|
||||
glance_utils.get_image_id(g_cli_mock, imageId_input).MultipleTimes().\
|
||||
|
@ -178,16 +178,16 @@ class ServersTest(HeatTestCase):
|
|||
|
||||
def _mock_get_image_id_fail(self, image_id, exp):
|
||||
g_cli_mock = self.m.CreateMockAnything()
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, 'glance')
|
||||
clients.OpenStackClients.glance().MultipleTimes().AndReturn(
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, '_glance')
|
||||
clients.OpenStackClients._glance().MultipleTimes().AndReturn(
|
||||
g_cli_mock)
|
||||
self.m.StubOutWithMock(glance_utils, 'get_image_id')
|
||||
glance_utils.get_image_id(g_cli_mock, image_id).AndRaise(exp)
|
||||
|
||||
def _mock_get_keypair_success(self, keypair_input, keypair):
|
||||
n_cli_mock = self.m.CreateMockAnything()
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, 'nova')
|
||||
clients.OpenStackClients.nova().MultipleTimes().AndReturn(
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, '_nova')
|
||||
clients.OpenStackClients._nova().MultipleTimes().AndReturn(
|
||||
n_cli_mock)
|
||||
self.m.StubOutWithMock(nova_utils, 'get_keypair')
|
||||
nova_utils.get_keypair(n_cli_mock, keypair_input).MultipleTimes().\
|
||||
|
@ -196,8 +196,8 @@ class ServersTest(HeatTestCase):
|
|||
def _server_validate_mock(self, server):
|
||||
self.m.StubOutWithMock(server, 'nova')
|
||||
server.nova().MultipleTimes().AndReturn(self.fc)
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, 'nova')
|
||||
clients.OpenStackClients.nova().MultipleTimes().AndReturn(self.fc)
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, '_nova')
|
||||
clients.OpenStackClients._nova().MultipleTimes().AndReturn(self.fc)
|
||||
self._mock_get_image_id_success('F17-x86_64-gold', 'image_id')
|
||||
|
||||
def test_server_create(self):
|
||||
|
@ -278,8 +278,8 @@ class ServersTest(HeatTestCase):
|
|||
|
||||
self.m.StubOutWithMock(server, 'nova')
|
||||
server.nova().MultipleTimes().AndReturn(self.fc)
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, 'nova')
|
||||
clients.OpenStackClients.nova().MultipleTimes().AndReturn(self.fc)
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, '_nova')
|
||||
clients.OpenStackClients._nova().MultipleTimes().AndReturn(self.fc)
|
||||
self._mock_get_image_id_success('F17-x86_64-gold', image_id)
|
||||
self.m.ReplayAll()
|
||||
|
||||
|
@ -457,8 +457,8 @@ class ServersTest(HeatTestCase):
|
|||
|
||||
self.m.StubOutWithMock(server, 'nova')
|
||||
server.nova().MultipleTimes().AndReturn(self.fc)
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, 'nova')
|
||||
clients.OpenStackClients.nova().MultipleTimes().AndReturn(self.fc)
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, '_nova')
|
||||
clients.OpenStackClients._nova().MultipleTimes().AndReturn(self.fc)
|
||||
self._mock_get_image_id_success('F17-x86_64-gold', 744)
|
||||
|
||||
self.m.StubOutWithMock(self.fc.servers, 'create')
|
||||
|
@ -500,8 +500,8 @@ class ServersTest(HeatTestCase):
|
|||
'wordpress from config')
|
||||
|
||||
server.nova().MultipleTimes().AndReturn(self.fc)
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, 'nova')
|
||||
clients.OpenStackClients.nova().MultipleTimes().AndReturn(self.fc)
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, '_nova')
|
||||
clients.OpenStackClients._nova().MultipleTimes().AndReturn(self.fc)
|
||||
self._mock_get_image_id_success('F17-x86_64-gold', 744)
|
||||
|
||||
self.m.StubOutWithMock(self.fc.servers, 'create')
|
||||
|
@ -543,8 +543,8 @@ class ServersTest(HeatTestCase):
|
|||
software_config_id=sc_id))
|
||||
|
||||
server.nova().MultipleTimes().AndReturn(self.fc)
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, 'nova')
|
||||
clients.OpenStackClients.nova().MultipleTimes().AndReturn(self.fc)
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, '_nova')
|
||||
clients.OpenStackClients._nova().MultipleTimes().AndReturn(self.fc)
|
||||
self._mock_get_image_id_success('F17-x86_64-gold', 744)
|
||||
|
||||
self.m.StubOutWithMock(self.fc.servers, 'create')
|
||||
|
@ -580,8 +580,8 @@ class ServersTest(HeatTestCase):
|
|||
self.m.StubOutWithMock(server, 'heat')
|
||||
|
||||
server.nova().MultipleTimes().AndReturn(self.fc)
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, 'nova')
|
||||
clients.OpenStackClients.nova().MultipleTimes().AndReturn(self.fc)
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, '_nova')
|
||||
clients.OpenStackClients._nova().MultipleTimes().AndReturn(self.fc)
|
||||
self._mock_get_image_id_success('F17-x86_64-gold', 744)
|
||||
|
||||
self.m.StubOutWithMock(self.fc.servers, 'create')
|
||||
|
@ -644,8 +644,8 @@ class ServersTest(HeatTestCase):
|
|||
self.m.StubOutWithMock(server, 'nova')
|
||||
|
||||
server.nova().MultipleTimes().AndReturn(self.fc)
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, 'nova')
|
||||
clients.OpenStackClients.nova().MultipleTimes().AndReturn(self.fc)
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, '_nova')
|
||||
clients.OpenStackClients._nova().MultipleTimes().AndReturn(self.fc)
|
||||
self._mock_get_image_id_success('F17-x86_64-gold', 744)
|
||||
|
||||
self.m.StubOutWithMock(self.fc.servers, 'create')
|
||||
|
@ -693,7 +693,7 @@ class ServersTest(HeatTestCase):
|
|||
|
||||
self.m.VerifyAll()
|
||||
|
||||
@mock.patch.object(clients.OpenStackClients, 'nova')
|
||||
@mock.patch.object(clients.OpenStackClients, '_nova')
|
||||
def test_server_create_default_admin_pass(self, mock_nova):
|
||||
return_server = self.fc.servers.list()[1]
|
||||
return_server.adminPass = 'autogenerated'
|
||||
|
@ -719,7 +719,7 @@ class ServersTest(HeatTestCase):
|
|||
disk_config=None, reservation_id=None,
|
||||
files={}, admin_pass=None)
|
||||
|
||||
@mock.patch.object(clients.OpenStackClients, 'nova')
|
||||
@mock.patch.object(clients.OpenStackClients, '_nova')
|
||||
def test_server_create_custom_admin_pass(self, mock_nova):
|
||||
return_server = self.fc.servers.list()[1]
|
||||
return_server.adminPass = 'foo'
|
||||
|
@ -764,8 +764,8 @@ class ServersTest(HeatTestCase):
|
|||
server = servers.Server('server_create_image',
|
||||
resource_defns['WebServer'], stack)
|
||||
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, 'nova')
|
||||
clients.OpenStackClients.nova().MultipleTimes().AndReturn(self.fc)
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, '_nova')
|
||||
clients.OpenStackClients._nova().MultipleTimes().AndReturn(self.fc)
|
||||
self._mock_get_image_id_success('1', 1)
|
||||
|
||||
self.m.ReplayAll()
|
||||
|
@ -795,8 +795,8 @@ class ServersTest(HeatTestCase):
|
|||
if mock_nova:
|
||||
self.m.StubOutWithMock(server, 'nova')
|
||||
server.nova().MultipleTimes().AndReturn(self.fc)
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, 'nova')
|
||||
clients.OpenStackClients.nova().MultipleTimes().AndReturn(self.fc)
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, '_nova')
|
||||
clients.OpenStackClients._nova().MultipleTimes().AndReturn(self.fc)
|
||||
self.m.ReplayAll()
|
||||
return server
|
||||
|
||||
|
@ -869,8 +869,8 @@ class ServersTest(HeatTestCase):
|
|||
server = servers.Server('WebServer',
|
||||
resource_defns['WebServer'], stack)
|
||||
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, 'nova')
|
||||
clients.OpenStackClients.nova().MultipleTimes().AndReturn(self.fc)
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, '_nova')
|
||||
clients.OpenStackClients._nova().MultipleTimes().AndReturn(self.fc)
|
||||
self.m.ReplayAll()
|
||||
|
||||
error = self.assertRaises(exception.StackValidationFailed,
|
||||
|
@ -895,8 +895,8 @@ class ServersTest(HeatTestCase):
|
|||
server = servers.Server('server_validate_with_networks',
|
||||
resource_defns['WebServer'], stack)
|
||||
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, 'nova')
|
||||
clients.OpenStackClients.nova().MultipleTimes().AndReturn(self.fc)
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, '_nova')
|
||||
clients.OpenStackClients._nova().MultipleTimes().AndReturn(self.fc)
|
||||
self._mock_get_image_id_success('F17-x86_64-gold', 'image_id')
|
||||
|
||||
self.m.ReplayAll()
|
||||
|
@ -928,8 +928,8 @@ class ServersTest(HeatTestCase):
|
|||
|
||||
self.m.StubOutWithMock(server, 'nova')
|
||||
server.nova().MultipleTimes().AndReturn(self.fc)
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, 'nova')
|
||||
clients.OpenStackClients.nova().MultipleTimes().AndReturn(self.fc)
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, '_nova')
|
||||
clients.OpenStackClients._nova().MultipleTimes().AndReturn(self.fc)
|
||||
|
||||
self._mock_get_image_id_success('F17-x86_64-gold', 'image_id')
|
||||
self.m.ReplayAll()
|
||||
|
@ -1068,8 +1068,8 @@ class ServersTest(HeatTestCase):
|
|||
# part two change the metadata (test removing the old key)
|
||||
self.m.StubOutWithMock(server, 'nova')
|
||||
server.nova().MultipleTimes().AndReturn(self.fc)
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, 'nova')
|
||||
clients.OpenStackClients.nova().MultipleTimes().AndReturn(self.fc)
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, '_nova')
|
||||
clients.OpenStackClients._nova().MultipleTimes().AndReturn(self.fc)
|
||||
self.m.ReplayAll()
|
||||
new_meta = {'new_key': 'yeah'}
|
||||
|
||||
|
@ -1182,8 +1182,8 @@ class ServersTest(HeatTestCase):
|
|||
def test_server_update_server_flavor_replace(self):
|
||||
stack_name = 'update_flvrep'
|
||||
(tmpl, stack) = self._setup_test_stack(stack_name)
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, 'nova')
|
||||
clients.OpenStackClients.nova().MultipleTimes().AndReturn(self.fc)
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, '_nova')
|
||||
clients.OpenStackClients._nova().MultipleTimes().AndReturn(self.fc)
|
||||
self._mock_get_image_id_success('F17-x86_64-gold', 'image_id')
|
||||
self.m.ReplayAll()
|
||||
|
||||
|
@ -1201,8 +1201,8 @@ class ServersTest(HeatTestCase):
|
|||
def test_server_update_server_flavor_policy_update(self):
|
||||
stack_name = 'update_flvpol'
|
||||
(tmpl, stack) = self._setup_test_stack(stack_name)
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, 'nova')
|
||||
clients.OpenStackClients.nova().MultipleTimes().AndReturn(self.fc)
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, '_nova')
|
||||
clients.OpenStackClients._nova().MultipleTimes().AndReturn(self.fc)
|
||||
self._mock_get_image_id_success('F17-x86_64-gold', 'image_id')
|
||||
self.m.ReplayAll()
|
||||
|
||||
|
@ -1229,8 +1229,8 @@ class ServersTest(HeatTestCase):
|
|||
server = servers.Server('server_update_image_replace',
|
||||
resource_defns['WebServer'], stack)
|
||||
image_id = self.getUniqueString()
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, 'nova')
|
||||
clients.OpenStackClients.nova().MultipleTimes().AndReturn(self.fc)
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, '_nova')
|
||||
clients.OpenStackClients._nova().MultipleTimes().AndReturn(self.fc)
|
||||
self.m.StubOutWithMock(image.ImageConstraint, "validate")
|
||||
image.ImageConstraint.validate(
|
||||
mox.IgnoreArg(), mox.IgnoreArg()).MultipleTimes().AndReturn(True)
|
||||
|
@ -1762,8 +1762,8 @@ class ServersTest(HeatTestCase):
|
|||
resource_defns = tmpl.resource_definitions(stack)
|
||||
server = servers.Server('server_create_image_err',
|
||||
resource_defns['WebServer'], stack)
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, 'nova')
|
||||
clients.OpenStackClients.nova().MultipleTimes().AndReturn(self.fc)
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, '_nova')
|
||||
clients.OpenStackClients._nova().MultipleTimes().AndReturn(self.fc)
|
||||
self._mock_get_image_id_success('F17-x86_64-gold', 'image_id')
|
||||
self.m.ReplayAll()
|
||||
|
||||
|
@ -1781,8 +1781,8 @@ class ServersTest(HeatTestCase):
|
|||
resource_defns = tmpl.resource_definitions(stack)
|
||||
server = servers.Server('server_create_image_err',
|
||||
resource_defns['WebServer'], stack)
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, 'nova')
|
||||
clients.OpenStackClients.nova().MultipleTimes().AndReturn(self.fc)
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, '_nova')
|
||||
clients.OpenStackClients._nova().MultipleTimes().AndReturn(self.fc)
|
||||
self._mock_get_image_id_success('F17-x86_64-gold', 'image_id')
|
||||
self.m.ReplayAll()
|
||||
|
||||
|
@ -1805,8 +1805,8 @@ class ServersTest(HeatTestCase):
|
|||
resource_defns = tmpl.resource_definitions(stack)
|
||||
server = servers.Server('server_create_image_err',
|
||||
resource_defns['WebServer'], stack)
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, 'nova')
|
||||
clients.OpenStackClients.nova().MultipleTimes().AndReturn(self.fc)
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, '_nova')
|
||||
clients.OpenStackClients._nova().MultipleTimes().AndReturn(self.fc)
|
||||
self.m.ReplayAll()
|
||||
|
||||
ex = self.assertRaises(exception.StackValidationFailed,
|
||||
|
@ -1834,8 +1834,8 @@ class ServersTest(HeatTestCase):
|
|||
|
||||
self.m.StubOutWithMock(server, 'nova')
|
||||
server.nova().MultipleTimes().AndReturn(self.fc)
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, 'nova')
|
||||
clients.OpenStackClients.nova().MultipleTimes().AndReturn(self.fc)
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, '_nova')
|
||||
clients.OpenStackClients._nova().MultipleTimes().AndReturn(self.fc)
|
||||
self._mock_get_image_id_success('F17-x86_64-gold', 'image_id')
|
||||
self.m.ReplayAll()
|
||||
|
||||
|
@ -1861,8 +1861,8 @@ class ServersTest(HeatTestCase):
|
|||
|
||||
self.m.StubOutWithMock(server, 'nova')
|
||||
server.nova().MultipleTimes().AndReturn(self.fc)
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, 'nova')
|
||||
clients.OpenStackClients.nova().MultipleTimes().AndReturn(self.fc)
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, '_nova')
|
||||
clients.OpenStackClients._nova().MultipleTimes().AndReturn(self.fc)
|
||||
self._mock_get_image_id_success('F17-x86_64-gold', 'image_id')
|
||||
self.m.ReplayAll()
|
||||
self.assertIsNone(server.validate())
|
||||
|
@ -1888,8 +1888,8 @@ class ServersTest(HeatTestCase):
|
|||
|
||||
self.m.StubOutWithMock(server, 'nova')
|
||||
server.nova().MultipleTimes().AndReturn(self.fc)
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, 'nova')
|
||||
clients.OpenStackClients.nova().MultipleTimes().AndReturn(self.fc)
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, '_nova')
|
||||
clients.OpenStackClients._nova().MultipleTimes().AndReturn(self.fc)
|
||||
self._mock_get_image_id_success('F17-x86_64-gold', 'image_id')
|
||||
self.m.ReplayAll()
|
||||
|
||||
|
@ -1918,8 +1918,8 @@ class ServersTest(HeatTestCase):
|
|||
|
||||
self.m.StubOutWithMock(server, 'nova')
|
||||
server.nova().MultipleTimes().AndReturn(self.fc)
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, 'nova')
|
||||
clients.OpenStackClients.nova().MultipleTimes().AndReturn(self.fc)
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, '_nova')
|
||||
clients.OpenStackClients._nova().MultipleTimes().AndReturn(self.fc)
|
||||
self._mock_get_image_id_success('F17-x86_64-gold', 'image_id')
|
||||
self.m.ReplayAll()
|
||||
|
||||
|
@ -1941,8 +1941,8 @@ class ServersTest(HeatTestCase):
|
|||
|
||||
self.m.StubOutWithMock(server, 'nova')
|
||||
server.nova().MultipleTimes().AndReturn(self.fc)
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, 'nova')
|
||||
clients.OpenStackClients.nova().MultipleTimes().AndReturn(self.fc)
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, '_nova')
|
||||
clients.OpenStackClients._nova().MultipleTimes().AndReturn(self.fc)
|
||||
self._mock_get_image_id_success('F17-x86_64-gold', 'image_id')
|
||||
self.m.ReplayAll()
|
||||
|
||||
|
@ -1964,8 +1964,8 @@ class ServersTest(HeatTestCase):
|
|||
|
||||
self.m.StubOutWithMock(server, 'nova')
|
||||
server.nova().MultipleTimes().AndReturn(self.fc)
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, 'nova')
|
||||
clients.OpenStackClients.nova().MultipleTimes().AndReturn(self.fc)
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, '_nova')
|
||||
clients.OpenStackClients._nova().MultipleTimes().AndReturn(self.fc)
|
||||
self._mock_get_image_id_success('F17-x86_64-gold', 'image_id')
|
||||
self.m.ReplayAll()
|
||||
|
||||
|
@ -2032,8 +2032,8 @@ class ServersTest(HeatTestCase):
|
|||
admin_pass=None).AndReturn(return_server)
|
||||
self.m.StubOutWithMock(server, 'nova')
|
||||
server.nova().MultipleTimes().AndReturn(self.fc)
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, 'nova')
|
||||
clients.OpenStackClients.nova().MultipleTimes().AndReturn(self.fc)
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, '_nova')
|
||||
clients.OpenStackClients._nova().MultipleTimes().AndReturn(self.fc)
|
||||
self._mock_get_image_id_success('F17-x86_64-gold', image_id)
|
||||
self.m.StubOutWithMock(nova_utils, 'build_userdata')
|
||||
nova_utils.build_userdata(server,
|
||||
|
@ -2536,8 +2536,8 @@ class FlavorConstraintTest(HeatTestCase):
|
|||
def test_validate(self):
|
||||
client = fakes.FakeClient()
|
||||
self.stub_keystoneclient()
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, 'nova')
|
||||
clients.OpenStackClients.nova().MultipleTimes().AndReturn(client)
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, '_nova')
|
||||
clients.OpenStackClients._nova().MultipleTimes().AndReturn(client)
|
||||
client.flavors = self.m.CreateMockAnything()
|
||||
|
||||
flavor = collections.namedtuple("Flavor", ["id", "name"])
|
||||
|
|
|
@ -132,8 +132,8 @@ class ServerTagsTest(HeatTestCase):
|
|||
|
||||
def _mock_get_image_id_success(self, imageId_input, imageId):
|
||||
g_cli_mock = self.m.CreateMockAnything()
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, 'glance')
|
||||
clients.OpenStackClients.glance().MultipleTimes().AndReturn(
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, '_glance')
|
||||
clients.OpenStackClients._glance().MultipleTimes().AndReturn(
|
||||
g_cli_mock)
|
||||
self.m.StubOutWithMock(glance_utils, 'get_image_id')
|
||||
glance_utils.get_image_id(g_cli_mock, imageId_input).MultipleTimes().\
|
||||
|
@ -154,8 +154,8 @@ class ServerTagsTest(HeatTestCase):
|
|||
|
||||
self.m.StubOutWithMock(instance, 'nova')
|
||||
instance.nova().MultipleTimes().AndReturn(self.fc)
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, 'nova')
|
||||
clients.OpenStackClients.nova().MultipleTimes().AndReturn(self.fc)
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, '_nova')
|
||||
clients.OpenStackClients._nova().MultipleTimes().AndReturn(self.fc)
|
||||
self._mock_get_image_id_success('CentOS 5.2', 1)
|
||||
# need to resolve the template functions
|
||||
server_userdata = nova_utils.build_userdata(
|
||||
|
@ -208,8 +208,8 @@ class ServerTagsTest(HeatTestCase):
|
|||
|
||||
self.m.StubOutWithMock(instance, 'nova')
|
||||
instance.nova().MultipleTimes().AndReturn(self.fc)
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, 'nova')
|
||||
clients.OpenStackClients.nova().MultipleTimes().AndReturn(self.fc)
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, '_nova')
|
||||
clients.OpenStackClients._nova().MultipleTimes().AndReturn(self.fc)
|
||||
self.m.StubOutWithMock(self.fc.servers, 'set_meta')
|
||||
self.fc.servers.set_meta(self.fc.servers.list()[1],
|
||||
new_metadata).AndReturn(None)
|
||||
|
@ -244,8 +244,8 @@ class ServerTagsTest(HeatTestCase):
|
|||
|
||||
self.m.StubOutWithMock(instances.Instance, 'nova')
|
||||
instances.Instance.nova().MultipleTimes().AndReturn(self.fc)
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, 'nova')
|
||||
clients.OpenStackClients.nova().MultipleTimes().AndReturn(self.fc)
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, '_nova')
|
||||
clients.OpenStackClients._nova().MultipleTimes().AndReturn(self.fc)
|
||||
self._mock_get_image_id_success('CentOS 5.2', 1)
|
||||
# need to resolve the template functions
|
||||
self.m.StubOutWithMock(self.fc.servers, 'create')
|
||||
|
@ -295,8 +295,8 @@ class ServerTagsTest(HeatTestCase):
|
|||
|
||||
self.m.StubOutWithMock(instances.Instance, 'nova')
|
||||
instances.Instance.nova().MultipleTimes().AndReturn(self.fc)
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, 'nova')
|
||||
clients.OpenStackClients.nova().MultipleTimes().AndReturn(self.fc)
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, '_nova')
|
||||
clients.OpenStackClients._nova().MultipleTimes().AndReturn(self.fc)
|
||||
self._mock_get_image_id_success('CentOS 5.2', 1)
|
||||
# need to resolve the template functions
|
||||
self.m.StubOutWithMock(self.fc.servers, 'create')
|
||||
|
|
|
@ -216,8 +216,8 @@ class SignalTest(HeatTestCase):
|
|||
def delete_stack_user(self, name):
|
||||
raise kc_exceptions.NotFound()
|
||||
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, 'keystone')
|
||||
clients.OpenStackClients.keystone().MultipleTimes().AndReturn(
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, '_keystone')
|
||||
clients.OpenStackClients._keystone().AndReturn(
|
||||
FakeKeystoneClientFail())
|
||||
self.m.ReplayAll()
|
||||
|
||||
|
@ -313,8 +313,8 @@ class SignalTest(HeatTestCase):
|
|||
# test isolated from keystoneclient. The unset stubs is done so that we
|
||||
# do not have to mock out all of the deleting that the
|
||||
# stack_delete_after decorator will do during cleanup.
|
||||
self.m.StubOutWithMock(self.stack.clients, 'keystone')
|
||||
self.stack.clients.keystone().AndReturn(self.fc)
|
||||
self.m.StubOutWithMock(self.stack.clients, '_keystone')
|
||||
self.stack.clients._keystone().AndReturn(self.fc)
|
||||
|
||||
self.m.ReplayAll()
|
||||
|
||||
|
|
|
@ -97,8 +97,8 @@ class SqlAlchemyTest(HeatTestCase):
|
|||
|
||||
def _mock_get_image_id_success(self, imageId_input, imageId):
|
||||
g_cli_mock = self.m.CreateMockAnything()
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, 'glance')
|
||||
clients.OpenStackClients.glance().MultipleTimes().AndReturn(
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, '_glance')
|
||||
clients.OpenStackClients._glance().MultipleTimes().AndReturn(
|
||||
g_cli_mock)
|
||||
self.m.StubOutWithMock(glance_utils, 'get_image_id')
|
||||
glance_utils.get_image_id(g_cli_mock, imageId_input).MultipleTimes().\
|
||||
|
@ -121,8 +121,8 @@ class SqlAlchemyTest(HeatTestCase):
|
|||
fc = fakes.FakeClient()
|
||||
mocks.StubOutWithMock(instances.Instance, 'nova')
|
||||
instances.Instance.nova().MultipleTimes().AndReturn(fc)
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, 'nova')
|
||||
clients.OpenStackClients.nova().MultipleTimes().AndReturn(self.fc)
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, '_nova')
|
||||
clients.OpenStackClients._nova().MultipleTimes().AndReturn(self.fc)
|
||||
self._mock_get_image_id_success('F17-x86_64-gold', 744)
|
||||
|
||||
mocks.StubOutWithMock(fc.servers, 'create')
|
||||
|
|
|
@ -819,8 +819,8 @@ class validateTest(HeatTestCase):
|
|||
|
||||
def _mock_get_image_id_success(self, imageId_input, imageId):
|
||||
g_cli_mock = self.m.CreateMockAnything()
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, 'glance')
|
||||
clients.OpenStackClients.glance().MultipleTimes().AndReturn(
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, '_glance')
|
||||
clients.OpenStackClients._glance().MultipleTimes().AndReturn(
|
||||
g_cli_mock)
|
||||
self.m.StubOutWithMock(glance_utils, 'get_image_id')
|
||||
glance_utils.get_image_id(g_cli_mock, imageId_input).MultipleTimes().\
|
||||
|
@ -828,8 +828,8 @@ class validateTest(HeatTestCase):
|
|||
|
||||
def _mock_get_image_id_fail(self, image_id, exp):
|
||||
g_cli_mock = self.m.CreateMockAnything()
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, 'glance')
|
||||
clients.OpenStackClients.glance().MultipleTimes().AndReturn(
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, '_glance')
|
||||
clients.OpenStackClients._glance().MultipleTimes().AndReturn(
|
||||
g_cli_mock)
|
||||
self.m.StubOutWithMock(glance_utils, 'get_image_id')
|
||||
glance_utils.get_image_id(g_cli_mock, image_id).AndRaise(exp)
|
||||
|
@ -1267,8 +1267,8 @@ class validateTest(HeatTestCase):
|
|||
|
||||
self._mock_get_image_id_success('image_name', 'image_id')
|
||||
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, 'nova')
|
||||
clients.OpenStackClients.nova().MultipleTimes().AndReturn(self.fc)
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, '_nova')
|
||||
clients.OpenStackClients._nova().MultipleTimes().AndReturn(self.fc)
|
||||
self.m.ReplayAll()
|
||||
|
||||
resource = stack['Instance']
|
||||
|
@ -1284,8 +1284,8 @@ class validateTest(HeatTestCase):
|
|||
|
||||
self._mock_get_image_id_success('image_name', 'image_id')
|
||||
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, 'nova')
|
||||
clients.OpenStackClients.nova().MultipleTimes().AndReturn(self.fc)
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, '_nova')
|
||||
clients.OpenStackClients._nova().MultipleTimes().AndReturn(self.fc)
|
||||
self.m.ReplayAll()
|
||||
|
||||
resource = stack['Instance']
|
||||
|
@ -1301,8 +1301,8 @@ class validateTest(HeatTestCase):
|
|||
self.m.StubOutWithMock(self.gc.images, 'list')
|
||||
self.gc.images.list().AndRaise(
|
||||
g_exc.ClientException(500))
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, 'glance')
|
||||
clients.OpenStackClients.glance().MultipleTimes().AndReturn(self.gc)
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, '_glance')
|
||||
clients.OpenStackClients._glance().MultipleTimes().AndReturn(self.gc)
|
||||
self.m.ReplayAll()
|
||||
|
||||
self.assertRaises(exception.StackValidationFailed, stack.validate)
|
||||
|
|
|
@ -100,8 +100,8 @@ class VolumeTest(HeatTestCase):
|
|||
super(VolumeTest, self).setUp()
|
||||
self.fc = fakes.FakeClient()
|
||||
self.cinder_fc = cinderclient.Client('username', 'password')
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, 'cinder')
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, 'nova')
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, '_cinder')
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, '_nova')
|
||||
self.m.StubOutWithMock(self.cinder_fc.volumes, 'create')
|
||||
self.m.StubOutWithMock(self.cinder_fc.volumes, 'get')
|
||||
self.m.StubOutWithMock(self.cinder_fc.volumes, 'delete')
|
||||
|
@ -144,7 +144,7 @@ class VolumeTest(HeatTestCase):
|
|||
return rsrc
|
||||
|
||||
def _mock_create_volume(self, fv, stack_name, size=1):
|
||||
clients.OpenStackClients.cinder().MultipleTimes().AndReturn(
|
||||
clients.OpenStackClients._cinder().MultipleTimes().AndReturn(
|
||||
self.cinder_fc)
|
||||
vol_name = utils.PhysName(stack_name, 'DataVolume')
|
||||
self.cinder_fc.volumes.create(
|
||||
|
@ -168,7 +168,7 @@ class VolumeTest(HeatTestCase):
|
|||
device=u'/dev/vdc',
|
||||
update=False):
|
||||
if not update:
|
||||
clients.OpenStackClients.nova().MultipleTimes().AndReturn(self.fc)
|
||||
clients.OpenStackClients._nova().MultipleTimes().AndReturn(self.fc)
|
||||
self.fc.volumes.create_server_volume(
|
||||
device=device, server_id=server, volume_id=volume).AndReturn(fva)
|
||||
self.cinder_fc.volumes.get(volume).AndReturn(fva)
|
||||
|
@ -211,7 +211,7 @@ class VolumeTest(HeatTestCase):
|
|||
stack_name = 'test_volume_stack'
|
||||
|
||||
# create script
|
||||
clients.OpenStackClients.nova().MultipleTimes().AndReturn(self.fc)
|
||||
clients.OpenStackClients._nova().MultipleTimes().AndReturn(self.fc)
|
||||
self.m.StubOutWithMock(instance.Instance, 'handle_create')
|
||||
self.m.StubOutWithMock(instance.Instance, 'check_create_complete')
|
||||
self.m.StubOutWithMock(vol.VolumeAttachment, 'handle_create')
|
||||
|
@ -219,7 +219,7 @@ class VolumeTest(HeatTestCase):
|
|||
self.m.StubOutWithMock(image.ImageConstraint, "validate")
|
||||
instance.Instance.handle_create().AndReturn(None)
|
||||
instance.Instance.check_create_complete(None).AndReturn(True)
|
||||
clients.OpenStackClients.cinder().MultipleTimes().AndReturn(
|
||||
clients.OpenStackClients._cinder().MultipleTimes().AndReturn(
|
||||
self.cinder_fc)
|
||||
image.ImageConstraint.validate(
|
||||
mox.IgnoreArg(), mox.IgnoreArg()).MultipleTimes().AndReturn(True)
|
||||
|
@ -764,7 +764,7 @@ class VolumeTest(HeatTestCase):
|
|||
fvbr = FakeBackupRestore('vol-123')
|
||||
|
||||
# create script
|
||||
clients.OpenStackClients.cinder().MultipleTimes().AndReturn(
|
||||
clients.OpenStackClients._cinder().MultipleTimes().AndReturn(
|
||||
self.cinder_fc)
|
||||
self.m.StubOutWithMock(self.cinder_fc.restores, 'restore')
|
||||
self.cinder_fc.restores.restore('backup-123').AndReturn(fvbr)
|
||||
|
@ -793,7 +793,7 @@ class VolumeTest(HeatTestCase):
|
|||
fvbr = FakeBackupRestore('vol-123')
|
||||
|
||||
# create script
|
||||
clients.OpenStackClients.cinder().MultipleTimes().AndReturn(
|
||||
clients.OpenStackClients._cinder().MultipleTimes().AndReturn(
|
||||
self.cinder_fc)
|
||||
self.m.StubOutWithMock(self.cinder_fc.restores, 'restore')
|
||||
self.cinder_fc.restores.restore('backup-123').AndReturn(fvbr)
|
||||
|
@ -824,7 +824,7 @@ class VolumeTest(HeatTestCase):
|
|||
fv = FakeVolume('creating', 'available')
|
||||
stack_name = 'test_volume_stack'
|
||||
|
||||
clients.OpenStackClients.cinder().MultipleTimes().AndReturn(
|
||||
clients.OpenStackClients._cinder().MultipleTimes().AndReturn(
|
||||
self.cinder_fc)
|
||||
self.cinder_fc.volumes.create(
|
||||
size=1, availability_zone='nova',
|
||||
|
@ -896,11 +896,11 @@ class VolumeTest(HeatTestCase):
|
|||
fv = FakeVolumeWithStateTransition('downloading', 'available')
|
||||
stack_name = 'test_volume_stack'
|
||||
image_id = '46988116-6703-4623-9dbc-2bc6d284021b'
|
||||
clients.OpenStackClients.cinder().MultipleTimes().AndReturn(
|
||||
clients.OpenStackClients._cinder().MultipleTimes().AndReturn(
|
||||
self.cinder_fc)
|
||||
g_cli_mock = self.m.CreateMockAnything()
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, 'glance')
|
||||
clients.OpenStackClients.glance().MultipleTimes().AndReturn(
|
||||
self.m.StubOutWithMock(clients.OpenStackClients, '_glance')
|
||||
clients.OpenStackClients._glance().MultipleTimes().AndReturn(
|
||||
g_cli_mock)
|
||||
self.m.StubOutWithMock(glance_utils, 'get_image_id')
|
||||
glance_utils.get_image_id(g_cli_mock, image_id).MultipleTimes().\
|
||||
|
@ -939,7 +939,7 @@ class VolumeTest(HeatTestCase):
|
|||
fv = FakeVolume('creating', 'available')
|
||||
stack_name = 'test_volume_stack'
|
||||
|
||||
clients.OpenStackClients.cinder().MultipleTimes().AndReturn(
|
||||
clients.OpenStackClients._cinder().MultipleTimes().AndReturn(
|
||||
self.cinder_fc)
|
||||
vol_name = utils.PhysName(stack_name, 'DataVolume')
|
||||
self.cinder_fc.volumes.create(
|
||||
|
@ -976,7 +976,7 @@ class VolumeTest(HeatTestCase):
|
|||
created_at='2013-02-25T02:40:21.000000')
|
||||
stack_name = 'test_volume_stack'
|
||||
|
||||
clients.OpenStackClients.cinder().MultipleTimes().AndReturn(
|
||||
clients.OpenStackClients._cinder().MultipleTimes().AndReturn(
|
||||
self.cinder_fc)
|
||||
vol_name = utils.PhysName(stack_name, 'DataVolume')
|
||||
self.cinder_fc.volumes.create(
|
||||
|
@ -1263,7 +1263,7 @@ class VolumeTest(HeatTestCase):
|
|||
fvbr = FakeBackupRestore('vol-123')
|
||||
|
||||
# create script
|
||||
clients.OpenStackClients.cinder().MultipleTimes().AndReturn(
|
||||
clients.OpenStackClients._cinder().MultipleTimes().AndReturn(
|
||||
self.cinder_fc)
|
||||
self.m.StubOutWithMock(self.cinder_fc.restores, 'restore')
|
||||
self.cinder_fc.restores.restore('backup-123').AndReturn(fvbr)
|
||||
|
@ -1311,7 +1311,7 @@ class VolumeTest(HeatTestCase):
|
|||
'display_description': update_description
|
||||
}
|
||||
|
||||
clients.OpenStackClients.cinder().MultipleTimes().AndReturn(
|
||||
clients.OpenStackClients._cinder().MultipleTimes().AndReturn(
|
||||
self.cinder_fc)
|
||||
self.cinder_fc.volumes.create(
|
||||
availability_zone=None,
|
||||
|
|
Loading…
Reference in New Issue