From bf0e695954632f723b57f175f2652b5db21c8127 Mon Sep 17 00:00:00 2001 From: xin liang Date: Mon, 27 Jan 2025 09:48:05 +0800 Subject: [PATCH] Dev: ui_configure: Add completer for 'configure schema' command To complete existing pacemaker-*.rng files under /usr/share/pacemaker directory --- crmsh/ui_configure.py | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/crmsh/ui_configure.py b/crmsh/ui_configure.py index 1812cfa09..06d93fc9a 100644 --- a/crmsh/ui_configure.py +++ b/crmsh/ui_configure.py @@ -2,8 +2,10 @@ # Copyright (C) 2013 Kristoffer Gronlund # See COPYING for license information. +import os import re import time +import glob from . import command from . import completers as compl from . import config @@ -191,6 +193,11 @@ def ra_agent_for_cpt(cpt): return agent +def schema_completer(): + files = glob.glob(os.path.join('/usr/share/pacemaker/', 'pacemaker-*.rng')) + return [os.path.basename(f) for f in files] + + class CompletionHelp(object): ''' Print some help on whatever last word in the line. @@ -958,6 +965,7 @@ def do_upgrade(self, context, force=None): return cib_factory.upgrade_validate_with(force=config.core.force or force) @command.skill_level('administrator') + @command.completers(compl.choice(schema_completer())) def do_schema(self, context, schema_st=None): "usage: schema []" if not schema_st: