49 lines
1.6 KiB
YAML
49 lines
1.6 KiB
YAML
|
on:
|
||
|
push:
|
||
|
tags:
|
||
|
- "v*"
|
||
|
|
||
|
jobs:
|
||
|
release:
|
||
|
runs-on: docker
|
||
|
steps:
|
||
|
- uses: actions/checkout@v4
|
||
|
with:
|
||
|
# Apparently the checkout action overwrites the tag with the tag commit.
|
||
|
# This makes it impossible to extract the tag notes, since those will then be the commit message.
|
||
|
# Setting ref to the tag (github.ref) explictly fixes that.
|
||
|
# See: https://github.com/actions/checkout/issues/1638#issuecomment-2119577787
|
||
|
ref: ${{ github.ref }}
|
||
|
fetch-depth: 0
|
||
|
fetch-tags: true
|
||
|
- name: Get release notes from tag
|
||
|
id: releasenotes
|
||
|
run: |
|
||
|
pwd
|
||
|
ls -la "${{ runner.temp }}"
|
||
|
touch "${{ runner.temp }}/miau"
|
||
|
ls -la "${{ runner.temp }}"
|
||
|
echo "miau=nyaaaa" >> $GITHUB_ENV
|
||
|
{
|
||
|
echo 'releasenotes<<EOF'
|
||
|
git tag -l --format='%(contents)' ${{ env.GITHUB_REF_NAME }}
|
||
|
echo 'EOF'
|
||
|
} >> $GITHUB_OUTPUT
|
||
|
git tag -l --format='%(contents)' ${{ env.GITHUB_REF_NAME }}
|
||
|
- name: Show release notes
|
||
|
run: |
|
||
|
ls -la "${{ runner.temp }}"
|
||
|
echo "${{ steps.releasenotes.outputs.releasenotes }}"
|
||
|
- name: Install Hatch
|
||
|
uses: https://github.com/pypa/hatch@install
|
||
|
- name: Build project
|
||
|
run: hatch build
|
||
|
- name: Create a Forgejo release
|
||
|
uses: actions/forgejo-release@v2
|
||
|
with:
|
||
|
direction: upload
|
||
|
url: https://git.hamburg.ccc.de
|
||
|
release-dir: dist
|
||
|
release-notes: ${{ steps.releasenotes.outputs.releasenotes }}
|
||
|
token: ${{ env.GITHUB_TOKEN }}
|