Scaffold build repo for pinned tailscale/go-cache-plugin #1
Reference in New Issue
Block a user
Delete Branch "benvin/scaffold"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Upstream publishes no releases, so CI has nothing to curl for an S3-backed Go build cache and the cluster has no image to run it from.
cmd/go-cache-pluginat3031b5dvia thego.modtool directivemake buildgo builddriven through it as a GOCACHEPROG against a stub S3build_test.go:35-36 — TestMain builds the plugin with its own hardcoded
go build -ldflags=-s -w+CGO_ENABLED=0, never shelling out tomake build. TestBinaryIsStatic/TestBuiltFromPinnedVersion therefore validate a shadow build, not the Makefile recipe the release pipeline actually ships (release.yaml callsmake builddirectly). A regression in the Makefile build target (e.g. droppedCGO_ENABLED=0, wrong$(PKG)) would pass CI undetected. -> have TestMain execmake build(or invoke the same target) so the tested binary is the shipped one.nit: README.md:51 — CI curl example hardcodes
releases/download/v0.1.0/..., but the Makefile bump targets start from v0.0.0, so the first tag will be v0.0.1, not v0.1.0. -> use a placeholder like<tag>or fix once a real first tag exists.nit: Makefile:19 —
testrunsgo test -v ./...without-race, unlike node-lookups convention (go test -v -race ./...). -> add-racefor consistency, or drop the comparison expectation.No findings.