From a7b9786f4aa959deec6cdae0e68b7b87402167f5 Mon Sep 17 00:00:00 2001 From: Adam Harwell Date: Mon, 21 Oct 2019 15:41:05 -0700 Subject: [PATCH] Revert "Url quoting of swift object names when deleting" This reverts commit fc73a2e881c09a073c7e247d816ff1eaadbe0e90. Change-Id: I7d0d0d4f6af53dec2cf96e1bbc8de70d5f6c7ba3 --- ospurge/resources/swift.py | 19 +++++-------------- ospurge/tests/resources/test_swift.py | 12 ++++++------ 2 files changed, 11 insertions(+), 20 deletions(-) diff --git a/ospurge/resources/swift.py b/ospurge/resources/swift.py index 76c0666..9df8e4b 100644 --- a/ospurge/resources/swift.py +++ b/ospurge/resources/swift.py @@ -9,9 +9,6 @@ # WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the # License for the specific language governing permissions and limitations # under the License. - -from six.moves import urllib_parse - from ospurge.resources import base from ospurge.resources.base import BaseServiceResource from ospurge.resources import glance @@ -20,9 +17,7 @@ from ospurge.resources import glance class ListObjectsMixin(BaseServiceResource): def list_objects(self): for container in self.cloud.list_containers(): - for obj in self.cloud.list_objects( - urllib_parse.quote(container['name']) - ): + for obj in self.cloud.list_objects(container['name']): obj['container_name'] = container['name'] yield obj @@ -39,10 +34,7 @@ class Objects(base.ServiceResource, glance.ListImagesMixin, ListObjectsMixin): yield item def delete(self, resource): - self.cloud.delete_object( - urllib_parse.quote(resource['container_name']), - urllib_parse.quote(resource['name']) - ) + self.cloud.delete_object(resource['container_name'], resource['name']) @staticmethod def to_str(resource): @@ -60,14 +52,13 @@ class Containers(base.ServiceResource, ListObjectsMixin): return self.cloud.list_containers() def delete(self, resource): - self.cloud.delete_container(urllib_parse.quote(resource['name'])) + self.cloud.delete_container(resource['name']) def disable(self, resource): # There is no disable for the swift container just removing the - # write/read access to the conatianer, so only admin can access + # write/read access to the container, so only admin can access self.cloud.object_store.set_container_metadata( - urllib_parse.quote(resource['name']), - write_acl=None, read_acl=None + resource['name'], write_acl=None, read_acl=None ) @staticmethod diff --git a/ospurge/tests/resources/test_swift.py b/ospurge/tests/resources/test_swift.py index 92c9ea2..6b2894c 100644 --- a/ospurge/tests/resources/test_swift.py +++ b/ospurge/tests/resources/test_swift.py @@ -12,7 +12,6 @@ import unittest import openstack.connection -from six.moves import urllib_parse from ospurge.resources import swift from ospurge.tests import mock @@ -79,14 +78,15 @@ class TestObjects(unittest.TestCase): def test_delete(self): objects = [ {'name': 'toto', 'container_name': 'foo'}, - {'name': 'tata%20foo', 'container_name': 'baz%20bar'}, + {'name': 'tata foo', 'container_name': 'baz bar'}, {'name': 'titi#1', 'container_name': 'bar#2'}, + {'name': 'hihi♫', 'container_name': 'bar♫'}, ] for obj in objects: self.assertIsNone(swift.Objects(self.creds_manager).delete(obj)) self.cloud.delete_object.assert_called_with( - urllib_parse.quote(obj['container_name']), - urllib_parse.quote(obj['name']) + obj['container_name'], + obj['name'] ) def test_disable(self): @@ -130,7 +130,7 @@ class TestContainers(unittest.TestCase): 'name': 'Pouet éêù #'} self.assertIsNone(swift.Containers(self.creds_manager).delete(cont)) self.cloud.delete_container.assert_called_once_with( - urllib_parse.quote(cont['name']) + cont['name'] ) def test_disable(self): @@ -140,7 +140,7 @@ class TestContainers(unittest.TestCase): 'name': 'Pouet éêù #'} self.assertIsNone(swift.Containers(self.creds_manager).disable(cont)) self.cloud.object_store.set_container_metadata.assert_called_once_with( - urllib_parse.quote(cont['name']), + cont['name'], read_acl=None, write_acl=None )