bin/ci: crnm: Don't overwrite the global sets

The skip_follow_statuses variable, used to check if we need to stay
monitoring the pipeline instead of jumping to the target job traces, is
based on COMPLETED_STATUSES set. But, in Python, we do shallow copies by
default, and changes on skip_follow_statuses reflected on
COMPLETED_STATUSES, which was making manual dependencies stop playing
when --force-manual was not given.

Fixes: 84d401aebf0832741716f947dd7e2e9aac1221ac

Signed-off-by: Guilherme Gallo <guilherme.gallo@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/30526>
This commit is contained in:
Guilherme Gallo
2024-08-05 18:40:01 -03:00
committed by Marge Bot
parent 282ad9d864
commit 24d64102fe

View File

@@ -126,7 +126,7 @@ def monitor_pipeline(
target_id: int = -1
name_field_pad: int = len(max(dependencies, key=len))+2
# In a running pipeline, we can skip following job traces that are in these statuses.
skip_follow_statuses = COMPLETED_STATUSES
skip_follow_statuses = COMPLETED_STATUSES.copy()
if not force_manual:
# If the target job is marked as manual and we don't force it to run, it will be skipped.
skip_follow_statuses.add("manual")