From ac3b5306cac73f1a62af2d36622a9d0fdc19d68b Mon Sep 17 00:00:00 2001 From: Rahix <rahix@rahix.de> Date: Thu, 17 Aug 2023 21:11:21 +0200 Subject: [PATCH] sim: Use argparse instead of hack arg parsing --- .gitlab-ci.yml | 2 +- sim/run.py | 24 ++++++++++++++++++------ 2 files changed, 19 insertions(+), 7 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 8a735b120f..4ee075e06a 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -55,7 +55,7 @@ build: simulate: stage: build script: - - python3 sim/run.py screenshot + - python3 sim/run.py --screenshot artifacts: expose_as: 'Smulator Screenshot' paths: ['flow3r.png'] diff --git a/sim/run.py b/sim/run.py index ef9df48e8e..eae0f00072 100644 --- a/sim/run.py +++ b/sim/run.py @@ -6,6 +6,7 @@ import importlib.util import os import sys import builtins +import argparse projectpath = os.path.dirname(os.path.dirname(os.path.realpath(__file__))) @@ -112,13 +113,24 @@ def _stat(path): os.stat = _stat -if len(sys.argv) >= 2 and sys.argv[1] == "screenshot": + +def sim_main(): + parser = argparse.ArgumentParser() + parser.add_argument("--screenshot", action="store_true", default=False) + parser.add_argument("override_app", nargs="?") + args = parser.parse_args() + import _sim - _sim.SCREENSHOT = True -elif len(sys.argv) == 2: - import st3m.run + _sim.SCREENSHOT = args.screenshot + + if args.override_app is not None: + import st3m.run + + st3m.run.override_main_app = args.override_app + + import main - st3m.run.override_main_app = sys.argv[1] -import main +if __name__ == "__main__": + sim_main() -- GitLab