Remove support for murano and senlin
These projects were marked inactive during 2024.1 and is being retired in 2024.2[1][2]. Also get rid of unittest2, which is not actually required. [1] https://review.opendev.org/c/openstack/governance/+/919358 [2] https://review.opendev.org/c/openstack/governance/+/919347 Change-Id: Ief5bbcd05379b49dc1ad2c05c2d40d15d869f40a
This commit is contained in:
parent
660dd14be5
commit
96bfc6c718
@ -20,8 +20,8 @@ from mistral_extra.actions.openstack.action_generator import base
|
||||
SUPPORTED_MODULES = [
|
||||
'Nova', 'Glance', 'Keystone', 'Heat', 'Neutron', 'Cinder',
|
||||
'Trove', 'Ironic', 'Baremetal Introspection', 'Swift', 'SwiftService',
|
||||
'Zaqar', 'Barbican', 'Mistral', 'Designate', 'Magnum', 'Murano', 'Tacker',
|
||||
'Aodh', 'Gnocchi', 'Vitrage', 'Senlin', 'Zun', 'Manila'
|
||||
'Zaqar', 'Barbican', 'Mistral', 'Designate', 'Magnum', 'Tacker',
|
||||
'Aodh', 'Gnocchi', 'Vitrage', 'Zun', 'Manila'
|
||||
]
|
||||
|
||||
|
||||
|
@ -64,12 +64,10 @@ manilaclient = _try_import('manilaclient.client')
|
||||
manila_api_versions = _try_import('manilaclient.api_versions')
|
||||
magnumclient = _try_import('magnumclient.v1.client')
|
||||
mistralclient = _try_import('mistralclient.api.v2.client')
|
||||
muranoclient = _try_import('muranoclient.v1.client')
|
||||
neutronclient = _try_import('neutronclient.v2_0.client')
|
||||
nova = _try_import('novaclient')
|
||||
novaclient = _try_import('novaclient.client')
|
||||
nova_api_versions = _try_import('novaclient.api_versions')
|
||||
senlinclient = _try_import('senlinclient.v1.client')
|
||||
swift_client = _try_import('swiftclient.client')
|
||||
swiftservice = _try_import('swiftclient.service')
|
||||
tackerclient = _try_import('tackerclient.v1_0.client')
|
||||
@ -754,34 +752,6 @@ class MagnumAction(base.OpenStackAction):
|
||||
return cls._get_client_class()(auth_url='X', magnum_url='X')
|
||||
|
||||
|
||||
class MuranoAction(base.OpenStackAction):
|
||||
_service_name = 'murano'
|
||||
|
||||
@classmethod
|
||||
def _get_client_class(cls):
|
||||
return muranoclient.Client
|
||||
|
||||
def _create_client(self, context):
|
||||
|
||||
LOG.debug("Murano action security context: %s", context)
|
||||
|
||||
keystone_endpoint = keystone_utils.get_keystone_endpoint()
|
||||
murano_endpoint = self.get_service_endpoint()
|
||||
|
||||
return self._get_client_class()(
|
||||
endpoint=murano_endpoint.url,
|
||||
token=context.auth_token,
|
||||
tenant=context.project_id,
|
||||
region_name=murano_endpoint.region,
|
||||
auth_url=keystone_endpoint.url,
|
||||
insecure=context.insecure
|
||||
)
|
||||
|
||||
@classmethod
|
||||
def _get_fake_client(cls):
|
||||
return cls._get_client_class()("http://127.0.0.1:8082/")
|
||||
|
||||
|
||||
class TackerAction(base.OpenStackAction):
|
||||
_service_name = 'tacker'
|
||||
|
||||
@ -810,57 +780,6 @@ class TackerAction(base.OpenStackAction):
|
||||
return cls._get_client_class()()
|
||||
|
||||
|
||||
class SenlinAction(base.OpenStackAction):
|
||||
_service_name = 'senlin'
|
||||
|
||||
@classmethod
|
||||
def _get_client_class(cls):
|
||||
return senlinclient.Client
|
||||
|
||||
def _create_client(self, context):
|
||||
|
||||
LOG.debug("Senlin action security context: %s", context)
|
||||
|
||||
keystone_endpoint = keystone_utils.get_keystone_endpoint()
|
||||
senlin_endpoint = self.get_service_endpoint()
|
||||
|
||||
if context.is_trust_scoped and keystone_utils.is_token_trust_scoped(
|
||||
context.auth_token):
|
||||
if context.trust_id is None:
|
||||
raise Exception(
|
||||
"'trust_id' must be provided in the admin context."
|
||||
)
|
||||
|
||||
auth = ks_identity_v3.Password(
|
||||
auth_url=keystone_endpoint.url,
|
||||
trust_id=context.trust_id,
|
||||
username=CONF.keystone_authtoken.username,
|
||||
password=CONF.keystone_authtoken.password,
|
||||
user_domain_name=CONF.keystone_authtoken.user_domain_name
|
||||
)
|
||||
else:
|
||||
auth = ks_identity_v3.Token(
|
||||
auth_url=keystone_endpoint.url,
|
||||
token=context.auth_token,
|
||||
project_id=context.project_id
|
||||
)
|
||||
|
||||
return self._get_client_class()(
|
||||
endpoint_url=senlin_endpoint.url,
|
||||
session=ks_session.Session(auth=auth),
|
||||
tenant_id=context.project_id,
|
||||
region_name=senlin_endpoint.region,
|
||||
auth_url=keystone_endpoint.url,
|
||||
insecure=context.insecure
|
||||
)
|
||||
|
||||
@classmethod
|
||||
def _get_fake_client(cls):
|
||||
# Senlin client changed interface a bit, let's skip __init__ altogether
|
||||
class_ = cls._get_client_class()
|
||||
return class_.__new__(class_)
|
||||
|
||||
|
||||
class AodhAction(base.OpenStackAction):
|
||||
_service_type = 'alarming'
|
||||
|
||||
|
@ -1084,55 +1084,6 @@
|
||||
"certificates_rotate_ca": "certificates.rotate_ca",
|
||||
"mservices_list": "mservices.list"
|
||||
},
|
||||
"murano":{
|
||||
"_comment": "It uses muranoclient.v1.",
|
||||
"categories_add": "categories.add",
|
||||
"categories_delete": "categories.delete",
|
||||
"categories_get": "categories.get",
|
||||
"categories_list": "categories.list",
|
||||
"deployments_list": "deployments.list",
|
||||
"deployments_reports": "deployments.reports",
|
||||
"env_templates_clone": "env_templates.clone",
|
||||
"env_templates_create": "env_templates.create",
|
||||
"env_templates_create_app": "env_templates.create_app",
|
||||
"env_templates_create_env": "env_templates.create_env",
|
||||
"env_templates_delete": "env_templates.delete",
|
||||
"env_templates_delete_app": "env_templates.delete_app",
|
||||
"env_templates_get": "env_templates.get",
|
||||
"env_templates_list": "env_templates.list",
|
||||
"env_templates_update": "env_templates.update",
|
||||
"environments_create": "environments.create",
|
||||
"environments_delete": "environments.delete",
|
||||
"environments_find": "environments.find",
|
||||
"environments_findall": "environments.findall",
|
||||
"environments_get": "environments.get",
|
||||
"environments_last_status": "environments.last_status",
|
||||
"environments_list": "environments.list",
|
||||
"environments_update": "environments.update",
|
||||
"instance_statistics_get": "instance_statistics.get",
|
||||
"instance_statistics_get_aggregated": "instance_statistics.get_aggregated",
|
||||
"packages_create": "packages.create",
|
||||
"packages_delete": "packages.delete",
|
||||
"packages_download": "packages.download",
|
||||
"packages_filter": "packages.filter",
|
||||
"packages_get": "packages.get",
|
||||
"packages_get_logo": "packages.get_logo",
|
||||
"packages_get_supplier_logo": "packages.get_supplier_logo",
|
||||
"packages_get_ui": "packages.get_ui",
|
||||
"packages_list": "packages.list",
|
||||
"packages_toggle_active": "packages.toggle_active",
|
||||
"packages_toggle_public": "packages.toggle_public",
|
||||
"packages_update": "packages.update",
|
||||
"request_statistics_list": "request_statistics.list",
|
||||
"services_delete": "services.delete",
|
||||
"services_get": "services.get",
|
||||
"services_list": "services.list",
|
||||
"services_post": "services.post",
|
||||
"sessions_configure": "sessions.configure",
|
||||
"sessions_delete": "sessions.delete",
|
||||
"sessions_deploy": "sessions.deploy",
|
||||
"sessions_get": "sessions.get"
|
||||
},
|
||||
"tacker":{
|
||||
"_comment": "It uses tackerclient.v1_0.",
|
||||
"list_extensions": "list_extensions",
|
||||
@ -1169,57 +1120,6 @@
|
||||
"list_vims": "list_vims",
|
||||
"show_vim": "show_vim"
|
||||
},
|
||||
"senlin":{
|
||||
"_comment": "It uses senlinclient.v1_0.",
|
||||
"profile_types": "profile_types",
|
||||
"get_profile_type": "get_profile_type",
|
||||
"profiles": "profiles",
|
||||
"create_profile": "create_profile",
|
||||
"get_profile": "get_profile",
|
||||
"update_profile": "update_profile",
|
||||
"delete_profile": "delete_profile",
|
||||
"validate_profile": "validate_profile",
|
||||
"policy_types": "policy_types",
|
||||
"get_policy_type": "get_policy_type",
|
||||
"policies": "policies",
|
||||
"create_policy": "create_policy",
|
||||
"get_policy": "get_policy",
|
||||
"update_policy": "update_policy",
|
||||
"delete_policy": "delete_policy",
|
||||
"validate_policy": "validate_policy",
|
||||
"clusters": "clusters",
|
||||
"create_cluster": "create_cluster",
|
||||
"get_cluster": "get_cluster",
|
||||
"update_cluster": "update_cluster",
|
||||
"delete_cluster": "delete_cluster",
|
||||
"cluster_add_nodes": "cluster_add_nodes",
|
||||
"cluster_del_nodes": "cluster_del_nodes",
|
||||
"cluster_resize": "cluster_resize",
|
||||
"cluster_scale_out": "cluster_scale_out",
|
||||
"cluster_scale_in": "cluster_scale_in",
|
||||
"cluster_policies": "cluster_policies",
|
||||
"get_cluster_policy": "get_cluster_policy",
|
||||
"cluster_attach_policy": "cluster_attach_policy",
|
||||
"cluster_detach_policy": "cluster_detach_policy",
|
||||
"cluster_update_policy": "cluster_update_policy",
|
||||
"check_cluster": "check_cluster",
|
||||
"recover_cluster": "recover_cluster",
|
||||
"nodes": "nodes",
|
||||
"create_node": "create_node",
|
||||
"get_node": "get_node",
|
||||
"update_node": "update_node",
|
||||
"delete_node": "delete_node",
|
||||
"check_node": "check_node",
|
||||
"recover_node": "recover_node",
|
||||
"receivers": "receivers",
|
||||
"create_receiver": "create_receiver",
|
||||
"get_receiver": "get_receiver",
|
||||
"delete_receiver": "delete_receiver",
|
||||
"events": "events",
|
||||
"get_event": "get_event",
|
||||
"actions": "actions",
|
||||
"get_action": "get_action"
|
||||
},
|
||||
"vitrage": {
|
||||
"_comment": "It uses vitrageclient.v1.",
|
||||
"alarm_list": "alarm.list",
|
||||
|
@ -39,8 +39,7 @@ openstack_actions_opts = [
|
||||
cfg.ListOpt(
|
||||
'modules-support-region',
|
||||
default=['nova', 'glance', 'heat', 'neutron', 'cinder',
|
||||
'trove', 'ironic', 'designate', 'murano', 'tacker', 'senlin',
|
||||
'aodh', 'gnocchi'],
|
||||
'trove', 'ironic', 'designate', 'tacker', 'aodh', 'gnocchi'],
|
||||
help='List of module names that support region in actions.'
|
||||
),
|
||||
cfg.StrOpt(
|
||||
|
@ -53,16 +53,14 @@ MODULE_MAPPING = {
|
||||
'designate': ['designate.quotas_list', actions.DesignateAction],
|
||||
'manila': ['manila.shares_list', actions.ManilaAction],
|
||||
'magnum': ['magnum.mservices_list', actions.MagnumAction],
|
||||
'murano': ['murano.deployments_list', actions.MuranoAction],
|
||||
'tacker': ['tacker.list_vims', actions.TackerAction],
|
||||
'senlin': ['senlin.get_profile', actions.SenlinAction],
|
||||
'aodh': ['aodh.alarm_list', actions.AodhAction],
|
||||
'gnocchi': ['gnocchi.metric_list', actions.GnocchiAction],
|
||||
'vitrage': ['vitrage.alarm_get', actions.VitrageAction],
|
||||
'zun': ['zun.containers_list', actions.ZunAction]
|
||||
}
|
||||
|
||||
EXTRA_MODULES = ['neutron', 'swift', 'zaqar', 'tacker', 'senlin']
|
||||
EXTRA_MODULES = ['neutron', 'swift', 'zaqar', 'tacker']
|
||||
|
||||
|
||||
CONF = cfg.CONF
|
||||
|
@ -254,21 +254,6 @@ class OpenStackActionTest(base.BaseTestCase):
|
||||
self.assertTrue(mocked().domain.get.called)
|
||||
mocked().domain.get.assert_called_once_with(domain="example.com")
|
||||
|
||||
@mock.patch.object(actions.MuranoAction, '_get_client')
|
||||
def test_murano_action(self, mocked):
|
||||
mock_ctx = mock.Mock()
|
||||
method_name = "categories.get"
|
||||
action_class = actions.MuranoAction
|
||||
action_class.client_method_name = method_name
|
||||
params = {'category_id': '1234-abcd'}
|
||||
action = action_class(**params)
|
||||
action.run(mock_ctx)
|
||||
|
||||
self.assertTrue(mocked().categories.get.called)
|
||||
mocked().categories.get.assert_called_once_with(
|
||||
category_id="1234-abcd"
|
||||
)
|
||||
|
||||
@mock.patch.object(actions.TackerAction, '_get_client')
|
||||
def test_tacker_action(self, mocked):
|
||||
mock_ctx = mock.Mock()
|
||||
@ -284,21 +269,6 @@ class OpenStackActionTest(base.BaseTestCase):
|
||||
vim_id="1234-abcd"
|
||||
)
|
||||
|
||||
@mock.patch.object(actions.SenlinAction, '_get_client')
|
||||
def test_senlin_action(self, mocked):
|
||||
mock_ctx = mock.Mock()
|
||||
action_class = actions.SenlinAction
|
||||
action_class.client_method_name = "get_cluster"
|
||||
action = action_class(cluster_id='1234-abcd')
|
||||
|
||||
action.run(mock_ctx)
|
||||
|
||||
self.assertTrue(mocked().get_cluster.called)
|
||||
|
||||
mocked().get_cluster.assert_called_once_with(
|
||||
cluster_id="1234-abcd"
|
||||
)
|
||||
|
||||
@mock.patch.object(actions.AodhAction, '_get_client')
|
||||
def test_aodh_action(self, mocked):
|
||||
mock_ctx = mock.Mock()
|
||||
|
@ -0,0 +1,5 @@
|
||||
---
|
||||
upgrade:
|
||||
- |
|
||||
Support for Murano and Senlin was removed, because these two projects were
|
||||
retired.
|
@ -2,10 +2,6 @@
|
||||
# date but we do not test them so no guarantee of having them all correct. If
|
||||
# you find any incorrect lower bounds, let us know or propose a fix.
|
||||
|
||||
# The order of packages is significant, because pip processes them in the order
|
||||
# of appearance. Changing the order has an impact on the overall integration
|
||||
# process, which may cause wedges in the gate later.
|
||||
|
||||
pbr!=2.1.0,>=2.0.0 # Apache-2.0
|
||||
Babel!=2.4.0,>=2.3.4 # BSD
|
||||
oslo.log>=3.36.0 # Apache-2.0
|
||||
@ -22,10 +18,8 @@ python-keystoneclient>=3.8.0 # Apache-2.0
|
||||
python-mistralclient!=3.2.0,>=3.1.0 # Apache-2.0
|
||||
python-manilaclient>=1.23.0 # Apache-2.0
|
||||
python-magnumclient>=2.15.0 # Apache-2.0
|
||||
python-muranoclient>=1.3.0 # Apache-2.0
|
||||
python-neutronclient>=6.7.0 # Apache-2.0
|
||||
python-novaclient>=9.1.0 # Apache-2.0
|
||||
python-senlinclient>=1.11.0 # Apache-2.0
|
||||
python-swiftclient>=3.2.0 # Apache-2.0
|
||||
python-tackerclient>=0.8.0 # Apache-2.0
|
||||
python-troveclient>=2.2.0 # Apache-2.0
|
||||
|
@ -1,12 +1,7 @@
|
||||
# The order of packages is significant, because pip processes them in the order
|
||||
# of appearance. Changing the order has an impact on the overall integration
|
||||
# process, which may cause wedges in the gate later.
|
||||
|
||||
hacking>=3.0.1 # Apache-2.0
|
||||
coverage>=6.4.3 # Apache-2.0
|
||||
doc8>=0.6.0 # Apache-2.0
|
||||
oslotest>=3.2.0 # Apache-2.0
|
||||
stestr>=2.0.0 # Apache-2.0
|
||||
unittest2>=1.1.0 # BSD
|
||||
requests-mock>=1.2.0 # Apache-2.0
|
||||
fixtures>=3.0.0 # Apache-2.0/BSD
|
||||
|
@ -52,8 +52,6 @@ from manilaclient import base as manila_base
|
||||
from manilaclient.v2 import client as manilaclient
|
||||
from mistralclient.api import base as mistral_base
|
||||
from mistralclient.api.v2 import client as mistralclient
|
||||
from muranoclient.common import base as murano_base
|
||||
from muranoclient.v1 import client as muranoclient
|
||||
from novaclient import base as nova_base
|
||||
from novaclient import client as novaclient
|
||||
from troveclient import base as trove_base
|
||||
@ -103,7 +101,6 @@ BASE_IRONIC_MANAGER = ironic_base.Manager
|
||||
BASE_BARBICAN_MANAGER = barbican_base.BaseEntityManager
|
||||
BASE_MANILA_MANAGER = manila_base.Manager
|
||||
BASE_MAGNUM_MANAGER = magnum_base.Manager
|
||||
BASE_MURANO_MANAGER = murano_base.Manager
|
||||
BASE_AODH_MANAGER = aodh_base.Manager
|
||||
BASE_GNOCCHI_MANAGER = gnocchi_base.Manager
|
||||
|
||||
@ -206,10 +203,6 @@ def get_magnum_client(**kwargs):
|
||||
return magnumclient.Client()
|
||||
|
||||
|
||||
def get_murano_client(**kwargs):
|
||||
return muranoclient.Client('')
|
||||
|
||||
|
||||
def get_aodh_client(**kwargs):
|
||||
return aodhclient.Client('')
|
||||
|
||||
@ -237,7 +230,6 @@ CLIENTS = {
|
||||
'mistral': get_mistral_client,
|
||||
'designate': get_designate_client,
|
||||
'magnum': get_magnum_client,
|
||||
'murano': get_murano_client,
|
||||
'aodh': get_aodh_client,
|
||||
'gnocchi': get_gnocchi_client,
|
||||
'manila': get_manila_client,
|
||||
@ -258,7 +250,6 @@ BASE_MANAGERS = {
|
||||
'mistral': BASE_MISTRAL_MANAGER,
|
||||
'designate': None,
|
||||
'magnum': BASE_MAGNUM_MANAGER,
|
||||
'murano': BASE_MURANO_MANAGER,
|
||||
'aodh': BASE_AODH_MANAGER,
|
||||
'gnocchi': BASE_GNOCCHI_MANAGER,
|
||||
'manila': BASE_MANILA_MANAGER,
|
||||
|
Loading…
Reference in New Issue
Block a user