Merge "Revert "Add ceilometer action support"" into stable/liberty
This commit is contained in:
commit
0e67e8474f
|
@ -22,6 +22,5 @@ def all_generators():
|
|||
generators.KeystoneActionGenerator,
|
||||
generators.HeatActionGenerator,
|
||||
generators.NeutronActionGenerator,
|
||||
generators.CinderActionGenerator,
|
||||
generators.CeilometerActionGenerator
|
||||
generators.CinderActionGenerator
|
||||
]
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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
|
||||
|
||||
|
|
|
@ -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",
|
||||
|
|
|
@ -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)
|
|
@ -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")
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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 = [
|
||||
|
|
Loading…
Reference in New Issue