GitHub serves a job's log only when its whole run has completed, and the Linux `check` takes over an hour, so a macOS failure's reason was unreadable for that long while the portable jobs sat in the same run. Each OS's run now completes on its own; the jobs are unchanged. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01HS8WZziDnyxunC23MUxrLp
37 lines
1.4 KiB
YAML
37 lines
1.4 KiB
YAML
# Every change: format, clippy and rustdoc with zero warnings, every test.
|
|
# Tools come from mise.toml, the same as on a laptop.
|
|
name: check
|
|
on:
|
|
push:
|
|
pull_request:
|
|
# A newer push to the same branch makes an older check pointless: it is
|
|
# cancelled, so only the newest reports.
|
|
concurrency:
|
|
group: check-${{ github.ref }}
|
|
cancel-in-progress: true
|
|
jobs:
|
|
check:
|
|
runs-on: ubuntu-24.04
|
|
# The runner's disk is small (the first run after P6 landed died in
|
|
# the linker: "No space left on device", ld killed by SIGBUS). A fresh
|
|
# runner gains nothing from incremental caches, and line tables keep
|
|
# file:line in a panic's backtrace at a fraction of full debug info.
|
|
env:
|
|
CARGO_INCREMENTAL: "0"
|
|
CARGO_PROFILE_DEV_DEBUG: line-tables-only
|
|
CARGO_PROFILE_TEST_DEBUG: line-tables-only
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
- name: Room for the build (the image ships toolchains we never use)
|
|
run: |
|
|
sudo rm -rf /usr/share/dotnet /usr/local/lib/android /opt/ghc \
|
|
/opt/hostedtoolcache/CodeQL /usr/local/.ghcup
|
|
df -h / | tail -1
|
|
- uses: jdx/mise-action@v2
|
|
- name: GUI build dependencies
|
|
run: sudo apt-get update && sudo apt-get install -y libxkbcommon-dev libgtk-3-dev
|
|
- run: just check
|
|
- name: What the build used
|
|
if: always()
|
|
run: df -h / | tail -1
|