forked from rpms/leapp-repository
51 lines
1.6 KiB
Diff
51 lines
1.6 KiB
Diff
|
From f83702c6e78b535a9511e0842c478773a1271cad Mon Sep 17 00:00:00 2001
|
||
|
From: =?UTF-8?q?Petr=20Men=C5=A1=C3=ADk?= <pemensik@redhat.com>
|
||
|
Date: Wed, 30 Aug 2023 16:58:45 +0200
|
||
|
Subject: [PATCH 12/38] Add isccfg library manual running mode
|
||
|
|
||
|
For simplified manual testing add waking mode to parser script. Allows
|
||
|
direct test run displaying just chosen statements or blocks.
|
||
|
---
|
||
|
.../el7toel8/libraries/isccfg.py | 28 +++++++++++++++++++
|
||
|
1 file changed, 28 insertions(+)
|
||
|
|
||
|
diff --git a/repos/system_upgrade/el7toel8/libraries/isccfg.py b/repos/system_upgrade/el7toel8/libraries/isccfg.py
|
||
|
index dff9bf24..1d29ff21 100644
|
||
|
--- a/repos/system_upgrade/el7toel8/libraries/isccfg.py
|
||
|
+++ b/repos/system_upgrade/el7toel8/libraries/isccfg.py
|
||
|
@@ -948,3 +948,31 @@ class IscConfigParser(object):
|
||
|
self.load_main_config()
|
||
|
self.load_included_files()
|
||
|
pass
|
||
|
+
|
||
|
+
|
||
|
+if __name__ == '__main__':
|
||
|
+ """Run parser to default path or path in the first argument.
|
||
|
+
|
||
|
+ Additional parameters are statements or blocks to print.
|
||
|
+ Defaults to options and zone.
|
||
|
+ """
|
||
|
+
|
||
|
+ from sys import argv
|
||
|
+
|
||
|
+ def print_cb(section, state):
|
||
|
+ print(section)
|
||
|
+
|
||
|
+ cfgpath = IscConfigParser.CONFIG_FILE
|
||
|
+ if len(argv) > 1:
|
||
|
+ cfgpath = argv[1]
|
||
|
+ if len(argv) > 2:
|
||
|
+ cb = {}
|
||
|
+ for key in argv[2:]:
|
||
|
+ cb[key] = print_cb
|
||
|
+ else:
|
||
|
+ cb = {'options': print_cb, 'zone': print_cb}
|
||
|
+
|
||
|
+ parser = IscConfigParser(cfgpath)
|
||
|
+ for section in parser.FILES_TO_CHECK:
|
||
|
+ print("# Walking file '{}'".format(section.path))
|
||
|
+ parser.walk(section.root_section(), cb)
|
||
|
--
|
||
|
2.41.0
|
||
|
|