Skip to content

Commit

Permalink
feat: Add goreleaser GitHub Action to automatically generate binary o…
Browse files Browse the repository at this point in the history
…utput when new releases are created

See https://github.com/TsekNet/fresnel/releases/tag/v0.1.4 for an example.

PiperOrigin-RevId: 418956856
  • Loading branch information
TsekNet authored and copybara-github committed Dec 30, 2021
1 parent f91d0ce commit 7dfb845
Show file tree
Hide file tree
Showing 2 changed files with 56 additions and 0 deletions.
33 changes: 33 additions & 0 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
name: release

on:
push:
# Only create artifacts when there is a semantic-versioned release on GitHub (ex: v1.0.1)
tags:
- 'v*'

permissions:
contents: write

jobs:
goreleaser:
runs-on: windows-latest
steps:
- name: Checkout
uses: actions/checkout@v2
with:
fetch-depth: 0

- name: Set up Go
uses: actions/setup-go@v2
with:
go-version: 1.16.x

- name: Run GoReleaser
uses: goreleaser/goreleaser-action@v2
with:
distribution: goreleaser
version: latest
args: release --rm-dist -f .goreleaser.yml
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
23 changes: 23 additions & 0 deletions .goreleaser.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
# Make sure to check the documentation at https://goreleaser.com
before:
hooks:
# You may remove this if you don't use go modules.
- go mod tidy
builds:
# Custom environment variables to be set during the builds.
- env:
- CGO_ENABLED=0
# For more info refer to: https://golang.org/doc/install/source#environment
goos:
- darwin
- linux
- windows
goarch:
- amd64
main: ./cli/
archives:
# Optionally override the matrix generation and specify only the final list of targets.
- format: binary
name_template: "cli_{{ .Os }}"
checksum:
name_template: "checksums.txt"

0 comments on commit 7dfb845

Please sign in to comment.