From 70a5663f79e9d43d4fa3c5beafaf1301f5f1e3a8 Mon Sep 17 00:00:00 2001 From: claude-ops Date: Wed, 10 Jun 2026 10:11:18 +0000 Subject: [PATCH] =?UTF-8?q?ci:=20setup-go=20cache:false=20everywhere=20?= =?UTF-8?q?=E2=80=94=20actions/cache=20untars=20over=20the=20bind-mounted?= =?UTF-8?q?=20GOCACHE=20(File=20exists=20->=20partial=20cache=20->=20arch-?= =?UTF-8?q?lint/race-link=20failures);=20runner-level=20cache=20supersedes?= =?UTF-8?q?=20it?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitea/workflows/ci.yml | 8 +++++++- .gitea/workflows/release.yml | 16 ++++++++++++++-- 2 files changed, 21 insertions(+), 3 deletions(-) diff --git a/.gitea/workflows/ci.yml b/.gitea/workflows/ci.yml index 8cae493..ef51319 100644 --- a/.gitea/workflows/ci.yml +++ b/.gitea/workflows/ci.yml @@ -30,7 +30,13 @@ jobs: - uses: actions/setup-go@v5 with: go-version: '1.25' - cache: true + # cache:false — the self-hosted runner bind-mounts a persistent + # GOCACHE/GOMODCACHE (/var/cache/ci-go-{build,mod}); actions/cache is + # redundant and corrupts it by untarring over the bind mount ("File + # exists" -> "Failed to restore" -> partial cache -> linker/typecheck + # errors on heavy jobs, e.g. test -race link "too many errors" and + # go-arch-lint "without types"). Fleet sweep after the cp ci.yml find. + cache: false - name: Tidy run: go mod tidy && git diff --exit-code go.sum - name: Vet diff --git a/.gitea/workflows/release.yml b/.gitea/workflows/release.yml index 7bcb818..0e13d09 100644 --- a/.gitea/workflows/release.yml +++ b/.gitea/workflows/release.yml @@ -33,7 +33,13 @@ jobs: - uses: actions/setup-go@v5 with: go-version: '1.25' - cache: true + # cache:false — the self-hosted runner bind-mounts a persistent + # GOCACHE/GOMODCACHE (/var/cache/ci-go-{build,mod}); actions/cache is + # redundant and corrupts it by untarring over the bind mount ("File + # exists" -> "Failed to restore" -> partial cache -> linker/typecheck + # errors on heavy jobs, e.g. test -race link "too many errors" and + # go-arch-lint "without types"). Fleet sweep after the cp ci.yml find. + cache: false - name: Tidy run: go mod tidy && git diff --exit-code go.sum # Vet covers the whole module — was previously scoped to three @@ -60,7 +66,13 @@ jobs: - uses: actions/setup-go@v5 with: go-version: '1.25' - cache: true + # cache:false — the self-hosted runner bind-mounts a persistent + # GOCACHE/GOMODCACHE (/var/cache/ci-go-{build,mod}); actions/cache is + # redundant and corrupts it by untarring over the bind mount ("File + # exists" -> "Failed to restore" -> partial cache -> linker/typecheck + # errors on heavy jobs, e.g. test -race link "too many errors" and + # go-arch-lint "without types"). Fleet sweep after the cp ci.yml find. + cache: false - name: Validate goreleaser config uses: goreleaser/goreleaser-action@v6 with: -- 2.52.0