infra-rebuild/.forgejo/workflows/release.yaml

49 lines
1.6 KiB
YAML
Raw Normal View History

2024-06-20 03:39:42 +02:00
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 }}