Skip to content

Auto build CLI binaries with goreleaser #7

Auto build CLI binaries with goreleaser

Auto build CLI binaries with goreleaser #7

Workflow file for this run

# .github/workflows/release.yml
name: Release CLI Binaries
on:
pull_request:
push:
# run only against tags
tags:
- "*"
permissions:
contents: write
jobs:
goreleaser:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Set up Go
uses: actions/setup-go@v5
with:
go-version: stable
- name: Determine Release Args
id: determine_args
run: |
if [ "${{ github.ref }}" == "refs/heads/master" ]; then
echo "RELEASE_ARGS=release --clean" >> $GITHUB_ENV
else
echo "RELEASE_ARGS=release --snapshot" >> $GITHUB_ENV
fi
- name: Run GoReleaser
uses: goreleaser/goreleaser-action@v6
with:
distribution: goreleaser
version: "~> v2"
args: ${{ env.RELEASE_ARGS }}
workdir: cli
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}