From 14af29bfb1e78d1129f6a70bd27cbb6b8a5e27ce Mon Sep 17 00:00:00 2001 From: Shawn Smith Date: Mon, 12 Dec 2011 15:42:28 -0800 Subject: [PATCH] * Remove raise NotImplementedError() from OpenStack 1.1 driver's ex_save_image function. * Return resp == httplib.ACCEPTED in OpenStack 1.1 driver's ex_save_image function since normal response code for create image in OpenStack 1.1 is 202. * Fix test for OpenStack 1.1 driver's ex_save_image function. --- libcloud/compute/drivers/openstack.py | 5 +---- test/compute/test_openstack.py | 9 +++------ 2 files changed, 4 insertions(+), 10 deletions(-) diff --git libcloud/compute/drivers/openstack.py libcloud/compute/drivers/openstack.py index c69dd23..8883c52 100644 --- libcloud/compute/drivers/openstack.py +++ libcloud/compute/drivers/openstack.py @@ -929,16 +929,13 @@ class OpenStack_1_1_NodeDriver(OpenStackNodeDriver): return resp.status == httplib.ACCEPTED def ex_save_image(self, node, name, metadata=None): - # This has not yet been implemented by OpenStack 1.1 - raise NotImplementedError() - optional_params = {} if metadata: optional_params['metadata'] = metadata resp = self._node_action(node, 'createImage', name=name, **optional_params) # TODO: concevt location header into NodeImage object - return resp.status == httplib.NO_CONTENT + return resp.status == httplib.ACCEPTED def ex_set_server_name(self, node, name): """ diff --git test/compute/test_openstack.py test/compute/test_openstack.py index 1cba608..035b1a3 100644 --- test/compute/test_openstack.py +++ test/compute/test_openstack.py @@ -608,12 +608,9 @@ class OpenStack_1_1_Tests(unittest.TestCase, TestCaseMixin): self.fail('An error was raised: ' + repr(e)) def test_ex_save_image(self): - try: - self.driver.ex_save_image(self.node, 'new_image') - except NotImplementedError: - pass - else: - self.fail('An expected error was not raised') + OpenStackMockHttp.type = 'CREATE_IMAGE_1_1' + result = self.driver.ex_save_image(self.node, 'new_image') + self.assertTrue(result) def test_ex_set_server_name(self): old_node = Node( -- 1.7.4.4