Send patches - preferably formatted by git format-patch - to patches at archlinux32 dot org.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYash Tripathi <tripathiyash97@gmail.com>2021-06-10 18:36:15 +0530
committerGitHub <noreply@github.com>2021-06-10 15:06:15 +0200
commitfcd0acfef261ad83f0d470957f94e6b046f66411 (patch)
tree9125442224e50012d951c3f9839b2d81a77c44d0
parent14d0685edc18515e3eb2bbe6e8d0df5c589b3f04 (diff)
added --dry-run flag (#570)
* added --dry-run flag
-rw-r--r--archinstall/__init__.py6
-rw-r--r--examples/guided.py5
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.')