Compare commits

...

3 Commits

Author SHA1 Message Date
6dea33bc22 Revert "ci(build): persist cargo registry via CARGO_HOME on existing volume"
This reverts commit bed8aa7f8879a0269d28349b82b1a2c6e8d58b9c.
2026-04-24 11:41:43 +02:00
11e8e1355a ci(build): persist cargo registry via CARGO_HOME on existing volume
The compose mount `./runner-cargo-target:/cache/target` already
persists the target dir. Set CARGO_HOME to a subdir of that mount so
the downloaded-crates index + git cache survive too — otherwise every
build re-fetches every dep. No server-side compose change needed.
2026-04-24 11:41:43 +02:00
39b04d3829 ci(build): drop unverified OOM throttle, run cargo with -j2
The previous CARGO_BUILD_JOBS=1 + nice + ionice throttling rested on an
assumed OOM diagnosis for run 86 (2026-04-23) that was never confirmed
via dmesg/journalctl. Build times tripled for no verified reason.
Remove the throttle; if a real OOM is captured in the future, re-add
limits with actual evidence.
2026-04-24 11:41:43 +02:00

View File

@ -53,14 +53,14 @@ jobs:
sudo pacman -S --needed --noconfirm $MAKEDEPS sudo pacman -S --needed --noconfirm $MAKEDEPS
fi fi
# Resource-constrained build. The act_runner shares CPU/RAM/I/O # Parallel build with two cargo jobs. Previous single-threaded
# with the Gitea host (network-host mode). A parallel Rust build # throttling was based on an unverified OOM assumption (run 86
# has OOM-killed the host: run 86 on 2026-04-23 stopped mid-compile # on 2026-04-23 stalled; no dmesg/journalctl evidence of
# with no error, taking gitea HTTPS down ~11 min. Force single-job # OOMKiller was ever captured). If a real OOM happens, capture
# compile and low CPU/IO priority so the host stays responsive. # `dmesg | grep -i "killed process"` first before re-throttling.
export CARGO_BUILD_JOBS=1 export CARGO_BUILD_JOBS=2
export MAKEFLAGS="-j1" export MAKEFLAGS="-j2"
nice -n 19 ionice -c 3 makepkg -sfd --noconfirm makepkg -sfd --noconfirm
# makepkg can emit multiple artifacts per build (main + -debug # makepkg can emit multiple artifacts per build (main + -debug
# split package). Upload each. Arch filename convention: # split package). Upload each. Arch filename convention: