Add release.yml
workflow.
#7
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# This workflow will build a golang project | |
# For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-go | |
name: Release | |
on: | |
push: | |
# Sequence of patterns matched against refs/tags | |
tags: | |
- 'v*' # Push events to matching v*, i.e. v1.0, v20.15.10 | |
permissions: | |
contents: write | |
jobs: | |
build: | |
name: Create Release | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v4 | |
- name: Set up Go | |
uses: actions/setup-go@v4 | |
with: | |
go-version: '1.22' | |
- run: mkdir ~/build | |
- name: Build | |
shell: bash | |
run: | | |
set +e | |
go tool dist list | while IFS='/' read -ra TARGET | |
do | |
export GOOS=${TARGET[0]} | |
export GOARCH=${TARGET[1]} | |
echo "Building target $GOOS/$GOARCH" | |
go build -o ~/build/pagine-${{ github.ref }}-$GOOS-$GOARCH ./cmd/pagine | |
done | |
- name: Compress via Zstd | |
run: zstd ~/build/pagine-${{ github.ref }}-* | |
- name: Generate Checksums | |
run: sha256sum ~/build/*zst > ~/build/SHA256SUMS.txt | |
- name: Upload Artifact | |
run: | |
gh release -R ${{ github.repository_owner }}/${{ github.repository }} upload ${{ github.ref }} ~/build/SHA256SUMS.txt ~/build/*zst --clobber | |
- name: Create Release | |
id: create_release | |
uses: actions/create-release@v1 | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # This token is provided by Actions, you do not need to create your own token | |
with: | |
tag_name: ${{ github.ref }} | |
release_name: ${{ github.ref }} | |
body: Changelog for ${{ github.ref }} | |
draft: true | |
prerelease: false |