diff options
author | Eric Engestrom <eric@igalia.com> | 2024-02-08 17:56:20 +0000 |
---|---|---|
committer | Marge Bot <emma+marge@anholt.net> | 2024-02-09 15:58:10 +0000 |
commit | 7154c1eb77ea644dfc02d69c9bd68eda0a31d4c1 (patch) | |
tree | 57487f830113ec95817114763b1f89c38d8cba3c /bin | |
parent | f40d32770a5f91b95450f2944c608fb0303da27c (diff) |
ci_run_n_monitor: implicitly include `parallel:` jobs
This avoids the surprising behaviour where `--target jobname` works for
some jobs but not others, because gitlab adds `X/N` at the end of these
job names.
If the user does specify something like `jobname 1/.*` to only run the
first, the extra `\d+/\d+` is ignored, just like if the job isn't
`parallel:` and therefore doesn't end with `X/N`.
If the user really wants to fail to match parallel jobs (previous
behaviour), they can simply add a `$` at the end of the job name/regex
(but also, I don't see why someone would want that behaviour).
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27530>
Diffstat (limited to 'bin')
-rwxr-xr-x | bin/ci/ci_run_n_monitor.py | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/bin/ci/ci_run_n_monitor.py b/bin/ci/ci_run_n_monitor.py index 795f7a1ea53..8831697e5ab 100755 --- a/bin/ci/ci_run_n_monitor.py +++ b/bin/ci/ci_run_n_monitor.py @@ -453,7 +453,12 @@ if __name__ == "__main__": print(f"Pipeline: {pipe.web_url}") target = '|'.join(args.target) - target_jobs_regex = re.compile(target.strip()) + target = target.strip() + + # Implicitly include `parallel:` jobs + target = f'({target})' + r'( \d+/\d+)?' + + target_jobs_regex = re.compile(target) deps = set() print("🞋 job: " + Fore.BLUE + target + Style.RESET_ALL) |