Skip to content

Workflow file for this run

# .github/workflows/release.yaml
on:
release:
types: [created]
permissions:
contents: write
packages: write
jobs:
releases-matrix:
name: Release Go Binary
runs-on: ubuntu-latest
strategy:
matrix:
# build and publish in parallel: linux/386, linux/amd64, linux/arm64, windows/386, windows/amd64, darwin/amd64, darwin/arm64
goos: [linux, windows, darwin]
goarch: [amd64, arm64]
exclude:
- goarch: arm64
goos: windows
steps:
- name: Get Release Info
run: echo "RELEASE_TAG=${GITHUB_REF/refs\/tags\//}" >> "$GITHUB_ENV"
- uses: actions/checkout@v4
- uses: wangyoucao577/go-release-action@v1
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
goos: ${{ matrix.goos }}
goarch: ${{ matrix.goarch }}
goversion: "https://dl.google.com/go/go1.22.5.linux-amd64.tar.gz"
project_path: "./"
binary_name: "cotton"
extra_files: README.md
ldflags: -X "main.Version=${{env.RELEASE_TAG}}"
sha256sum: true