mirror of
https://github.com/jmcorgan/fips.git
synced 2026-10-05 19:18:25 +00:00
Four packaging workflows start on a release tag. Three of them wait for the GitHub Release object to appear, polling twenty times at fifteen seconds. The OpenWrt job did not wait: it created the object itself with generated notes. So whichever got there first decided what the release page said. When the OpenWrt job won, the written release notes were stranded behind an auto-generated commit list, recoverable only by editing the release after the fact. The ordering held at v0.4.1 by timing rather than by design, and v0.5.0 adds a fifth job to the same five-minute budget, which makes it tighter. The OpenWrt job now waits for the release exactly as the other three do, then uploads its .ipk, .apk and checksums with gh release upload --clobber. No workflow creates the release object any more, so it is created once, deliberately, by whoever pushes the tag. This does mean all four jobs time out after five minutes if the release is never created. That is intended: the tag push and the release creation are one sitting, and a timeout is a better failure than a release page nobody wrote.