Files
pinata/.github/workflows/release.yml
T

51 lines
1.3 KiB
YAML

# .github/workflows/release.yml
name: Build & Release Go Binary
on:
push:
branches:
- main
permissions:
contents: write
packages: write
jobs:
release:
runs-on: ubuntu-latest
strategy:
matrix:
goos: [linux, windows, darwin]
goarch: ['386', amd64, arm64]
exclude:
- goos: darwin
goarch: '386'
- goos: windows
goarch: arm64
steps:
- uses: actions/checkout@v4
- name: Set version tag
id: version
run: |
VERSION="v$(date +'%Y%m%d%H%M%S')"
echo "VERSION=$VERSION" >> $GITHUB_ENV
- name: Build Go Binary
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.24.8.linux-amd64.tar.gz"
project_path: "./"
binary_name: "pinata"
extra_files: LICENSE README.md
- name: Create Git Tag
run: |
git tag ${{ env.VERSION }}
git push origin ${{ env.VERSION }}
- name: Create GitHub Release
uses: ncipollo/release-action@v1
with:
tag: ${{ env.VERSION }}
token: ${{ secrets.GITHUB_TOKEN }}