mirror of
https://github.com/gomods/athens
synced 2026-02-03 07:30:32 +00:00
github actions + goreleaser to build and publish binaries (#1623)
* initial github action to build github hosted binary artifact releases * consistent with Makefile * fix syntax error * add GOPROXY env var * reintroduce VERSION to env and go build.version * barf, typo * set build.version to the tag Co-authored-by: Aaron Schlesinger <70865+arschles@users.noreply.github.com>
This commit is contained in:
@@ -0,0 +1,28 @@
|
|||||||
|
---
|
||||||
|
name: publish github release artifacts with goreleaser
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
tags: '*'
|
||||||
|
jobs:
|
||||||
|
goreleaser:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- name: checkout
|
||||||
|
uses: actions/checkout@v2
|
||||||
|
- name: unshallow
|
||||||
|
run: git fetch --prune --unshallow
|
||||||
|
- name: setup-go
|
||||||
|
uses: actions/setup-go@v2
|
||||||
|
with:
|
||||||
|
go-version: 1.14
|
||||||
|
- name: capture current date
|
||||||
|
id: date
|
||||||
|
run: echo "::set-output name=date::$(date -u '+%Y-%m-%d-%H:%M:%S-%Z')"
|
||||||
|
- name: goreleaser
|
||||||
|
uses: goreleaser/goreleaser-action@v2
|
||||||
|
with:
|
||||||
|
version: latest
|
||||||
|
args: release --rm-dist
|
||||||
|
env:
|
||||||
|
DATE: ${{ steps.date.outputs.date }}
|
||||||
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||||
@@ -32,3 +32,6 @@ tmp
|
|||||||
|
|
||||||
# prod config file
|
# prod config file
|
||||||
config.toml
|
config.toml
|
||||||
|
|
||||||
|
# goreleaser output directory
|
||||||
|
dist/
|
||||||
|
|||||||
@@ -0,0 +1,29 @@
|
|||||||
|
before:
|
||||||
|
hooks:
|
||||||
|
- go mod download
|
||||||
|
env:
|
||||||
|
- CGO_ENABLED=0
|
||||||
|
- GOPROXY=https://proxy.golang.org
|
||||||
|
project_name: athens
|
||||||
|
builds:
|
||||||
|
- id: builds
|
||||||
|
goos:
|
||||||
|
- linux
|
||||||
|
- darwin
|
||||||
|
goarch:
|
||||||
|
- amd64
|
||||||
|
main: cmd/proxy/main.go
|
||||||
|
binary: athens
|
||||||
|
ldflags:
|
||||||
|
- -X "github.com/gomods/athens/pkg/build.version={{ .Tag }}"
|
||||||
|
- -X "github.com/gomods/athens/pkg/build.buildDate={{ .Env.DATE }}"
|
||||||
|
checksum:
|
||||||
|
name_template: 'checksums.txt'
|
||||||
|
snapshot:
|
||||||
|
name_template: "{{ .Tag }}-next"
|
||||||
|
changelog:
|
||||||
|
sort: asc
|
||||||
|
filters:
|
||||||
|
exclude:
|
||||||
|
- '^docs:'
|
||||||
|
- '^test:'
|
||||||
Reference in New Issue
Block a user