summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorgordon chung <gord@live.ca>2015-10-20 11:27:47 -0400
committergordon chung <gord@live.ca>2015-10-21 07:55:06 -0400
commitcba4f4b7d3b5a0054096c4a01464a0a3c494de97 (patch)
tree0e60bb823dfd2286feeaf673213397b44fc4f357
parent32a6fbd91b570d65332e646fb2db5d428cfead00 (diff)
downloadpython-ceilometerclient-cba4f4b7d3b5a0054096c4a01464a0a3c494de97.tar.gz
drop v1 client
we dropped v1 back in Juno. as icehouse is EOL and the client follows stable/branches, v1 is completely inaccessible and can be removed Change-Id: If4c6c07e65a6c47f47c59de6c99e8c40ef4e63cb Co-Authored-By: ZhiQiang Fan <aji.zqfan@gmail.com> Closes-Bug: #1389331
-rw-r--r--ceilometerclient/tests/unit/test_client.py14
-rw-r--r--ceilometerclient/tests/unit/v1/__init__.py0
-rw-r--r--ceilometerclient/tests/unit/v1/test_meters.py162
-rw-r--r--ceilometerclient/tests/unit/v1/test_projects.py65
-rw-r--r--ceilometerclient/tests/unit/v1/test_resources.py161
-rw-r--r--ceilometerclient/tests/unit/v1/test_samples.py196
-rw-r--r--ceilometerclient/tests/unit/v1/test_users.py65
-rw-r--r--ceilometerclient/v1/__init__.py16
-rw-r--r--ceilometerclient/v1/client.py56
-rw-r--r--ceilometerclient/v1/meters.py191
-rw-r--r--ceilometerclient/v1/shell.py136
-rw-r--r--doc/source/api.rst3
-rw-r--r--doc/source/conf.py2
-rw-r--r--doc/source/index.rst1
14 files changed, 1 insertions, 1067 deletions
diff --git a/ceilometerclient/tests/unit/test_client.py b/ceilometerclient/tests/unit/test_client.py
index 5498853..3021699 100644
--- a/ceilometerclient/tests/unit/test_client.py
+++ b/ceilometerclient/tests/unit/test_client.py
@@ -23,7 +23,6 @@ from ceilometerclient import exc
from ceilometerclient.openstack.common.apiclient import exceptions
from ceilometerclient.tests.unit import fakes
from ceilometerclient.tests.unit import utils
-from ceilometerclient.v1 import client as v1client
from ceilometerclient.v2 import client as v2client
FAKE_ENV = {
@@ -64,20 +63,7 @@ class ClientTest(utils.BaseTestCase):
self.assertTrue(session.request.called)
self.assertTrue(resp.json.called)
- def test_client_v1_with_session(self):
- resp = mock.Mock(status_code=200, text=b'')
- resp.json.return_value = {'resources': []}
- session = mock.Mock()
- session.request.return_value = resp
- c = client.get_client(1, session=session)
- c.resources.list()
- self.assertTrue(session.request.called)
- self.assertTrue(resp.json.called)
-
def test_client_version(self):
- c1 = self.create_client(env=FAKE_ENV, api_version=1)
- self.assertIsInstance(c1, v1client.Client)
-
c2 = self.create_client(env=FAKE_ENV, api_version=2)
self.assertIsInstance(c2, v2client.Client)
diff --git a/ceilometerclient/tests/unit/v1/__init__.py b/ceilometerclient/tests/unit/v1/__init__.py
deleted file mode 100644
index e69de29..0000000
--- a/ceilometerclient/tests/unit/v1/__init__.py
+++ /dev/null
diff --git a/ceilometerclient/tests/unit/v1/test_meters.py b/ceilometerclient/tests/unit/v1/test_meters.py
deleted file mode 100644
index afd9a1b..0000000
--- a/ceilometerclient/tests/unit/v1/test_meters.py
+++ /dev/null
@@ -1,162 +0,0 @@
-# Copyright 2012 OpenStack Foundation
-# All Rights Reserved.
-#
-# Licensed under the Apache License, Version 2.0 (the "License"); you may
-# not use this file except in compliance with the License. You may obtain
-# a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
-# 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 ceilometerclient.openstack.common.apiclient import client
-from ceilometerclient.openstack.common.apiclient import fake_client
-from ceilometerclient.tests.unit import utils
-import ceilometerclient.v1.meters
-
-
-fixtures = {
- '/v1/meters': {
- 'GET': (
- {},
- {'meters': [
- {
- 'resource_id': 'a',
- 'project_id': 'dig_the_ditch',
- 'user_id': 'freddy',
- 'name': 'this',
- 'type': 'counter',
- },
- {
- 'resource_id': 'b',
- 'project_id': 'dig_the_ditch',
- 'user_id': 'joey',
- 'name': 'this',
- 'type': 'counter',
- },
- ]},
- ),
- },
- '/v1/users/joey/meters': {
- 'GET': (
- {},
- {'meters': [
- {
- 'resource_id': 'b',
- 'project_id': 'dig_the_ditch',
- 'user_id': 'joey',
- 'name': 'this',
- 'type': 'counter',
- },
- ]},
- ),
- },
- '/v1/projects/dig_the_ditch/meters': {
- 'GET': (
- {},
- {'meters': [
- {
- 'resource_id': 'b',
- 'project_id': 'dig_the_ditch',
- 'user_id': 'joey',
- 'name': 'this',
- 'type': 'counter',
- },
- ]},
- ),
- },
- '/v1/sources/openstack/meters': {
- 'GET': (
- {},
- {'meters': [
- {
- 'resource_id': 'b',
- 'project_id': 'dig_the_ditch',
- 'user_id': 'joey',
- 'name': 'this',
- 'type': 'counter',
- },
- {
- 'resource_id': 'q',
- 'project_id': 'dig_the_trench',
- 'user_id': 'joey',
- 'name': 'this',
- 'type': 'counter',
- },
- ]},
- ),
- },
- '/v1/meters?metadata.zxc_id=foo': {
- 'GET': (
- {},
- {'meters': [
- {
- 'resource_id': 'b',
- 'project_id': 'dig_the_ditch',
- 'user_id': 'joey',
- 'name': 'this',
- 'type': 'counter',
- },
- ]},
- ),
- },
-}
-
-
-class MeterManagerTest(utils.BaseTestCase):
-
- def setUp(self):
- super(MeterManagerTest, self).setUp()
- self.http_client = fake_client.FakeHTTPClient(fixtures=fixtures)
- self.api = client.BaseClient(self.http_client)
- self.mgr = ceilometerclient.v1.meters.MeterManager(self.api)
-
- def test_list_all(self):
- resources = list(self.mgr.list())
- expect = [
- 'GET', '/v1/meters'
- ]
- self.http_client.assert_called(*expect)
- self.assertEqual(len(resources), 2)
- self.assertEqual(resources[0].resource_id, 'a')
- self.assertEqual(resources[1].resource_id, 'b')
-
- def test_list_by_source(self):
- resources = list(self.mgr.list(source='openstack'))
- expect = [
- 'GET', '/v1/sources/openstack/meters'
- ]
- self.http_client.assert_called(*expect)
- self.assertEqual(len(resources), 2)
- self.assertEqual(resources[0].resource_id, 'b')
- self.assertEqual(resources[1].resource_id, 'q')
-
- def test_list_by_user(self):
- resources = list(self.mgr.list(user_id='joey'))
- expect = [
- 'GET', '/v1/users/joey/meters'
- ]
- self.http_client.assert_called(*expect)
- self.assertEqual(len(resources), 1)
- self.assertEqual(resources[0].resource_id, 'b')
-
- def test_list_by_project(self):
- resources = list(self.mgr.list(project_id='dig_the_ditch'))
- expect = [
- 'GET', '/v1/projects/dig_the_ditch/meters'
- ]
- self.http_client.assert_called(*expect)
- self.assertEqual(len(resources), 1)
- self.assertEqual(resources[0].resource_id, 'b')
-
- def test_list_by_metaquery(self):
- resources = list(self.mgr.list(metaquery='metadata.zxc_id=foo'))
- expect = [
- 'GET', '/v1/meters?metadata.zxc_id=foo'
- ]
- self.http_client.assert_called(*expect)
- self.assertEqual(len(resources), 1)
- self.assertEqual(resources[0].resource_id, 'b')
diff --git a/ceilometerclient/tests/unit/v1/test_projects.py b/ceilometerclient/tests/unit/v1/test_projects.py
deleted file mode 100644
index 7b31bce..0000000
--- a/ceilometerclient/tests/unit/v1/test_projects.py
+++ /dev/null
@@ -1,65 +0,0 @@
-# Copyright 2012 OpenStack Foundation
-# All Rights Reserved.
-#
-# Licensed under the Apache License, Version 2.0 (the "License"); you may
-# not use this file except in compliance with the License. You may obtain
-# a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
-# 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 ceilometerclient.openstack.common.apiclient import client
-from ceilometerclient.openstack.common.apiclient import fake_client
-from ceilometerclient.tests.unit import utils
-import ceilometerclient.v1.meters
-
-
-fixtures = {
- '/v1/projects': {
- 'GET': (
- {},
- {'projects': [
- 'a',
- 'b',
- ]},
- ),
- },
- '/v1/sources/source_b/projects': {
- 'GET': (
- {},
- {'projects': ['b']},
- ),
- },
-}
-
-
-class ProjectManagerTest(utils.BaseTestCase):
-
- def setUp(self):
- super(ProjectManagerTest, self).setUp()
- self.http_client = fake_client.FakeHTTPClient(fixtures=fixtures)
- self.api = client.BaseClient(self.http_client)
- self.mgr = ceilometerclient.v1.meters.ProjectManager(self.api)
-
- def test_list_all(self):
- projects = list(self.mgr.list())
- expect = [
- 'GET', '/v1/projects'
- ]
- self.http_client.assert_called(*expect)
- self.assertEqual(len(projects), 2)
- self.assertEqual(projects[0].project_id, 'a')
- self.assertEqual(projects[1].project_id, 'b')
-
- def test_list_by_source(self):
- projects = list(self.mgr.list(source='source_b'))
- expect = [
- 'GET', '/v1/sources/source_b/projects'
- ]
- self.http_client.assert_called(*expect)
- self.assertEqual(len(projects), 1)
- self.assertEqual(projects[0].project_id, 'b')
diff --git a/ceilometerclient/tests/unit/v1/test_resources.py b/ceilometerclient/tests/unit/v1/test_resources.py
deleted file mode 100644
index cfc4f6c..0000000
--- a/ceilometerclient/tests/unit/v1/test_resources.py
+++ /dev/null
@@ -1,161 +0,0 @@
-# Copyright 2012 OpenStack Foundation
-# All Rights Reserved.
-#
-# Licensed under the Apache License, Version 2.0 (the "License"); you may
-# not use this file except in compliance with the License. You may obtain
-# a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
-# 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 ceilometerclient.openstack.common.apiclient import client
-from ceilometerclient.openstack.common.apiclient import fake_client
-from ceilometerclient.tests.unit import utils
-import ceilometerclient.v1.meters
-
-
-fixtures = {
- '/v1/resources': {
- 'GET': (
- {},
- {'resources': [
- {
- 'resource_id': 'a',
- 'project_id': 'project_bla',
- 'user_id': 'freddy',
- 'timestamp': 'now',
- 'meter': ['this', 'that'],
- 'metadata': {'zxc_id': 'bla'},
- },
- {
- 'resource_id': 'b',
- 'project_id': 'dig_the_ditch',
- 'user_id': 'joey',
- 'timestamp': 'now',
- 'meter': ['this', 'that'],
- 'metadata': {'zxc_id': 'foo'},
- },
- ]},
- ),
- },
- '/v1/users/joey/resources': {
- 'GET': (
- {},
- {'resources': [
- {
- 'resource_id': 'b',
- 'project_id': 'dig_the_ditch',
- 'user_id': 'joey',
- 'timestamp': 'now',
- 'meter': ['this', 'that'],
- 'metadata': {'zxc_id': 'foo'},
- },
- ]},
- ),
- },
- '/v1/resources?metadata.zxc_id=foo': {
- 'GET': (
- {},
- {'resources': [
- {
- 'resource_id': 'b',
- 'project_id': 'dig_the_ditch',
- 'user_id': 'joey',
- 'timestamp': 'now',
- 'meter': ['this', 'that'],
- 'metadata': {'zxc_id': 'foo'},
- },
- ]},
- ),
- },
- '/v1/projects/project_bla/resources': {
- 'GET': (
- {},
- {'resources': [
- {
- 'resource_id': 'a',
- 'project_id': 'project_bla',
- 'user_id': 'freddy',
- 'timestamp': 'now',
- 'meter': ['this', 'that'],
- 'metadata': {'zxc_id': 'bla'},
- },
- ]},
- ),
- },
- '/v1/resources?start_timestamp=now&end_timestamp=now': {
- 'GET': (
- {},
- {'resources': [
- {
- 'resource_id': 'b',
- 'project_id': 'dig_the_ditch',
- 'user_id': 'joey',
- 'timestamp': 'now',
- 'meter': ['this', 'that'],
- 'metadata': {'zxc_id': 'foo'},
- },
- ]},
- ),
- },
-}
-
-
-class ResourceManagerTest(utils.BaseTestCase):
-
- def setUp(self):
- super(ResourceManagerTest, self).setUp()
- self.http_client = fake_client.FakeHTTPClient(fixtures=fixtures)
- self.api = client.BaseClient(self.http_client)
- self.mgr = ceilometerclient.v1.meters.ResourceManager(self.api)
-
- def test_list_all(self):
- resources = list(self.mgr.list())
- expect = [
- 'GET', '/v1/resources'
- ]
- self.http_client.assert_called(*expect)
- self.assertEqual(len(resources), 2)
- self.assertEqual(resources[0].resource_id, 'a')
- self.assertEqual(resources[1].resource_id, 'b')
-
- def test_list_by_user(self):
- resources = list(self.mgr.list(user_id='joey'))
- expect = [
- 'GET', '/v1/users/joey/resources'
- ]
- self.http_client.assert_called(*expect)
- self.assertEqual(len(resources), 1)
- self.assertEqual(resources[0].resource_id, 'b')
-
- def test_list_by_metaquery(self):
- resources = list(self.mgr.list(metaquery='metadata.zxc_id=foo'))
- expect = [
- 'GET', '/v1/resources?metadata.zxc_id=foo'
- ]
- self.http_client.assert_called(*expect)
- self.assertEqual(len(resources), 1)
- self.assertEqual(resources[0].resource_id, 'b')
-
- def test_list_by_project(self):
- resources = list(self.mgr.list(project_id='project_bla'))
- expect = [
- 'GET', '/v1/projects/project_bla/resources'
- ]
- self.http_client.assert_called(*expect)
- self.assertEqual(len(resources), 1)
- self.assertEqual(resources[0].resource_id, 'a')
-
- def test_list_by_timestamp(self):
- resources = list(self.mgr.list(start_timestamp='now',
- end_timestamp='now'))
- expect = [
- 'GET', '/v1/resources?start_timestamp=now&end_timestamp=now'
- ]
- self.http_client.assert_called(*expect)
- self.assertEqual(len(resources), 1)
- self.assertEqual(resources[0].resource_id, 'b')
diff --git a/ceilometerclient/tests/unit/v1/test_samples.py b/ceilometerclient/tests/unit/v1/test_samples.py
deleted file mode 100644
index 0f1a029..0000000
--- a/ceilometerclient/tests/unit/v1/test_samples.py
+++ /dev/null
@@ -1,196 +0,0 @@
-# Copyright 2012 OpenStack Foundation
-# All Rights Reserved.
-#
-# Licensed under the Apache License, Version 2.0 (the "License"); you may
-# not use this file except in compliance with the License. You may obtain
-# a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
-# 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 ceilometerclient.openstack.common.apiclient import client
-from ceilometerclient.openstack.common.apiclient import fake_client
-from ceilometerclient.tests.unit import utils
-import ceilometerclient.v1.meters
-
-
-fixtures = {
- '/v1/users/freddy/meters/balls': {
- 'GET': (
- {},
- {'events': [
- {
- 'resource_id': 'inst-0045',
- 'project_id': 'melbourne_open',
- 'user_id': 'freddy',
- 'name': 'tennis',
- 'type': 'counter',
- 'unit': 'balls',
- 'volume': 3,
- 'timestamp': None,
- 'resource_metadata': None,
- },
- ]},
- ),
- },
- '/v1/sources/openstack/meters/this': {
- 'GET': (
- {},
- {'events': [
- {
- 'resource_id': 'b',
- 'project_id': 'dig_the_ditch',
- 'user_id': 'joey',
- 'name': 'this',
- 'type': 'counter',
- 'unit': 'b',
- 'volume': 45,
- 'timestamp': None,
- 'resource_metadata': None,
- },
- ]},
- ),
- },
- '/v1/projects/dig_the_ditch/meters/meters': {
- 'GET': (
- {},
- {'events': [
- {
- 'resource_id': 'b',
- 'project_id': 'dig_the_ditch',
- 'user_id': 'joey',
- 'name': 'meters',
- 'type': 'counter',
- 'unit': 'meters',
- 'volume': 345,
- 'timestamp': None,
- 'resource_metadata': None,
- },
- ]},
- ),
- },
- '/v1/meters?metadata.zxc_id=foo': {
- 'GET': (
- {},
- {'events': [
- {
- 'resource_id': 'b',
- 'project_id': 'dig_the_ditch',
- 'user_id': 'joey',
- 'name': 'this',
- 'type': 'counter',
- 'unit': 'meters',
- 'volume': 98,
- 'timestamp': None,
- 'resource_metadata': {'zxc_id': 'foo'},
- },
- ]},
- ),
- },
- '/v1/users/freddy/meters/balls?start_timestamp=now&end_timestamp=now': {
- 'GET': (
- {},
- {'events': [
- {
- 'resource_id': 'inst-0045',
- 'project_id': 'melbourne_open',
- 'user_id': 'freddy',
- 'name': 'tennis',
- 'type': 'counter',
- 'unit': 'balls',
- 'volume': 3,
- 'timestamp': 'now',
- 'resource_metadata': None,
- },
-
- ]},
- ),
- },
- '/v1/meters': {
- 'GET': (
- {},
- {'meters': []},
- ),
- },
-}
-
-
-class SampleManagerTest(utils.BaseTestCase):
-
- def setUp(self):
- super(SampleManagerTest, self).setUp()
- self.http_client = fake_client.FakeHTTPClient(fixtures=fixtures)
- self.api = client.BaseClient(self.http_client)
- self.mgr = ceilometerclient.v1.meters.SampleManager(self.api)
-
- def test_list_all(self):
- samples = list(self.mgr.list(counter_name=None))
- expect = [
- 'GET', '/v1/meters'
- ]
- self.http_client.assert_called(*expect)
- self.assertEqual(len(samples), 0)
-
- def test_list_by_source(self):
- samples = list(self.mgr.list(source='openstack',
- counter_name='this'))
- expect = [
- 'GET', '/v1/sources/openstack/meters/this'
- ]
- self.http_client.assert_called(*expect)
- self.assertEqual(len(samples), 1)
- self.assertEqual(samples[0].resource_id, 'b')
-
- def test_list_by_user(self):
- samples = list(self.mgr.list(user_id='freddy',
- counter_name='balls'))
- expect = [
- 'GET', '/v1/users/freddy/meters/balls'
- ]
- self.http_client.assert_called(*expect)
- self.assertEqual(len(samples), 1)
- self.assertEqual(samples[0].project_id, 'melbourne_open')
- self.assertEqual(samples[0].user_id, 'freddy')
- self.assertEqual(samples[0].volume, 3)
-
- def test_list_by_project(self):
- samples = list(self.mgr.list(project_id='dig_the_ditch',
- counter_name='meters'))
- expect = [
- 'GET', '/v1/projects/dig_the_ditch/meters/meters'
- ]
- self.http_client.assert_called(*expect)
- self.assertEqual(len(samples), 1)
- self.assertEqual(samples[0].project_id, 'dig_the_ditch')
- self.assertEqual(samples[0].volume, 345)
- self.assertEqual(samples[0].unit, 'meters')
-
- def test_list_by_metaquery(self):
- samples = list(self.mgr.list(metaquery='metadata.zxc_id=foo',
- counter_name='this'))
- expect = [
- 'GET', '/v1/meters?metadata.zxc_id=foo'
- ]
- self.http_client.assert_called(*expect)
- self.assertEqual(len(samples), 1)
- self.assertEqual(samples[0].resource_metadata['zxc_id'], 'foo')
-
- def test_list_by_timestamp(self):
- samples = list(self.mgr.list(user_id='freddy',
- counter_name='balls',
- start_timestamp='now',
- end_timestamp='now'))
- expect = [
- 'GET',
- '/v1/users/freddy/meters/balls?' +
- 'start_timestamp=now&end_timestamp=now'
- ]
- self.http_client.assert_called(*expect)
- self.assertEqual(len(samples), 1)
- self.assertEqual(samples[0].project_id, 'melbourne_open')
- self.assertEqual(samples[0].user_id, 'freddy')
- self.assertEqual(samples[0].volume, 3)
diff --git a/ceilometerclient/tests/unit/v1/test_users.py b/ceilometerclient/tests/unit/v1/test_users.py
deleted file mode 100644
index e8e98a1..0000000
--- a/ceilometerclient/tests/unit/v1/test_users.py
+++ /dev/null
@@ -1,65 +0,0 @@
-# Copyright 2012 OpenStack Foundation
-# All Rights Reserved.
-#
-# Licensed under the Apache License, Version 2.0 (the "License"); you may
-# not use this file except in compliance with the License. You may obtain
-# a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
-# 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 ceilometerclient.openstack.common.apiclient import client
-from ceilometerclient.openstack.common.apiclient import fake_client
-from ceilometerclient.tests.unit import utils
-import ceilometerclient.v1.meters
-
-
-fixtures = {
- '/v1/users': {
- 'GET': (
- {},
- {'users': [
- 'a',
- 'b',
- ]},
- ),
- },
- '/v1/sources/source_b/users': {
- 'GET': (
- {},
- {'users': ['b']},
- ),
- },
-}
-
-
-class UserManagerTest(utils.BaseTestCase):
-
- def setUp(self):
- super(UserManagerTest, self).setUp()
- self.http_client = fake_client.FakeHTTPClient(fixtures=fixtures)
- self.api = client.BaseClient(self.http_client)
- self.mgr = ceilometerclient.v1.meters.UserManager(self.api)
-
- def test_list_all(self):
- users = list(self.mgr.list())
- expect = [
- 'GET', '/v1/users'
- ]
- self.http_client.assert_called(*expect)
- self.assertEqual(len(users), 2)
- self.assertEqual(users[0].user_id, 'a')
- self.assertEqual(users[1].user_id, 'b')
-
- def test_list_by_source(self):
- users = list(self.mgr.list(source='source_b'))
- expect = [
- 'GET', '/v1/sources/source_b/users'
- ]
- self.http_client.assert_called(*expect)
- self.assertEqual(len(users), 1)
- self.assertEqual(users[0].user_id, 'b')
diff --git a/ceilometerclient/v1/__init__.py b/ceilometerclient/v1/__init__.py
deleted file mode 100644
index bd879d9..0000000
--- a/ceilometerclient/v1/__init__.py
+++ /dev/null
@@ -1,16 +0,0 @@
-# Copyright 2012 OpenStack Foundation
-# All Rights Reserved.
-#
-# Licensed under the Apache License, Version 2.0 (the "License"); you may
-# not use this file except in compliance with the License. You may obtain
-# a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
-# 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 ceilometerclient.v1.client import Client # noqa
diff --git a/ceilometerclient/v1/client.py b/ceilometerclient/v1/client.py
deleted file mode 100644
index b56e010..0000000
--- a/ceilometerclient/v1/client.py
+++ /dev/null
@@ -1,56 +0,0 @@
-# Copyright 2012 OpenStack Foundation
-# All Rights Reserved.
-#
-# Licensed under the Apache License, Version 2.0 (the "License"); you may
-# not use this file except in compliance with the License. You may obtain
-# a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
-# 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 ceilometerclient import client as ceiloclient
-from ceilometerclient.v1 import meters
-
-
-class Client(object):
- """Client for the Ceilometer v1 API.
-
- :param session: a keystoneauth/keystoneclient session object
- :type session: keystoneclient.session.Session
- :param str service_type: The default service_type for URL discovery
- :param str service_name: The default service_name for URL discovery
- :param str interface: The default interface for URL discovery
- (Default: public)
- :param str region_name: The default region_name for URL discovery
- :param str endpoint_override: Always use this endpoint URL for requests
- for this ceiloclient
- :param auth: An auth plugin to use instead of the session one
- :type auth: keystoneclient.auth.base.BaseAuthPlugin
- :param str user_agent: The User-Agent string to set
- (Default is python-ceilometer-client)
- :param int connect_retries: the maximum number of retries that should be
- attempted for connection errors
- :param logger: A logging object
- :type logger: logging.Logger
- """
-
- def __init__(self, *args, **kwargs):
- """Initialize a new client for the Ceilometer v1 API."""
-
- if not kwargs.get('auth_plugin'):
- kwargs['auth_plugin'] = ceiloclient.get_auth_plugin(*args,
- **kwargs)
- self.auth_plugin = kwargs.get('auth_plugin')
-
- self.http_client = ceiloclient._construct_http_client(**kwargs)
- self.meters = meters.MeterManager(self.http_client)
- self.samples = meters.SampleManager(self.http_client)
- self.users = meters.UserManager(self.http_client)
- self.resources = meters.ResourceManager(self.http_client)
- self.projects = meters.ProjectManager(self.http_client)
diff --git a/ceilometerclient/v1/meters.py b/ceilometerclient/v1/meters.py
deleted file mode 100644
index 223bfb3..0000000
--- a/ceilometerclient/v1/meters.py
+++ /dev/null
@@ -1,191 +0,0 @@
-# Copyright 2012 OpenMeter LLC.
-# All Rights Reserved.
-#
-# Licensed under the Apache License, Version 2.0 (the "License"); you may
-# not use this file except in compliance with the License. You may obtain
-# a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
-# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
-# License for the specific language governing permissions and limitations
-# under the License.
-
-import six
-
-from ceilometerclient.common import base
-
-
-def _get_opt_path(simple_params=None, **kwargs):
- l = []
- simple_params = simple_params or []
- # get simple paramters
- for key in simple_params:
- val = kwargs.get(key)
- if val:
- l.append(key + '=' + val)
- # get metadata query paramters
- metaquery = kwargs.get('metaquery')
- if metaquery:
- l.extend(metaquery.split(':'))
-
- return '&'.join(l)
-
-
-class User(base.Resource):
- def __init__(self, manager, info, loaded=False):
- _d = {six.u('user_id'): info}
- super(User, self).__init__(manager, _d, loaded)
-
- def __repr__(self):
- return "<User %s>" % self._info
-
- def data(self, **kwargs):
- return self.manager.data(self, **kwargs)
-
-
-class UserManager(base.Manager):
- resource_class = User
-
- def list(self, **kwargs):
- s = kwargs.get('source')
- if s:
- path = '/sources/%s/users' % s
- else:
- path = '/users'
- return self._list('/v1%s' % path, 'users')
-
-
-class Project(base.Resource):
- def __init__(self, manager, info, loaded=False):
- _d = {six.u('project_id'): info}
- super(Project, self).__init__(manager, _d, loaded)
-
- def __repr__(self):
- return "<Project %s>" % self._info
-
- def data(self, **kwargs):
- return self.manager.data(self, **kwargs)
-
-
-class ProjectManager(base.Manager):
- resource_class = Project
-
- def list(self, **kwargs):
- s = kwargs.get('source')
- if s:
- path = '/sources/%s/projects' % (kwargs['source'])
- else:
- path = '/projects'
-
- return self._list('/v1%s' % path, 'projects')
-
-
-class Resource(base.Resource):
- def __repr__(self):
- return "<Resource %s>" % self._info
-
- def data(self, **kwargs):
- return self.manager.data(self, **kwargs)
-
-
-class ResourceManager(base.Manager):
- resource_class = Resource
-
- def list(self, **kwargs):
- u = kwargs.get('user_id')
- s = kwargs.get('source')
- p = kwargs.get('project_id')
- opts_path = _get_opt_path(['start_timestamp', 'end_timestamp'],
- **kwargs)
- if u:
- path = '/users/%s/resources' % u
- elif s:
- path = '/sources/%s/resources' % s
- elif p:
- path = '/projects/%s/resources' % p
- else:
- path = '/resources'
- if opts_path:
- path = '/v1%s?%s' % (path, opts_path)
- else:
- path = '/v1%s' % path
- return self._list(path, 'resources')
-
-
-class Sample(base.Resource):
- def __init__(self, manager, info, loaded=False):
- smaller = dict((k, v) for (k, v) in six.iteritems(info)
- if k not in ('metadata', 'message_signature'))
- super(Sample, self).__init__(manager, smaller, loaded)
-
- def __repr__(self):
- return "<Sample %s>" % self._info
-
- def data(self, **kwargs):
- return self.manager.data(self, **kwargs)
-
-
-class SampleManager(base.Manager):
- resource_class = Sample
-
- def list(self, **kwargs):
- c = kwargs['counter_name']
- r = kwargs.get('resource_id')
- u = kwargs.get('user_id')
- p = kwargs.get('project_id')
- s = kwargs.get('source')
- opts_path = _get_opt_path(['start_timestamp', 'end_timestamp'],
- **kwargs)
- if r:
- path = '/resources/%s/meters/%s' % (r, c)
- elif u:
- path = '/users/%s/meters/%s' % (u, c)
- elif p:
- path = '/projects/%s/meters/%s' % (p, c)
- elif s:
- path = '/sources/%s/meters/%s' % (s, c)
- else:
- path = '/meters'
-
- if opts_path:
- path = '/v1%s?%s' % (path, opts_path)
- else:
- path = '/v1%s' % path
- return self._list(path, 'events')
-
-
-class Meter(base.Resource):
- def __repr__(self):
- return "<Meter %s>" % self._info
-
- def data(self, **kwargs):
- return self.manager.data(self, **kwargs)
-
-
-class MeterManager(base.Manager):
- resource_class = Meter
-
- def list(self, **kwargs):
- r = kwargs.get('resource_id')
- u = kwargs.get('user_id')
- p = kwargs.get('project_id')
- s = kwargs.get('source')
- opts_path = _get_opt_path(**kwargs)
- if u:
- path = '/users/%s/meters' % u
- elif r:
- path = '/resources/%s/meters' % r
- elif p:
- path = '/projects/%s/meters' % p
- elif s:
- path = '/sources/%s/meters' % s
- else:
- path = '/meters'
- if opts_path:
- path = '/v1%s?%s' % (path, opts_path)
- else:
- path = '/v1%s' % path
- return self._list(path, 'meters')
diff --git a/ceilometerclient/v1/shell.py b/ceilometerclient/v1/shell.py
deleted file mode 100644
index 395f2bc..0000000
--- a/ceilometerclient/v1/shell.py
+++ /dev/null
@@ -1,136 +0,0 @@
-# Copyright 2012 OpenStack Foundation
-# All Rights Reserved.
-#
-# Licensed under the Apache License, Version 2.0 (the "License"); you may
-# not use this file except in compliance with the License. You may obtain
-# a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
-# 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 ceilometerclient.common import utils
-import ceilometerclient.exc as exc
-
-
-@utils.arg('-m', '--metaquery', metavar='<METAQUERY>',
- help='Query into the metadata metadata.key=value:..')
-@utils.arg('-s', '--source', metavar='<SOURCE>',
- help='ID of the resource to show samples for.')
-@utils.arg('-r', '--resource_id', metavar='<RESOURCE_ID>',
- help='ID of the resource to show samples for.')
-@utils.arg('-u', '--user_id', metavar='<USER_ID>',
- help='ID of the user to show samples for.')
-@utils.arg('-p', '--project_id', metavar='<PROJECT_ID>',
- help='ID of the project to show samples for.')
-@utils.arg('-c', '--counter_name', metavar='<NAME>',
- help='Name of meter to show samples for.')
-@utils.arg('--start', metavar='<START_TIMESTAMP>',
- help='ISO date in UTC which limits events by '
- 'timestamp >= this value')
-@utils.arg('--end', metavar='<END_TIMESTAMP>',
- help='ISO date in UTC which limits events by '
- 'timestamp <= this value')
-def do_sample_list(cc, args):
- '''List the samples for this meters.'''
- fields = {'counter_name': args.counter_name,
- 'resource_id': args.resource_id,
- 'user_id': args.user_id,
- 'project_id': args.project_id,
- 'source': args.source,
- 'start_timestamp': args.start,
- 'end_timestamp': args.end,
- 'metaquery': args.metaquery}
- try:
- samples = cc.samples.list(**fields)
- except exc.HTTPNotFound:
- raise exc.CommandError('Samples not found: %s' % args.counter_name)
- else:
- field_labels = ['Resource ID', 'Name', 'Type', 'Volume', 'Timestamp']
- fields = ['resource_id', 'counter_name', 'counter_type',
- 'counter_volume', 'timestamp']
- utils.print_list(samples, fields, field_labels,
- sortby=0)
-
-
-@utils.arg('-m', '--metaquery', metavar='<METAQUERY>',
- help='Query into the metadata metadata.key=value:..')
-@utils.arg('-s', '--source', metavar='<SOURCE>',
- help='ID of the resource to show samples for.')
-@utils.arg('-r', '--resource_id', metavar='<RESOURCE_ID>',
- help='ID of the resource to show samples for.')
-@utils.arg('-u', '--user_id', metavar='<USER_ID>',
- help='ID of the user to show samples for.')
-@utils.arg('-p', '--project_id', metavar='<PROJECT_ID>',
- help='ID of the project to show samples for.')
-def do_meter_list(cc, args={}):
- '''List the user's meter.'''
- fields = {'resource_id': args.resource_id,
- 'user_id': args.user_id,
- 'project_id': args.project_id,
- 'source': args.source}
- meters = cc.meters.list(**fields)
- field_labels = ['Name', 'Type', 'Resource ID', 'User ID', 'Project ID']
- fields = ['name', 'type', 'resource_id',
- 'user_id', 'project_id']
- utils.print_list(meters, fields, field_labels,
- sortby=0)
-
-
-@utils.arg('-s', '--source', metavar='<SOURCE>',
- help='ID of the resource to show projects for.')
-def do_user_list(cc, args={}):
- '''List the users.'''
- kwargs = {'source': args.source}
- users = cc.users.list(**kwargs)
- field_labels = ['User ID']
- fields = ['user_id']
- utils.print_list(users, fields, field_labels,
- sortby=0)
-
-
-@utils.arg('-s', '--source', metavar='<SOURCE>',
- help='ID of the resource to show for.')
-@utils.arg('-u', '--user_id', metavar='<USER_ID>',
- help='ID of the user to show resources for.')
-@utils.arg('-p', '--project_id', metavar='<PROJECT_ID>',
- help='ID of the project to show samples for.')
-@utils.arg('-m', '--metaquery', metavar='<METAQUERY>',
- help='Query into the metadata metadata.key=value:..')
-@utils.arg('--start', metavar='<START_TIMESTAMP>',
- help='ISO date in UTC which limits resouces by '
- 'last update time >= this value')
-@utils.arg('--end', metavar='<END_TIMESTAMP>',
- help='ISO date in UTC which limits resouces by '
- 'last update time <= this value')
-def do_resource_list(cc, args={}):
- """List the resources."""
- kwargs = {'source': args.source,
- 'user_id': args.user_id,
- 'project_id': args.project_id,
- 'start_timestamp': args.start,
- 'end_timestamp': args.end,
- 'metaquery': args.metaquery}
- resources = cc.resources.list(**kwargs)
-
- field_labels = ['Resource ID', 'Source', 'User ID', 'Project ID']
- fields = ['resource_id', 'source', 'user_id', 'project_id']
- utils.print_list(resources, fields, field_labels,
- sortby=1)
-
-
-@utils.arg('-s', '--source', metavar='<SOURCE>',
- help='ID of the resource to show projects for.')
-def do_project_list(cc, args={}):
- """List the projects."""
- kwargs = {'source': args.source}
- projects = cc.projects.list(**kwargs)
-
- field_labels = ['Project ID']
- fields = ['project_id']
- utils.print_list(projects, fields, field_labels,
- sortby=0)
diff --git a/doc/source/api.rst b/doc/source/api.rst
index 36c7c51..b64afe1 100644
--- a/doc/source/api.rst
+++ b/doc/source/api.rst
@@ -14,7 +14,7 @@ First create a client instance with your credentials::
>>> import ceilometerclient.client
>>> cclient = ceilometerclient.client.get_client(VERSION, os_username=USERNAME, os_password=PASSWORD, os_tenant_name=PROJECT_NAME, os_auth_url=AUTH_URL)
-Here ``VERSION`` can be: ``1`` and ``2``.
+Here ``VERSION`` should be: ``2``.
Then call methods on its managers::
@@ -44,5 +44,4 @@ For more information, see the reference:
:maxdepth: 2
ref/index
- ref/v1/index
ref/v2/index
diff --git a/doc/source/conf.py b/doc/source/conf.py
index 2313013..bf45db6 100644
--- a/doc/source/conf.py
+++ b/doc/source/conf.py
@@ -16,8 +16,6 @@ execfile(os.path.join("..", "ext", "gen_ref.py"))
project = 'python-ceilometerclient'
gen_ref("", "Client Reference", ["client", "exc"])
-gen_ref("v1", "Version 1 API Reference",
- ["meters"])
gen_ref("v2", "Version 2 API Reference",
["meters", "samples", "statistics", "resources", "query", "alarms",
"events", "event_types", "traits", "trait_descriptions"])
diff --git a/doc/source/index.rst b/doc/source/index.rst
index cec3b5c..7fdbb12 100644
--- a/doc/source/index.rst
+++ b/doc/source/index.rst
@@ -22,7 +22,6 @@ Contents:
shell
api
ref/index
- ref/v1/index
ref/v2/index
Contributing