diff options
author | Devaev Maxim <[email protected]> | 2020-10-11 04:46:50 +0300 |
---|---|---|
committer | Devaev Maxim <[email protected]> | 2020-10-11 04:46:50 +0300 |
commit | a7f3773e0b47ddeeef5550859927fd4630b14da7 (patch) | |
tree | e793df2f4ac932ed1563cb22f6cc259ff413b5f9 /kvmd/apps/__init__.py | |
parent | 51ac65d542e041c4f75f0428fe4e84a10ef1c356 (diff) |
service --run
Diffstat (limited to 'kvmd/apps/__init__.py')
-rw-r--r-- | kvmd/apps/__init__.py | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/kvmd/apps/__init__.py b/kvmd/apps/__init__.py index 7cdaa53b..0318ac09 100644 --- a/kvmd/apps/__init__.py +++ b/kvmd/apps/__init__.py @@ -104,6 +104,7 @@ def init( prog: Optional[str]=None, description: Optional[str]=None, add_help: bool=True, + check_run: bool=False, argv: Optional[List[str]]=None, **load: bool, ) -> Tuple[argparse.ArgumentParser, List[str], Section]: @@ -118,6 +119,9 @@ def init( help="Override config options list (like sec/sub/opt=value)") args_parser.add_argument("-m", "--dump-config", dest="dump_config", action="store_true", help="View current configuration (include all overrides)") + if check_run: + args_parser.add_argument("--run", dest="run", action="store_true", + help="Run the service") (options, remaining) = args_parser.parse_known_args(argv) if options.dump_config: @@ -135,6 +139,14 @@ def init( logging.captureWarnings(True) logging.config.dictConfig(config.logging) + + if check_run and not options.run: + raise SystemExit( + "To prevent accidental startup, you must specify the --run option to start.\n" + "Try the --help option to find out what this service does.\n" + "Make sure you understand exactly what you are doing!" + ) + return (args_parser, remaining, config) |