release.yml

 1name: Build release binaries
 2
 3on:
 4  push:
 5    tags:
 6      - "v*"
 7
 8concurrency:
 9  group: release-${{ github.ref }}
10  cancel-in-progress: true
11
12jobs:
13  build-release:
14    runs-on: "ubuntu-latest"
15    steps:
16      - name: Set up Go
17        uses: actions/setup-go@v5
18        with:
19          go-version: 1.24.2
20
21      - name: Check out code
22        uses: actions/checkout@v4
23
24      - name: Build
25        run: make
26
27      - name: Setup minimal git config
28        run: |
29          git config --global user.email "action@github.com"
30          git config --global user.name "GitHub Action"
31
32      - name: Test
33        run: make test
34
35      - name: Build binaries
36        run: make releases
37
38      - uses: "marvinpinto/action-automatic-releases@latest"
39        with:
40          repo_token: "${{ secrets.GITHUB_TOKEN }}"
41          draft: true
42          prerelease: false
43          files: dist/*