From ada889328d6bc09a9382ae0b1d2a8e5207ecebf6 Mon Sep 17 00:00:00 2001 From: Dan Bungert Date: Wed, 14 Jul 2021 16:40:22 -0600 Subject: [PATCH] Verify that machine-config arg is a file If machine-config is pointed to a non-existant file, dryrun can kind of unhelpfully hang without much indication that anything is happening. --- console_conf/cmd/tui.py | 1 + subiquity/cmd/server.py | 1 + subiquitycore/prober.py | 3 +-- 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/console_conf/cmd/tui.py b/console_conf/cmd/tui.py index d3359d31..b1ba6f91 100755 --- a/console_conf/cmd/tui.py +++ b/console_conf/cmd/tui.py @@ -44,6 +44,7 @@ def parse_options(argv): help='Run the installer in ascii mode.') parser.add_argument('--machine-config', metavar='CONFIG', dest='machine_config', + type=argparse.FileType(), help="Don't Probe. Use probe data file") parser.add_argument('--screens', action='append', dest='screens', default=[]) diff --git a/subiquity/cmd/server.py b/subiquity/cmd/server.py index 0a7ee42f..54244f4c 100644 --- a/subiquity/cmd/server.py +++ b/subiquity/cmd/server.py @@ -36,6 +36,7 @@ def make_server_args_parser(): parser.add_argument('--socket') parser.add_argument('--machine-config', metavar='CONFIG', dest='machine_config', + type=argparse.FileType(), help="Don't Probe. Use probe data file") parser.add_argument('--bootloader', choices=['none', 'bios', 'prep', 'uefi'], diff --git a/subiquitycore/prober.py b/subiquitycore/prober.py index 8adc51dd..dc26ed0c 100644 --- a/subiquitycore/prober.py +++ b/subiquitycore/prober.py @@ -29,8 +29,7 @@ class Prober(): def __init__(self, machine_config, debug_flags): self.saved_config = None if machine_config: - with open(machine_config) as mc: - self.saved_config = yaml.safe_load(mc) + self.saved_config = yaml.safe_load(machine_config) self.debug_flags = debug_flags log.debug('Prober() init finished, data:{}'.format(self.saved_config))