Skip to content

Add release.yml workflow. #9

Add release.yml workflow.

Add release.yml workflow. #9

Workflow file for this run

# 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 build -o ~/build/pagine-${{ github.ref_name }}-linux-amd64 ./cmd/pagine
- name: Compress via Zstd
run: zstd ~/build/pagine-${{ github.ref_name }}-*
- name: Generate Checksums
run: sha256sum ~/build/*zst > ~/build/SHA256SUMS.txt
- name: Create Release
id: create_release
uses: actions/create-release@v1
env:
GITHUB_TOKEN: ${{ github.token }}
with:
tag_name: ${{ github.ref_name }}
release_name: ${{ github.ref_name }}
body: Changelog for ${{ github.ref_name }}
draft: true
prerelease: false
- name: Upload Artifact
env:
GH_TOKEN: ${{ github.token }}
run:
gh release -R ${{ github.repository_owner }}/${{ github.repository }} upload ${{ github.ref_name }} ~/build/SHA256SUMS.txt ~/build/*zst --clobber