Fix Releases

This commit is contained in:
Chris Titus 2024-08-28 23:52:38 -05:00
parent b042df65d9
commit 6e5513ad52
2 changed files with 65 additions and 2 deletions

23
.github/release-drafter.yml vendored Normal file
View File

@ -0,0 +1,23 @@
name-template: 'v$RESOLVED_VERSION'
tag-template: 'v$RESOLVED_VERSION'
categories:
- title: '🚀 Features'
labels:
- 'feature'
- 'enhancement'
- title: '🐛 Bug Fixes'
labels:
- 'fix'
- 'bugfix'
- 'bug'
- title: '🧰 Maintenance'
label: 'chore'
change-template: '- $TITLE @$AUTHOR (#$NUMBER)'
template: |
## Changes
$CHANGES
## Contributors
$CONTRIBUTORS

View File

@ -25,20 +25,60 @@ jobs:
echo "version=$version" >> $GITHUB_ENV
shell: bash
- name: Get Latest Release
id: get_latest_release
uses: octokit/request-action@v2.x
with:
route: GET /repos/{owner}/{repo}/releases/latest
owner: ${{ github.repository_owner }}
repo: ${{ github.event.repository.name }}
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
continue-on-error: true
- name: Generate Release Notes
id: generate_notes
uses: release-drafter/release-drafter@v5
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
config-name: release-drafter.yml
version: ${{ env.version }}
- name: Prepare Release Body
id: prepare_body
run: |
latest_release_body="${{ fromJson(steps.get_latest_release.outputs.data).body }}"
new_changes="${{ steps.generate_notes.outputs.body }}"
if [[ -z "$latest_release_body" ]]; then
echo "body<<EOF" >> $GITHUB_OUTPUT
echo "$new_changes" >> $GITHUB_OUTPUT
echo "EOF" >> $GITHUB_OUTPUT
else
echo "body<<EOF" >> $GITHUB_OUTPUT
echo "$new_changes" >> $GITHUB_OUTPUT
echo "" >> $GITHUB_OUTPUT
echo "Previous Release Notes:" >> $GITHUB_OUTPUT
echo "$latest_release_body" >> $GITHUB_OUTPUT
echo "EOF" >> $GITHUB_OUTPUT
fi
- name: Create and Upload Release
id: create_release
uses: softprops/action-gh-release@v2
with:
tag_name: ${{ env.version }}
name: Pre-Release ${{ env.version }}
body: "![GitHub Downloads (specific asset, specific tag)](https://img.shields.io/github/downloads/ChrisTitusTech/linutil/${{ env.version }}/linutil)"
body: |
${{ steps.prepare_body.outputs.body }}
![GitHub Downloads (specific asset, specific tag)](https://img.shields.io/github/downloads/ChrisTitusTech/linutil/${{ env.version }}/linutil)
append_body: false
files: |
./build/linutil
./start.sh
./startdev.sh
prerelease: true
generate_release_notes: true
env:
version: ${{ env.version }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}