ci: back Go compiles with the shared S3 build cache #126

Merged
benvin merged 1 commits from benvin/gocache into master 2026-09-27 17:33:19 +10:00
Member

Every pipeline run recompiled the whole tree from scratch; the shared gocache S3 bucket already holds those objects.

  • Bootstrap the go-cache-plugin GOCACHEPROG in the test and pre-commit steps, keyed ci-artifactapi.
  • Best-effort: a failed plugin fetch leaves GOCACHEPROG unset, and S3 errors degrade to cache misses, so an outage never fails a build.
  • Run tests on the gobuilder image, which trusts the internal CA the S3 endpoint presents.

Container builds still compile uncached; plumbing the cache into the Dockerfile is a follow-up.

Every pipeline run recompiled the whole tree from scratch; the shared gocache S3 bucket already holds those objects. - Bootstrap the go-cache-plugin GOCACHEPROG in the test and pre-commit steps, keyed `ci-artifactapi`. - Best-effort: a failed plugin fetch leaves GOCACHEPROG unset, and S3 errors degrade to cache misses, so an outage never fails a build. - Run tests on the gobuilder image, which trusts the internal CA the S3 endpoint presents. Container builds still compile uncached; plumbing the cache into the Dockerfile is a follow-up.
unkin-agent added 1 commit 2026-09-27 11:35:08 +10:00
ci: back Go compiles with the shared S3 build cache
ci/woodpecker/pr/pre-commit Pipeline was successful
ci/woodpecker/pr/build Pipeline was successful
ci/woodpecker/pr/test Pipeline was successful
7a314561c0
Every pipeline run recompiled the tree from scratch.

- Bootstrap the go-cache-plugin GOCACHEPROG in the test and pre-commit steps,
  best-effort: a failed fetch leaves it unset and the compile runs as before.
- Run tests on the gobuilder image, which trusts the internal CA the S3
  endpoint presents.
Author
Member

No findings.

No findings.
benvin merged commit 7a4f4054cc into master 2026-09-27 17:33:19 +10:00
benvin deleted branch benvin/gocache 2026-09-27 17:33:19 +10:00
Sign in to join this conversation.
No Reviewers
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: unkin/artifactapi#126