Port metric v1 to resource2
This change ports metric v1 to resource2. Note that most of this stuff isn't exposed in the proxy, but that change should be made elsewhere. I also removed the resource.Generic.create method as that doesn't seem necessary based on what's documented. Change-Id: I662ad4811ff84bd7b7726d02d676e9f5f05e3808
This commit is contained in:
@@ -11,7 +11,7 @@
|
|||||||
# under the License.
|
# under the License.
|
||||||
|
|
||||||
from openstack.metric.v1 import capabilities
|
from openstack.metric.v1 import capabilities
|
||||||
from openstack import proxy
|
from openstack import proxy2 as proxy
|
||||||
|
|
||||||
|
|
||||||
class Proxy(proxy.BaseProxy):
|
class Proxy(proxy.BaseProxy):
|
||||||
|
@@ -11,7 +11,7 @@
|
|||||||
# under the License.
|
# under the License.
|
||||||
|
|
||||||
from openstack.metric import metric_service
|
from openstack.metric import metric_service
|
||||||
from openstack import resource
|
from openstack import resource2 as resource
|
||||||
|
|
||||||
|
|
||||||
class ArchivePolicy(resource.Resource):
|
class ArchivePolicy(resource.Resource):
|
||||||
@@ -20,18 +20,16 @@ class ArchivePolicy(resource.Resource):
|
|||||||
|
|
||||||
# Supported Operations
|
# Supported Operations
|
||||||
allow_create = True
|
allow_create = True
|
||||||
allow_retrieve = True
|
allow_get = True
|
||||||
allow_delete = True
|
allow_delete = True
|
||||||
allow_list = True
|
allow_list = True
|
||||||
|
|
||||||
id_attribute = "name"
|
|
||||||
|
|
||||||
# Properties
|
# Properties
|
||||||
#: The name of this policy
|
#: The name of this policy
|
||||||
name = resource.prop('name')
|
name = resource.Body('name', alternate_id=True)
|
||||||
#: The definition of this policy
|
#: The definition of this policy
|
||||||
definition = resource.prop('definition', type=list)
|
definition = resource.Body('definition', type=list)
|
||||||
#: The window of time older than the period that archives can be requested
|
#: The window of time older than the period that archives can be requested
|
||||||
back_window = resource.prop('back_window')
|
back_window = resource.Body('back_window')
|
||||||
#: A list of the aggregation methods supported
|
#: A list of the aggregation methods supported
|
||||||
aggregation_methods = resource.prop("aggregation_methods", type=list)
|
aggregation_methods = resource.Body("aggregation_methods", type=list)
|
||||||
|
@@ -11,7 +11,7 @@
|
|||||||
# under the License.
|
# under the License.
|
||||||
|
|
||||||
from openstack.metric import metric_service
|
from openstack.metric import metric_service
|
||||||
from openstack import resource
|
from openstack import resource2 as resource
|
||||||
|
|
||||||
|
|
||||||
class Capabilities(resource.Resource):
|
class Capabilities(resource.Resource):
|
||||||
@@ -19,7 +19,7 @@ class Capabilities(resource.Resource):
|
|||||||
service = metric_service.MetricService()
|
service = metric_service.MetricService()
|
||||||
|
|
||||||
# Supported Operations
|
# Supported Operations
|
||||||
allow_retrieve = True
|
allow_get = True
|
||||||
|
|
||||||
#: The supported methods of aggregation.
|
#: The supported methods of aggregation.
|
||||||
aggregation_methods = resource.prop('aggregation_methods', type=list)
|
aggregation_methods = resource.Body('aggregation_methods', type=list)
|
||||||
|
@@ -11,7 +11,7 @@
|
|||||||
# under the License.
|
# under the License.
|
||||||
|
|
||||||
from openstack.metric import metric_service
|
from openstack.metric import metric_service
|
||||||
from openstack import resource
|
from openstack import resource2 as resource
|
||||||
|
|
||||||
|
|
||||||
class Metric(resource.Resource):
|
class Metric(resource.Resource):
|
||||||
@@ -20,20 +20,20 @@ class Metric(resource.Resource):
|
|||||||
|
|
||||||
# Supported Operations
|
# Supported Operations
|
||||||
allow_create = True
|
allow_create = True
|
||||||
allow_retrieve = True
|
allow_get = True
|
||||||
allow_delete = True
|
allow_delete = True
|
||||||
allow_list = True
|
allow_list = True
|
||||||
|
|
||||||
# Properties
|
# Properties
|
||||||
#: The name of the archive policy
|
#: The name of the archive policy
|
||||||
archive_policy_name = resource.prop('archive_policy_name')
|
archive_policy_name = resource.Body('archive_policy_name')
|
||||||
#: The archive policy
|
#: The archive policy
|
||||||
archive_policy = resource.prop('archive_policy')
|
archive_policy = resource.Body('archive_policy')
|
||||||
#: The ID of the user who created this metric
|
#: The ID of the user who created this metric
|
||||||
created_by_user_id = resource.prop('created_by_user_id')
|
created_by_user_id = resource.Body('created_by_user_id')
|
||||||
#: The ID of the project this metric was created under
|
#: The ID of the project this metric was created under
|
||||||
created_by_project_id = resource.prop('created_by_project_id')
|
created_by_project_id = resource.Body('created_by_project_id')
|
||||||
#: The identifier of this metric
|
#: The identifier of this metric
|
||||||
resource_id = resource.prop('resource_id')
|
resource_id = resource.Body('resource_id')
|
||||||
#: The name of this metric
|
#: The name of this metric
|
||||||
name = resource.prop('name')
|
name = resource.Body('name')
|
||||||
|
@@ -11,7 +11,7 @@
|
|||||||
# under the License.
|
# under the License.
|
||||||
|
|
||||||
from openstack.metric import metric_service
|
from openstack.metric import metric_service
|
||||||
from openstack import resource
|
from openstack import resource2 as resource
|
||||||
|
|
||||||
|
|
||||||
class Generic(resource.Resource):
|
class Generic(resource.Resource):
|
||||||
@@ -20,31 +20,27 @@ class Generic(resource.Resource):
|
|||||||
|
|
||||||
# Supported Operations
|
# Supported Operations
|
||||||
allow_create = True
|
allow_create = True
|
||||||
allow_retrieve = True
|
allow_get = True
|
||||||
allow_delete = True
|
allow_delete = True
|
||||||
allow_list = True
|
allow_list = True
|
||||||
allow_update = True
|
allow_update = True
|
||||||
|
|
||||||
# Properties
|
# Properties
|
||||||
#: The identifier of this resource
|
#: The identifier of this resource
|
||||||
id = resource.prop('id', alias="resource_id")
|
id = resource.Body('id')
|
||||||
#: The ID of the user who created this resource
|
#: The ID of the user who created this resource
|
||||||
created_by_user_id = resource.prop('created_by_user_id')
|
created_by_user_id = resource.Body('created_by_user_id')
|
||||||
#: The ID of the project this resource was created under
|
#: The ID of the project this resource was created under
|
||||||
created_by_project_id = resource.prop('created_by_project_id')
|
created_by_project_id = resource.Body('created_by_project_id')
|
||||||
#: The ID of the user
|
#: The ID of the user
|
||||||
user_id = resource.prop('user_id')
|
user_id = resource.Body('user_id')
|
||||||
#: The ID of the project
|
#: The ID of the project
|
||||||
project_id = resource.prop('project_id')
|
project_id = resource.Body('project_id')
|
||||||
#: Timestamp when this resource was started
|
#: Timestamp when this resource was started
|
||||||
started_at = resource.prop('started_at')
|
started_at = resource.Body('started_at')
|
||||||
#: Timestamp when this resource was ended
|
#: Timestamp when this resource was ended
|
||||||
ended_at = resource.prop('ended_at')
|
ended_at = resource.Body('ended_at')
|
||||||
#: A dictionary of metrics collected on this resource
|
#: A dictionary of metrics collected on this resource
|
||||||
metrics = resource.prop('metrics', type=dict)
|
metrics = resource.Body('metrics', type=dict)
|
||||||
|
#: The type of resource
|
||||||
def create(self, session):
|
type = resource.Body('type')
|
||||||
resp = self.create_by_id(session, self._attrs)
|
|
||||||
self._attrs[self.id_attribute] = resp[self.id_attribute]
|
|
||||||
self._reset_dirty()
|
|
||||||
return self
|
|
||||||
|
@@ -47,14 +47,15 @@ class TestArchivePolicy(testtools.TestCase):
|
|||||||
self.assertEqual('/archive_policy', m.base_path)
|
self.assertEqual('/archive_policy', m.base_path)
|
||||||
self.assertEqual('metric', m.service.service_type)
|
self.assertEqual('metric', m.service.service_type)
|
||||||
self.assertTrue(m.allow_create)
|
self.assertTrue(m.allow_create)
|
||||||
self.assertTrue(m.allow_retrieve)
|
self.assertTrue(m.allow_get)
|
||||||
self.assertFalse(m.allow_update)
|
self.assertFalse(m.allow_update)
|
||||||
self.assertTrue(m.allow_delete)
|
self.assertTrue(m.allow_delete)
|
||||||
self.assertTrue(m.allow_list)
|
self.assertTrue(m.allow_list)
|
||||||
|
|
||||||
def test_make_it(self):
|
def test_make_it(self):
|
||||||
m = archive_policy.ArchivePolicy(EXAMPLE)
|
m = archive_policy.ArchivePolicy(**EXAMPLE)
|
||||||
self.assertEqual(EXAMPLE['name'], m.name)
|
self.assertEqual(EXAMPLE['name'], m.name)
|
||||||
|
self.assertEqual(EXAMPLE['name'], m.id)
|
||||||
self.assertEqual(EXAMPLE['definition'], m.definition)
|
self.assertEqual(EXAMPLE['definition'], m.definition)
|
||||||
self.assertEqual(EXAMPLE['back_window'], m.back_window)
|
self.assertEqual(EXAMPLE['back_window'], m.back_window)
|
||||||
self.assertEqual(EXAMPLE['aggregation_methods'], m.aggregation_methods)
|
self.assertEqual(EXAMPLE['aggregation_methods'], m.aggregation_methods)
|
||||||
|
@@ -25,12 +25,12 @@ class TestCapabilites(testtools.TestCase):
|
|||||||
self.assertEqual('/capabilities', sot.base_path)
|
self.assertEqual('/capabilities', sot.base_path)
|
||||||
self.assertEqual('metric', sot.service.service_type)
|
self.assertEqual('metric', sot.service.service_type)
|
||||||
self.assertFalse(sot.allow_create)
|
self.assertFalse(sot.allow_create)
|
||||||
self.assertTrue(sot.allow_retrieve)
|
self.assertTrue(sot.allow_get)
|
||||||
self.assertFalse(sot.allow_update)
|
self.assertFalse(sot.allow_update)
|
||||||
self.assertFalse(sot.allow_delete)
|
self.assertFalse(sot.allow_delete)
|
||||||
self.assertFalse(sot.allow_list)
|
self.assertFalse(sot.allow_list)
|
||||||
|
|
||||||
def test_make_it(self):
|
def test_make_it(self):
|
||||||
sot = capabilities.Capabilities(BODY)
|
sot = capabilities.Capabilities(**BODY)
|
||||||
self.assertEqual(BODY['aggregation_methods'],
|
self.assertEqual(BODY['aggregation_methods'],
|
||||||
sot.aggregation_methods)
|
sot.aggregation_methods)
|
||||||
|
@@ -52,13 +52,13 @@ class TestMetric(testtools.TestCase):
|
|||||||
self.assertEqual('/metric', m.base_path)
|
self.assertEqual('/metric', m.base_path)
|
||||||
self.assertEqual('metric', m.service.service_type)
|
self.assertEqual('metric', m.service.service_type)
|
||||||
self.assertTrue(m.allow_create)
|
self.assertTrue(m.allow_create)
|
||||||
self.assertTrue(m.allow_retrieve)
|
self.assertTrue(m.allow_get)
|
||||||
self.assertFalse(m.allow_update)
|
self.assertFalse(m.allow_update)
|
||||||
self.assertTrue(m.allow_delete)
|
self.assertTrue(m.allow_delete)
|
||||||
self.assertTrue(m.allow_list)
|
self.assertTrue(m.allow_list)
|
||||||
|
|
||||||
def test_make_it(self):
|
def test_make_it(self):
|
||||||
m = metric.Metric(EXAMPLE)
|
m = metric.Metric(**EXAMPLE)
|
||||||
self.assertEqual(EXAMPLE['id'], m.id)
|
self.assertEqual(EXAMPLE['id'], m.id)
|
||||||
self.assertEqual(EXAMPLE['archive_policy_name'], m.archive_policy_name)
|
self.assertEqual(EXAMPLE['archive_policy_name'], m.archive_policy_name)
|
||||||
self.assertEqual(EXAMPLE['created_by_user_id'], m.created_by_user_id)
|
self.assertEqual(EXAMPLE['created_by_user_id'], m.created_by_user_id)
|
||||||
@@ -67,7 +67,7 @@ class TestMetric(testtools.TestCase):
|
|||||||
self.assertEqual(EXAMPLE['resource_id'], m.resource_id)
|
self.assertEqual(EXAMPLE['resource_id'], m.resource_id)
|
||||||
self.assertEqual(EXAMPLE['name'], m.name)
|
self.assertEqual(EXAMPLE['name'], m.name)
|
||||||
|
|
||||||
m = metric.Metric(EXAMPLE_AP)
|
m = metric.Metric(**EXAMPLE_AP)
|
||||||
self.assertEqual(EXAMPLE_AP['id'], m.id)
|
self.assertEqual(EXAMPLE_AP['id'], m.id)
|
||||||
self.assertEqual(EXAMPLE_AP['archive_policy'], m.archive_policy)
|
self.assertEqual(EXAMPLE_AP['archive_policy'], m.archive_policy)
|
||||||
self.assertEqual(EXAMPLE_AP['created_by_user_id'],
|
self.assertEqual(EXAMPLE_AP['created_by_user_id'],
|
||||||
|
@@ -12,7 +12,7 @@
|
|||||||
|
|
||||||
from openstack.metric.v1 import _proxy
|
from openstack.metric.v1 import _proxy
|
||||||
from openstack.metric.v1 import capabilities
|
from openstack.metric.v1 import capabilities
|
||||||
from openstack.tests.unit import test_proxy_base
|
from openstack.tests.unit import test_proxy_base2 as test_proxy_base
|
||||||
|
|
||||||
|
|
||||||
class TestMetricProxy(test_proxy_base.TestProxyBase):
|
class TestMetricProxy(test_proxy_base.TestProxyBase):
|
||||||
|
@@ -36,13 +36,13 @@ class TestResource(testtools.TestCase):
|
|||||||
self.assertEqual('/resource/generic', m.base_path)
|
self.assertEqual('/resource/generic', m.base_path)
|
||||||
self.assertEqual('metric', m.service.service_type)
|
self.assertEqual('metric', m.service.service_type)
|
||||||
self.assertTrue(m.allow_create)
|
self.assertTrue(m.allow_create)
|
||||||
self.assertTrue(m.allow_retrieve)
|
self.assertTrue(m.allow_get)
|
||||||
self.assertTrue(m.allow_update)
|
self.assertTrue(m.allow_update)
|
||||||
self.assertTrue(m.allow_delete)
|
self.assertTrue(m.allow_delete)
|
||||||
self.assertTrue(m.allow_list)
|
self.assertTrue(m.allow_list)
|
||||||
|
|
||||||
def test_make_generic(self):
|
def test_make_generic(self):
|
||||||
r = resource.Generic(EXAMPLE_GENERIC)
|
r = resource.Generic(**EXAMPLE_GENERIC)
|
||||||
self.assertEqual(EXAMPLE_GENERIC['created_by_user_id'],
|
self.assertEqual(EXAMPLE_GENERIC['created_by_user_id'],
|
||||||
r.created_by_user_id)
|
r.created_by_user_id)
|
||||||
self.assertEqual(EXAMPLE_GENERIC['created_by_project_id'],
|
self.assertEqual(EXAMPLE_GENERIC['created_by_project_id'],
|
||||||
|
Reference in New Issue
Block a user