# Goreleaser config for cross-platform cacher builds. # # Invoked from .builds/publish.yml as `goreleaser release --clean --skip=publish` # on tag pushes — we only want the binaries + checksums, not a GitHub # release (we publish to pages.sr.ht and the build artifacts list). version: 2 project_name: cacher before: hooks: - go mod tidy builds: - id: cacher main: . binary: cacher env: - CGO_ENABLED=0 flags: - -trimpath ldflags: - -s -w - -X go.bigb.es/cacher/internal/version.version={{ .Version }} goos: [linux, darwin] goarch: [amd64, arm64] archives: # Ship raw binaries rather than tarballs so the wget URL # `…/cacher-linux-amd64` works directly. The {{ .Version }} prefix lives # in the goreleaser dist/ filenames but we strip it when copying into # the pages tree (see .builds/publish.yml). - id: binary formats: [binary] name_template: "cacher_{{ .Version }}_{{ .Os }}_{{ .Arch }}" checksum: name_template: "checksums.txt" algorithm: sha256 snapshot: version_template: "{{ .Tag }}-snapshot" changelog: # We maintain CHANGELOG.md by hand. Don't autogenerate from git log. disable: true release: # We publish via pages.sr.ht + build artifacts; there's no GitHub repo to # release to. `goreleaser release --skip=publish` already inhibits the # release step, but disabling here keeps `goreleaser check` happy. disable: true