From fcd0acfef261ad83f0d470957f94e6b046f66411 Mon Sep 17 00:00:00 2001 From: Yash Tripathi Date: Thu, 10 Jun 2021 18:36:15 +0530 Subject: added --dry-run flag (#570) * added --dry-run flag --- archinstall/__init__.py | 6 +++++- examples/guided.py | 5 ++++- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/archinstall/__init__.py b/archinstall/__init__.py index bbad316d..84595528 100644 --- a/archinstall/__init__.py +++ b/archinstall/__init__.py @@ -32,7 +32,9 @@ def initialize_arguments(): parser.add_argument("--config", nargs="?", help="JSON configuration file or URL") parser.add_argument("--creds", nargs="?", help="JSON credentials configuration file") parser.add_argument("--silent", action="store_true", - help="Warning!!! No prompts, ignored if config is not passed") + help="WARNING: Disables all prompts for input and confirmation. If no configuration is provided, this is ignored") + parser.add_argument("--dry-run", action="store_true", + help="Generates a configuration file and then exits instead of performing an installation") parser.add_argument("--script", default="guided", nargs="?", help="Script to run for installation", type=str) args, unknowns = parser.parse_known_args() if args.config is not None: @@ -61,6 +63,8 @@ def initialize_arguments(): key, val = arg[2:], True config[key] = val config["script"] = args.script + if args.dry_run is not None: + config["dry_run"] = args.dry_run return config diff --git a/examples/guided.py b/examples/guided.py index 56c054fc..266efbd4 100644 --- a/examples/guided.py +++ b/examples/guided.py @@ -270,7 +270,10 @@ def perform_installation_steps(): with open("/var/log/archinstall/user_configuration.json", "w") as config_file: config_file.write(user_configuration) print() - + + if archinstall.arguments.get('dry_run'): + exit(0) + if not archinstall.arguments.get('silent'): input('Press Enter to continue.') -- cgit v1.2.3-54-g00ecf