Skip to content

workflows/ci-debian.yml: pin each matrix job to its own runner label - #990

Open
insatomcat wants to merge 1 commit into
mainfrom
ci-debian-runner-labels
Open

workflows/ci-debian.yml: pin each matrix job to its own runner label#990
insatomcat wants to merge 1 commit into
mainfrom
ci-debian-runner-labels

Conversation

@insatomcat

Copy link
Copy Markdown
Member

The concurrency group added to serialize the standalone and cluster jobs on the shared test hardware had an unwanted side effect: GitHub only keeps one pending job per concurrency group, and a newly queued job evicts the one already waiting, which is then reported as cancelled. With cancel-in-progress set to false the running job is protected, but the pending one is not, and this is not configurable.

Three overlapping runs were enough to trigger it. In run 30283299611 the cluster job was queued at 16:14:32 behind a job from an older run, then cancelled at 16:15:07 when another run reached the same group.

The two Debian runners now carry a dedicated label each, so the runner queue itself serializes the jobs per hardware: jobs pile up instead of being cancelled, and a job can no longer land on the machine dedicated to the other topology. The concurrency group is therefore no longer needed.

The concurrency group added to serialize the standalone and cluster jobs
on the shared test hardware had an unwanted side effect: GitHub only
keeps one pending job per concurrency group, and a newly queued job
evicts the one already waiting, which is then reported as cancelled.
With cancel-in-progress set to false the running job is protected, but
the pending one is not, and this is not configurable.

Three overlapping runs were enough to trigger it. In run 30283299611 the
cluster job was queued at 16:14:32 behind a job from an older run, then
cancelled at 16:15:07 when another run reached the same group.

The two Debian runners now carry a dedicated label each, so the runner
queue itself serializes the jobs per hardware: jobs pile up instead of
being cancelled, and a job can no longer land on the machine dedicated
to the other topology. The concurrency group is therefore no longer
needed.

Signed-off-by: Florent Carli <florent.carli@rte-france.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant