diff --git a/gnocchiclient/tests/functional/test_resource.py b/gnocchiclient/tests/functional/test_resource.py index 3ccfbbe..bfdeae2 100644 --- a/gnocchiclient/tests/functional/test_resource.py +++ b/gnocchiclient/tests/functional/test_resource.py @@ -13,14 +13,11 @@ from oslo_utils import uuidutils from gnocchiclient.tests.functional import base -from gnocchiclient import utils class ResourceClientTest(base.ClientTestBase): RESOURCE_ID = uuidutils.generate_uuid() - RESOURCE_ID2 = uuidutils.generate_uuid() - RAW_RESOURCE_ID2 = uuidutils.generate_uuid() + "/foo" - RESOURCE_ID2 = utils.encode_resource_id(RAW_RESOURCE_ID2) + RESOURCE_ID2 = "foo" PROJECT_ID = uuidutils.generate_uuid() def test_help(self): @@ -123,10 +120,9 @@ class ResourceClientTest(base.ClientTestBase): result = self.gnocchi( 'resource', params=("create %s -t generic " "-a project_id:%s" - ) % (self.RAW_RESOURCE_ID2, self.PROJECT_ID)) + ) % (self.RESOURCE_ID2, self.PROJECT_ID)) resource2 = self.details_multiple(result)[0] - self.assertEqual(self.RESOURCE_ID2, resource2["id"]) - self.assertEqual(self.RAW_RESOURCE_ID2, + self.assertEqual(self.RESOURCE_ID2, resource2["original_resource_id"]) self.assertEqual(self.PROJECT_ID, resource2["project_id"]) self.assertNotEqual('None', resource2["started_at"]) @@ -141,7 +137,8 @@ class ResourceClientTest(base.ClientTestBase): "--limit 1" ) % (self.PROJECT_ID, self.RESOURCE_ID)) resource_limit = self.parser.listing(result)[0] - self.assertEqual(self.RESOURCE_ID2, resource_limit["id"]) + self.assertEqual(self.RESOURCE_ID2, + resource_limit["original_resource_id"]) self.assertEqual(self.PROJECT_ID, resource_limit["project_id"]) self.assertEqual(resource2["started_at"], resource_limit["started_at"]) @@ -180,7 +177,7 @@ class ResourceClientTest(base.ClientTestBase): resource1 = self.details_multiple(result1)[0] resource2 = self.details_multiple(result2)[0] self.assertEqual(self.RESOURCE_ID, resource1['id']) - self.assertEqual(self.RESOURCE_ID2, resource2['id']) + self.assertEqual(self.RESOURCE_ID2, resource2['original_resource_id']) result3 = self.gnocchi( 'resource batch delete ', params=("'id in [%s, %s]' " diff --git a/gnocchiclient/utils.py b/gnocchiclient/utils.py index 4668378..2968ecb 100644 --- a/gnocchiclient/utils.py +++ b/gnocchiclient/utils.py @@ -12,8 +12,6 @@ # License for the specific language governing permissions and limitations # under the License. -import uuid - import pyparsing as pp import six from six.moves.urllib import parse as urllib_parse @@ -217,27 +215,6 @@ def build_pagination_options(details=False, history=False, return "%s" % "&".join(options) -# uuid5 namespace for id transformation. -# NOTE(chdent): This UUID must stay the same, forever, across all -# of gnocchi to preserve its value as a URN namespace. -RESOURCE_ID_NAMESPACE = uuid.UUID('0a7a15ff-aa13-4ac2-897c-9bdf30ce175b') - - -def encode_resource_id(value): - try: - try: - return str(uuid.UUID(value)) - except ValueError: - if len(value) <= 255: - if six.PY2: - value = value.encode('utf-8') - return str(uuid.uuid5(RESOURCE_ID_NAMESPACE, value)) - raise ValueError( - 'transformable resource id >255 max allowed characters') - except Exception as e: - raise ValueError(e) - - def get_client(obj): if hasattr(obj.app, 'client_manager'): # NOTE(sileht): cliff objects loaded by OSC diff --git a/gnocchiclient/v1/metric.py b/gnocchiclient/v1/metric.py index b9ba0ff..c68beba 100644 --- a/gnocchiclient/v1/metric.py +++ b/gnocchiclient/v1/metric.py @@ -64,7 +64,6 @@ class MetricManager(base.Manager): self._ensure_metric_is_uuid(metric) url = self.metric_url + metric else: - resource_id = utils.encode_resource_id(resource_id) url = (self.resource_url % resource_id) + metric return self._get(url).json() @@ -93,7 +92,6 @@ class MetricManager(base.Manager): raise TypeError("metric_name is required if resource_id is set") del metric['resource_id'] - resource_id = utils.encode_resource_id(resource_id) metric = {metric_name: metric} metric = self._post( self.resource_url % resource_id, @@ -114,7 +112,6 @@ class MetricManager(base.Manager): self._ensure_metric_is_uuid(metric) url = self.metric_url + metric else: - resource_id = utils.encode_resource_id(resource_id) url = self.resource_url % resource_id + metric self._delete(url) @@ -133,7 +130,6 @@ class MetricManager(base.Manager): self._ensure_metric_is_uuid(metric) url = self.metric_url + metric + "/measures" else: - resource_id = utils.encode_resource_id(resource_id) url = self.resource_url % resource_id + metric + "/measures" return self._post( url, headers={'Content-Type': "application/json"}, @@ -205,7 +201,6 @@ class MetricManager(base.Manager): self._ensure_metric_is_uuid(metric) url = self.metric_url + metric + "/measures" else: - resource_id = utils.encode_resource_id(resource_id) url = self.resource_url % resource_id + metric + "/measures" return self._get(url, params=params).json() diff --git a/gnocchiclient/v1/resource.py b/gnocchiclient/v1/resource.py index 670cd53..ee95fad 100644 --- a/gnocchiclient/v1/resource.py +++ b/gnocchiclient/v1/resource.py @@ -55,7 +55,6 @@ class ResourceManager(base.Manager): :type history: bool """ history = "/history" if history else "" - resource_id = utils.encode_resource_id(resource_id) url = self.url + "%s/%s%s" % (resource_type, resource_id, history) return self._get(url).json() @@ -80,7 +79,6 @@ class ResourceManager(base.Manager): """ qs = utils.build_pagination_options(details, False, limit, marker, sorts) - resource_id = utils.encode_resource_id(resource_id) url = "%s%s/%s/history?%s" % (self.url, resource_type, resource_id, qs) return self._get(url).json() @@ -107,8 +105,6 @@ class ResourceManager(base.Manager): :param resource: Attribute of the resource :type resource: dict """ - - resource_id = utils.encode_resource_id(resource_id) return self._patch( self.url + resource_type + "/" + resource_id, headers={'Content-Type': "application/json"}, @@ -120,7 +116,6 @@ class ResourceManager(base.Manager): :param resource_id: ID of the resource :type resource_id: str """ - resource_id = utils.encode_resource_id(resource_id) self._delete(self.url + "generic/" + resource_id) def batch_delete(self, query, resource_type="generic"):