ci: keep every runner off the default E2E ports

Branches that still free the fixed ports 3110, 3111, 5180 and 4321 keep
running on the shared host (main, the nightly run, other open PRs) until
they carry the per-runner ports. A job of ours on the runner without a
numeric suffix used exactly those defaults, so such a neighbour could
still kill it, and its own port freeing could kill the neighbour. The
unsuffixed runner now starts at offset 100, so no job from this workflow
touches the defaults in either direction.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01MRtGG9ARfqqhma3t85Ro2u
This commit is contained in:
Claude 2026-10-02 16:44:57 +00:00
parent bc980032e9
commit ddf5febdb3
No known key found for this signature in database

View File

@ -113,11 +113,13 @@ jobs:
run: test -n "$BOX_API_KEY" run: test -n "$BOX_API_KEY"
- name: Pick E2E ports for this runner - name: Pick E2E ports for this runner
# Several runners share one host. Each runner gets its own port set so the # Several runners share one host. Each runner gets its own port set so the
# port-freeing steps and the harness never touch another job's servers. # port-freeing steps and the harness never touch another job's servers. No runner
# uses the harness defaults: jobs from branches that still free the fixed ports
# cannot kill ours, and we cannot kill theirs.
run: | run: |
set -euo pipefail set -euo pipefail
suffix="${RUNNER_NAME##*-}" suffix="${RUNNER_NAME##*-}"
offset=0 offset=100
if [[ "$suffix" =~ ^[0-9]+$ ]]; then if [[ "$suffix" =~ ^[0-9]+$ ]]; then
offset=$((suffix * 100)) offset=$((suffix * 100))
fi fi