Implement conflict resolution

Take advantage of functionality recently introduced in cliff to allow us
to prefer commands that are in-tree over those provided via plugin
packages. This will allow us to move the extensions themselves in-tree.

Change-Id: I5dd9bc9743bea779ea1b4a71264c9a77c80033b3
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
This commit is contained in:
Stephen Finucane
2025-11-24 12:28:26 +00:00
parent 97c2238df1
commit 060299c749
2 changed files with 12 additions and 3 deletions

View File

@@ -26,16 +26,25 @@ from osc_lib import shell
import openstackclient
from openstackclient.common import clientmanager
DEFAULT_DOMAIN = 'default'
# list of modules that were originally out-of-tree and are now in
# core OSC
IGNORED_MODULES = (
'neutron_taas.taas_client.osc',
'neutronclient.osc.v2.taas',
)
class OpenStackShell(shell.OpenStackShell):
def __init__(self):
command_manager = commandmanager.CommandManager(
'openstack.cli', ignored_modules=IGNORED_MODULES
)
super().__init__(
description=__doc__.strip(),
version=openstackclient.__version__,
command_manager=commandmanager.CommandManager('openstack.cli'),
command_manager=command_manager,
deferred_help=True,
)