Merge "Revert "Add ceilometer action support"" into stable/liberty

This commit is contained in:
Jenkins 2016-02-12 18:13:11 +00:00 committed by Gerrit Code Review
commit 0e67e8474f
8 changed files with 4 additions and 128 deletions

View File

@ -22,6 +22,5 @@ def all_generators():
generators.KeystoneActionGenerator,
generators.HeatActionGenerator,
generators.NeutronActionGenerator,
generators.CinderActionGenerator,
generators.CeilometerActionGenerator
generators.CinderActionGenerator
]

View File

@ -44,8 +44,3 @@ class NeutronActionGenerator(base.OpenStackActionGenerator):
class CinderActionGenerator(base.OpenStackActionGenerator):
action_namespace = "cinder"
base_action_class = actions.CinderAction
class CeilometerActionGenerator(base.OpenStackActionGenerator):
action_namespace = "ceilometer"
base_action_class = actions.CeilometerAction

View File

@ -12,7 +12,6 @@
# See the License for the specific language governing permissions and
# limitations under the License.
from ceilometerclient.v2 import client as ceilometerclient
from cinderclient.v1 import client as cinderclient
from glanceclient.v2 import client as glanceclient
from heatclient.v1 import client as heatclient
@ -124,35 +123,6 @@ class KeystoneAction(base.OpenStackAction):
return fake_client
class CeilometerAction(base.OpenStackAction):
_client_class = ceilometerclient.Client
def _get_client(self):
ctx = context.ctx()
LOG.debug("Ceilometer action security context: %s" % ctx)
ceilometer_endpoint = keystone_utils.get_endpoint_for_project(
'ceilometer'
)
endpoint_url = keystone_utils.format_url(
ceilometer_endpoint.url,
{'tenant_id': ctx.project_id}
)
return self._client_class(
endpoint_url,
region_name=ceilometer_endpoint.region,
token=ctx.auth_token,
username=ctx.user_name
)
@classmethod
def _get_fake_client(cls):
return cls._client_class("")
class HeatAction(base.OpenStackAction):
_client_class = heatclient.Client

View File

@ -426,35 +426,6 @@
"stacks_update": "stacks.update",
"stacks_validate": "stacks.validate"
},
"ceilometer": {
"_comment": "It uses ceilometerclient.v2.",
"alarms_create": "alarms.create",
"alarms_delete": "alarms.delete",
"alarms_get": "alarms.get",
"alarms_get_history": "alarms.get_history",
"alarms_get_state": "alarms.get_state",
"alarms_list": "alarms.list",
"alarms_set_state": "alarms.set_state",
"alarms_update": "alarms.update",
"capabilities_get": "capabilities.get",
"event_types_list": "event_types.list",
"events_get": "events.get",
"events_list": "events.list",
"meters_list": "meters.list",
"new_samples_get": "new_samples.get",
"new_samples_list": "new_samples.list",
"query_alarm_history_query": "query_alarm_history.query",
"query_alarms_query": "query_alarms.query",
"query_samples_query": "query_samples.query",
"resources_get": "resources.get",
"resources_list": "resources.list",
"samples_create": "samples.create",
"samples_create_list": "samples.create_list",
"samples_list": "samples.list",
"statistics_list": "statistics.list",
"trait_descriptions_list": "trait_descriptions.list",
"traits_list": "traits.list"
},
"neutron": {
"_comment": "It uses neutronclient.v2_0.",
"add_gateway_router": "add_gateway_router",

View File

@ -1,32 +0,0 @@
# Copyright 2015 Alcatel-Lucent, Inc.
#
# 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 mistral.actions.openstack.action_generator import generators
from mistral.actions.openstack import actions
from mistral.tests import base
class CeilometerGeneratorTest(base.BaseTest):
def test_generator(self):
action_name = "ceilometer.alarms_list"
generator = generators.CeilometerActionGenerator
action_classes = generator.create_actions()
action = self._assert_single_item(
action_classes,
name=action_name
)
self.assertIsNotNone(generator)
self.assertTrue(issubclass(action['class'], actions.CeilometerAction))
self.assertEqual("alarms.list", action['class'].client_method_name)

View File

@ -90,15 +90,3 @@ class OpenStackActionTest(base.BaseTestCase):
self.assertTrue(mocked().volumes.get.called)
mocked().volumes.get.assert_called_once_with(volume="1234-abcd")
@mock.patch.object(actions.CeilometerAction, '_get_client')
def test_ceilometer_action(self, mocked):
method_name = "alarms.get"
action_class = actions.CeilometerAction
action_class.client_method_name = method_name
params = {'alarm_id': '1234-abcd'}
action = action_class(**params)
action.run()
self.assertTrue(mocked().alarms.get.called)
mocked().alarms.get.assert_called_once_with(alarm_id="1234-abcd")

View File

@ -21,7 +21,6 @@ oslo.service>=0.7.0 # Apache-2.0
paramiko>=1.13.0
pbr>=1.6
pecan>=1.0.0
python-ceilometerclient>=1.5.0
python-cinderclient>=1.3.1
python-glanceclient>=0.18.0
python-heatclient>=0.3.0

View File

@ -18,7 +18,6 @@ import inspect
import json
import os
from ceilometerclient.v2 import client as ceilometerclient
from cinderclient import utils as cinder_base
from cinderclient.v2 import client as cinderclient
from glanceclient.v2 import client as glanceclient
@ -26,8 +25,8 @@ from heatclient.openstack.common.apiclient import base as heat_base
from heatclient.v1 import client as heatclient
from keystoneclient import base as keystone_base
from keystoneclient.v3 import client as keystoneclient
from novaclient import client as novaclient
from novaclient.openstack.common.apiclient import base as nova_base
from novaclient import client as novaclient
# TODO(nmakhotkin): Find a rational way to do it for neutron.
@ -69,7 +68,7 @@ def get_parser():
)
parser.add_argument(
'service',
choices=['nova', 'glance', 'heat', 'cinder', 'keystone', 'ceilometer'],
choices=['nova', 'glance', 'heat', 'cinder', 'keystone'],
help='Service name which methods need to be found.'
)
parser.add_argument(
@ -104,12 +103,6 @@ GLANCE_NAMESPACE_LIST = [
'image_members', 'image_tags', 'images', 'schemas', 'tasks'
]
CEILOMETER_NAMESPACE_LIST = [
'alarms', 'capabilities', 'event_types', 'events', 'meters',
'new_samples', 'query_alarm_history', 'query_alarms', 'query_samples',
'resources', 'samples', 'statistics', 'trait_descriptions', 'traits'
]
def get_nova_client(**kwargs):
return novaclient.Client(2)
@ -127,10 +120,6 @@ def get_heat_client(**kwargs):
return heatclient.Client('')
def get_ceilometer_client(**kwargs):
return ceilometerclient.Client('')
def get_cinder_client(**kwargs):
return cinderclient.Client()
@ -138,7 +127,6 @@ def get_cinder_client(**kwargs):
CLIENTS = {
'nova': get_nova_client,
'heat': get_heat_client,
'ceilometer': get_ceilometer_client,
'cinder': get_cinder_client,
'keystone': get_keystone_client,
'glance': get_glance_client,
@ -147,15 +135,13 @@ CLIENTS = {
BASE_MANAGERS = {
'nova': BASE_NOVA_MANAGER,
'heat': BASE_HEAT_MANAGER,
'ceilometer': None,
'cinder': BASE_CINDER_MANAGER,
'keystone': BASE_KEYSTONE_MANAGER,
'glance': None,
# 'neutron': BASE_NOVA_MANAGER
}
NAMESPACES = {
'glance': GLANCE_NAMESPACE_LIST,
'ceilometer': CEILOMETER_NAMESPACE_LIST
'glance': GLANCE_NAMESPACE_LIST
}
ALLOWED_ATTRS = ['service_catalog', 'catalog']
FORBIDDEN_METHODS = [