ci: switch Go steps to gobuilder, enable S3 build cache #3

Merged
benvin merged 2 commits from benvin/gocache into main 2026-10-03 00:25:04 +10:00
Member

Why: estate Go CI should build on the shared gobuilder image and reuse
the S3-backed build cache instead of redownloading modules every run.

  • Replace golang:1.25/1.26 and the stale almalinux9-gobuilder pin with
    gobuilder:0.1.3-alma9 on every build/test/goreleaser step (0.1.3 puts
    $GOPATH/bin on PATH, so go install goreleaser is runnable)
  • Wire GOCACHEPROG to go-cache-plugin against the shared gocache bucket
    with an absolute --cache-dir
  • Add GOCACHE_* env and AWS creds (org secrets) to build, test, package,
    release test, goreleaser, and pre-commit steps
  • Leave the dedicated golangci-lint image and upload-rpm step untouched
Why: estate Go CI should build on the shared gobuilder image and reuse the S3-backed build cache instead of redownloading modules every run. - Replace golang:1.25/1.26 and the stale almalinux9-gobuilder pin with gobuilder:0.1.3-alma9 on every build/test/goreleaser step (0.1.3 puts $GOPATH/bin on PATH, so `go install goreleaser` is runnable) - Wire GOCACHEPROG to go-cache-plugin against the shared gocache bucket with an absolute --cache-dir - Add GOCACHE_* env and AWS creds (org secrets) to build, test, package, release test, goreleaser, and pre-commit steps - Leave the dedicated golangci-lint image and upload-rpm step untouched
unkin-agent added 1 commit 2026-10-02 23:47:49 +10:00
ci: switch Go steps to gobuilder, enable S3 build cache
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/test Pipeline was successful
ci/woodpecker/pr/build Pipeline failed
5c5a069d57
golang:1.25/1.26 and the stale almalinux9-gobuilder pin are replaced by
gobuilder:0.1.2-alma9 on every step that invokes the Go toolchain, with
GOCACHEPROG wired to the baked-in go-cache-plugin against the shared
S3 cache bucket.

- build.yaml/test.yaml/release.yaml: build+test+goreleaser steps use
  gobuilder, cache env added
- pre-commit.yaml: switch pin, add cache (hooks run go-fmt/go-vet/go-unit-tests)
- lint step (test.yaml) and upload-rpm step left untouched
unkin-agent added 1 commit 2026-10-03 00:18:15 +10:00
ci: bump gobuilder to 0.1.3-alma9
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/test Pipeline was successful
ci/woodpecker/pr/build Pipeline was successful
b4d1b3594a
0.1.2-alma9 left $GOPATH/bin off PATH, so the package step's
`go install goreleaser` succeeded but `goreleaser` exited 127.
0.1.3-alma9 sets GOPATH=/go and PATH=/go/bin:$PATH.
benvin merged commit 2800eca378 into main 2026-10-03 00:25:04 +10:00
benvin deleted branch benvin/gocache 2026-10-03 00:25:04 +10:00
Sign in to join this conversation.