From 922a6c1c0388ce14b2c1c250e17504d60182d6ca Mon Sep 17 00:00:00 2001 From: Myasnikov Daniil Date: Wed, 29 Jul 2026 14:53:44 +0500 Subject: [PATCH] ci: install flux in the release-1.5 cache warmer `make build` finishes at packages/core/installer, whose image-packages target shells out to `flux push artifact`. The warmer used to target the self-hosted runner, which had flux baked in; #3469 moved it to the ephemeral shape without carrying over the toolchain step that main's warmer and pull-requests.yaml both have for exactly this reason. Confirmed on the first run after #3469 merged (run 30430753152): it failed at 49 minutes with `/bin/sh: 1: flux: not found` on Makefile:35, the last of 28 packages. Everything before it had already exported its cache -- 87 export operations, 70 cache manifests, 34 repos created under CACHE_REGISTRY, including all six ubuntu-container-disk refs -- so the cache came out warm and only the cozystack-packages artifact push was lost. A red warmer is still a broken signal, and nothing else would have reported it. Assisted-By: Claude Signed-off-by: Myasnikov Daniil --- .github/workflows/build-main.yaml | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/.github/workflows/build-main.yaml b/.github/workflows/build-main.yaml index 55e61fa7d..cfef7f303 100644 --- a/.github/workflows/build-main.yaml +++ b/.github/workflows/build-main.yaml @@ -74,6 +74,16 @@ jobs: # .git/config where a later build step could read it. persist-credentials: false + # `make build` ends at packages/core/installer, whose image-packages target + # shells out to `flux push artifact`. The self-hosted runner this workflow + # used to target had flux baked in; the ephemeral shape does not, so without + # this the warmer builds all 28 packages and then fails on the last one. + # pull-requests.yaml installs it for the same reason. Idempotent. + - name: Set up build toolchain + run: | + command -v flux >/dev/null \ + || curl -fsSL https://fluxcd.io/install.sh | sudo bash + - name: Set up Docker config run: | if [ -d ~/.docker ]; then