mirror of
https://github.com/storytold/craft-common-actions.git
synced 2026-11-15 15:02:24 +00:00
The release FreeBSD jobs keyed their Cargo cache on toJSON(inputs), and contributors-artifact is contributor-snapshot-<run id>-<attempt>, so every run wrote an entry no other run could restore: on 11 Nov every release built FreeBSD cold. The key now holds only the inputs that change the FreeBSD build (app name, architecture, craft-fonts ref, FreeBSD release); dry-run is left out too, so a dry run warms the cache a release restores. A test makes every new input pick a side. The aarch64 job cross-compiles, and Cargo writes that output to target/aarch64-unknown-freebsd/release, which the cache action never saved: only the host build scripts in target/release were kept. The action takes the triple as a new target input and saves and restores that directory too.