From a4d32f43d3b51a7c5eafe506bc79f331011d55aa Mon Sep 17 00:00:00 2001 From: Florian Fischer <florian.fischer@muhq.space> Date: Sun, 9 May 2021 11:45:19 +0200 Subject: [PATCH] [eval] fail hard if a flavor selector does not select any available flavor --- eval.py | 34 ++++++++++++++++++++++------------ 1 file changed, 22 insertions(+), 12 deletions(-) diff --git a/eval.py b/eval.py index 61efc42..3e0ab5a 100755 --- a/eval.py +++ b/eval.py @@ -20,6 +20,12 @@ ARTIFACT_DESC = subprocess.check_output( 'git describe --dirty --always'.split(), cwd=ROOT_DIR, text=True)[:-1] +def err(msg: str): + """print error message and exit with statsu 1""" + print(f'ERROR: {msg}', file=sys.stderr) + sys.exit(1) + + def emper_create_env_worker_count(worker_count): return f'EMPER_WORKER_COUNT={worker_count}' @@ -720,6 +726,22 @@ if __name__ == '__main__': _sizes = args.sizes or SIZES ARGS = list(itertools.product(_cons, _sizes)) + # select emper flavors to evaluate + selected_flavors = EMPER_FLAVORS + if args.flavors: + filtered_flavors = {} + for selected_flavor in args.flavors: + selection = { + f: selected_flavors[f] + for f in fnmatch.filter(selected_flavors.keys(), + selected_flavor) + } + if not selection: + err(f'{selected_flavor} does not select any available flavor') + filtered_flavors.update(selection) + + selected_flavors = filtered_flavors + print("Building the artifact ...") make_cmd = ['make'] if not args.verbose: @@ -743,18 +765,6 @@ if __name__ == '__main__': write_desc(DATA_DIR, verbose=args.verbose) prepare_client(args.verbose) - selected_flavors = EMPER_FLAVORS - if args.flavors: - filtered_flavors = {} - for selected_flavor in args.flavors: - filtered_flavors.update({ - f: selected_flavors[f] - for f in fnmatch.filter(selected_flavors.keys(), - selected_flavor) - }) - - selected_flavors = filtered_flavors - # generate emper flavors if 'emper' in SERVER_CMDS: prepare_emper_flavors(selected_flavors, args.verbose) -- GitLab