From 21a4a6f64cabb7199f302357d42745a5accc1352 Mon Sep 17 00:00:00 2001 From: Neetu Jain Date: Wed, 28 Jan 2015 14:46:46 -0600 Subject: [PATCH 1/4] VSManager should be not referred now since SL-api has changed it to VSManager --- jumpgate/compute/drivers/sl/availability_zones.py | 2 +- jumpgate/compute/drivers/sl/server_ips.py | 4 ++-- jumpgate/compute/drivers/sl/servers.py | 14 +++++++------- jumpgate/compute/drivers/sl/usage.py | 2 +- .../compute/test_availability_zones.py | 2 +- tests/jumpgate-tests/compute/test_servers.py | 10 +++++----- 6 files changed, 17 insertions(+), 17 deletions(-) diff --git a/jumpgate/compute/drivers/sl/availability_zones.py b/jumpgate/compute/drivers/sl/availability_zones.py index a2d43f9..d454b46 100644 --- a/jumpgate/compute/drivers/sl/availability_zones.py +++ b/jumpgate/compute/drivers/sl/availability_zones.py @@ -7,7 +7,7 @@ class AvailabilityZonesV2(object): def on_get(self, req, resp, tenant_id): client = req.env['sl_client'] - cci = SoftLayer.CCIManager(client) + cci = SoftLayer.VSManager(client) all_options = cci.get_create_options() diff --git a/jumpgate/compute/drivers/sl/server_ips.py b/jumpgate/compute/drivers/sl/server_ips.py index 0f8f7a5..dd9febd 100644 --- a/jumpgate/compute/drivers/sl/server_ips.py +++ b/jumpgate/compute/drivers/sl/server_ips.py @@ -6,7 +6,7 @@ class ServerIpsV2(object): def on_get(self, req, resp, tenant_id, server_id): client = req.env['sl_client'] - cci = SoftLayer.CCIManager(client) + cci = SoftLayer.VSManager(client) instance = cci.get_instance( server_id, mask='id, primaryIpAddress, primaryBackendIpAddress') @@ -41,7 +41,7 @@ def on_get(self, req, resp, tenant_id, server_id, network_label): message='Network does not exist') client = req.env['sl_client'] - cci = SoftLayer.CCIManager(client) + cci = SoftLayer.VSManager(client) instance = cci.get_instance(server_id, mask='id, ' + network_mask) resp.body = { diff --git a/jumpgate/compute/drivers/sl/servers.py b/jumpgate/compute/drivers/sl/servers.py index bd629d2..3d38c10 100644 --- a/jumpgate/compute/drivers/sl/servers.py +++ b/jumpgate/compute/drivers/sl/servers.py @@ -39,7 +39,7 @@ def on_post(self, req, resp, tenant_id, instance_id): message="Malformed request body") vg_client = req.env['sl_client']['Virtual_Guest'] - cci = SoftLayer.CCIManager(req.env['sl_client']) + cci = SoftLayer.VSManager(req.env['sl_client']) try: instance_id = int(instance_id) @@ -151,7 +151,7 @@ def __init__(self, app, flavors): def on_get(self, req, resp, tenant_id): client = req.env['sl_client'] - cci = SoftLayer.CCIManager(client) + cci = SoftLayer.VSManager(client) params = get_list_params(req) @@ -189,7 +189,7 @@ def on_post(self, req, resp, tenant_id): payload['hourly'] = True networks = utils.lookup(body, 'server', 'networks') - cci = SoftLayer.CCIManager(client) + cci = SoftLayer.VSManager(client) try: self._handle_flavor(payload, body) @@ -405,7 +405,7 @@ def __init__(self, app): def on_get(self, req, resp, tenant_id=None): client = req.env['sl_client'] - cci = SoftLayer.CCIManager(client) + cci = SoftLayer.VSManager(client) params = get_list_params(req) @@ -428,7 +428,7 @@ def __init__(self, app): def on_get(self, req, resp, tenant_id, server_id): client = req.env['sl_client'] - cci = SoftLayer.CCIManager(client) + cci = SoftLayer.VSManager(client) instance = cci.get_instance(server_id, mask=get_virtual_guest_mask()) @@ -439,7 +439,7 @@ def on_get(self, req, resp, tenant_id, server_id): def on_delete(self, req, resp, tenant_id, server_id): client = req.env['sl_client'] - cci = SoftLayer.CCIManager(client) + cci = SoftLayer.VSManager(client) try: cci.cancel_instance(server_id) @@ -454,7 +454,7 @@ def on_delete(self, req, resp, tenant_id, server_id): def on_put(self, req, resp, tenant_id, server_id): client = req.env['sl_client'] - cci = SoftLayer.CCIManager(client) + cci = SoftLayer.VSManager(client) body = json.loads(req.stream.read().decode()) if 'name' in utils.lookup(body, 'server'): diff --git a/jumpgate/compute/drivers/sl/usage.py b/jumpgate/compute/drivers/sl/usage.py index 2ebcf26..c5fb49c 100644 --- a/jumpgate/compute/drivers/sl/usage.py +++ b/jumpgate/compute/drivers/sl/usage.py @@ -8,7 +8,7 @@ class UsageV2(object): def on_get(self, req, resp, tenant_id, target_id): client = req.env['sl_client'] - cci = SoftLayer.CCIManager(client) + cci = SoftLayer.VSManager(client) start_time = datetime.datetime.now() + datetime.timedelta(hours=-1) usage = { 'server_usages': [], diff --git a/tests/jumpgate-tests/compute/test_availability_zones.py b/tests/jumpgate-tests/compute/test_availability_zones.py index f111f43..f9fe301 100644 --- a/tests/jumpgate-tests/compute/test_availability_zones.py +++ b/tests/jumpgate-tests/compute/test_availability_zones.py @@ -11,7 +11,7 @@ def setUp(self): self.tenant_id = '1234' self.instance = AvailabilityZonesV2() - @patch('SoftLayer.CCIManager.get_create_options') + @patch('SoftLayer.VSManager.get_create_options') def test_on_get(self, mockOptions): mockOptions.return_value = { 'datacenters': diff --git a/tests/jumpgate-tests/compute/test_servers.py b/tests/jumpgate-tests/compute/test_servers.py index 80955f2..8af7195 100644 --- a/tests/jumpgate-tests/compute/test_servers.py +++ b/tests/jumpgate-tests/compute/test_servers.py @@ -33,7 +33,7 @@ def perform_server_action(self, body_str, tenant_id, flavors=flavors) instance.on_post(self.req, self.resp, tenant_id, instance_id) - @mock.patch('jumpgate.compute.drivers.sl.servers.SoftLayer.CCIManager') + @mock.patch('jumpgate.compute.drivers.sl.servers.SoftLayer.VSManager') def test_on_post_create(self, cciMock): body_str = '{"createImage": {"name": "foobar"}}' self.perform_server_action(body_str, TENANT_ID, @@ -52,7 +52,7 @@ def test_on_post_create(self, cciMock): filter=filterMock, limit=1) self.assertEquals(self.resp.status, 202) - @mock.patch('jumpgate.compute.drivers.sl.servers.SoftLayer.CCIManager') + @mock.patch('jumpgate.compute.drivers.sl.servers.SoftLayer.VSManager') def test_on_post_create_fail(self, cciMock): client, env = get_client_env(body='{"createImage": \ {"name": "foobar"}}') @@ -104,7 +104,7 @@ def test_on_post_reboot_default(self): self.vg_clientMock.rebootDefault.assert_called_with(id=INSTANCE_ID) @mock.patch('jumpgate.compute.drivers.sl.servers.SoftLayer' - '.CCIManager.upgrade') + '.VSManager.upgrade') def test_on_post_resize(self, cciMock): body_str = '{"resize": {"flavorRef": "2"}}' self.perform_server_action(body_str, TENANT_ID, INSTANCE_ID, @@ -155,7 +155,7 @@ def test_on_post_malformed_body(self): class TestServersServersDetailV2(unittest.TestCase): - @mock.patch('SoftLayer.CCIManager.list_instances') + @mock.patch('SoftLayer.VSManager.list_instances') def test_on_get(self, mockListInstance): client, env = get_client_env() href = u'http://localhost:5000/compute/v2/333582/servers/4846014' @@ -251,7 +251,7 @@ class TestServerDetail(unittest.TestCase): in the response, but are specified in the Openstack API reference. Will add later when there is support. ''' - @mock.patch('jumpgate.compute.drivers.sl.servers.SoftLayer.CCIManager' + @mock.patch('jumpgate.compute.drivers.sl.servers.SoftLayer.VSManager' '.get_instance') def perform_server_detail(self, tenant_id, server_id, get_instance_mock): self.client, self.env = get_client_env() From 03ccaaa94df13be82873b9bddc3feb05b72b7684 Mon Sep 17 00:00:00 2001 From: Neetu Jain Date: Wed, 28 Jan 2015 15:59:04 -0600 Subject: [PATCH 2/4] old style class declaration, use new style (inherit from `object`) --- jumpgate/common/hooks/__init__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/jumpgate/common/hooks/__init__.py b/jumpgate/common/hooks/__init__.py index d3c5b65..35bab12 100644 --- a/jumpgate/common/hooks/__init__.py +++ b/jumpgate/common/hooks/__init__.py @@ -9,7 +9,7 @@ class APIHooks(object): # singleton pattern: http://goo.gl/1MtF3B - class __APIHooks: + class __APIHooks(object): def __init__(self): self.reset() From b406472f44e95d372575bb88224fafcf99c59c38 Mon Sep 17 00:00:00 2001 From: Neetu Jain Date: Wed, 28 Jan 2015 16:04:07 -0600 Subject: [PATCH 3/4] new style class http://python-3-patterns-idioms-test.readthedocs.org/en/latest/Singleton.html --- jumpgate/common/hooks/__init__.py | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/jumpgate/common/hooks/__init__.py b/jumpgate/common/hooks/__init__.py index 35bab12..b5e1dbe 100644 --- a/jumpgate/common/hooks/__init__.py +++ b/jumpgate/common/hooks/__init__.py @@ -7,10 +7,8 @@ class APIHooks(object): - # singleton pattern: http://goo.gl/1MtF3B - - class __APIHooks(object): - + class __APIHooks: + # singleton pattern: http://goo.gl/1MtF3 def __init__(self): self.reset() From ebd5c4e717b1495a5f02d43ec55b9bf09ea1902b Mon Sep 17 00:00:00 2001 From: Neetu Jain Date: Thu, 29 Jan 2015 10:13:10 -0600 Subject: [PATCH 4/4] old style class declaration, use new style (inherit from `object`) --- jumpgate/common/hooks/__init__.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/jumpgate/common/hooks/__init__.py b/jumpgate/common/hooks/__init__.py index b5e1dbe..0018549 100644 --- a/jumpgate/common/hooks/__init__.py +++ b/jumpgate/common/hooks/__init__.py @@ -7,8 +7,9 @@ class APIHooks(object): - class __APIHooks: - # singleton pattern: http://goo.gl/1MtF3 + + class __APIHooks(object): + # singleton pattern: http://goo.gl/1MtF3 def __init__(self): self.reset()