f8ba650559
A crate split reaches every harness (#2160: 352 harnesses, 71 min on a Mac mini runner) and held the Mac mini's runners while other pull requests' parity jobs queued for over an hour. With the full-parity label, the job runs on the desktop's runner only (8 at a time) and waits for it while the desktop is in use; its timeout is 300 min, since a job under way when someone comes back goes on with 2 threads. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
26 lines
1.0 KiB
YAML
26 lines
1.0 KiB
YAML
name: run-parity
|
|
# A fork's pull request runs the parity job (parity.yml) on the Mac mini only when a maintainer who has read the
|
|
# change adds the run-parity label: once, on the commit the pull request has then. Remove the label and add it
|
|
# again after new pushes. A separate workflow, so that labels never start `checks`: there a label's run reported a
|
|
# skipped `verify`, and GitHub counts a skipped required check as passed.
|
|
on:
|
|
pull_request:
|
|
types: [labeled]
|
|
permissions:
|
|
contents: read
|
|
concurrency:
|
|
group: run-parity-${{ github.event.pull_request.number }}
|
|
cancel-in-progress: true
|
|
env:
|
|
# Test runs never reach the telemetry server: no live-count ping, no uploads (docs/telemetry.md).
|
|
HORIZON_TELEMETRY_URL: "off"
|
|
|
|
jobs:
|
|
parity:
|
|
if: github.event.label.name == 'run-parity'
|
|
uses: ./.github/workflows/parity.yml
|
|
with:
|
|
base: ${{ github.event.pull_request.base.sha }}
|
|
head: ${{ github.event.pull_request.head.sha }}
|
|
full: ${{ contains(github.event.pull_request.labels.*.name, 'full-parity') }}
|