Add release.yml
workflow
#3
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: Create Release | |
on: | |
push: | |
# Sequence of patterns matched against refs/tags | |
tags: | |
- 'v*' # Push events to matching v*, i.e. v1.0, v20.15.10 | |
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' | |
- name: Make directory for build | |
run: mkdir ~/build | |
- name: Build | |
run: | | |
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: Upload Artifact | |
uses: actions/upload-artifact@v4 | |
with: | |
name: pagine | |
path: ~/build/* | |
- 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 |