haystack/.github/workflows/github_release.yml
2023-12-15 17:48:12 +01:00

49 lines
1.4 KiB
YAML

name: Project release on Github
on:
workflow_dispatch: # this is useful to re-generate the release page without a new tag being pushed
push:
tags:
- "v2.0.0-beta*"
jobs:
generate-notes:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
with:
fetch-tags: true
fetch-depth: 0 # slow but needed by reno
- name: Parse version
id: version
run: |
echo "current_release=$(awk -F \\- '{print $1}' < VERSION.txt)" >> "$GITHUB_OUTPUT"
echo "current_pre_release=$(awk -F \\- '{print $2}' < VERSION.txt)" >> "$GITHUB_OUTPUT"
- name: Install reno
run: |
python -m pip install --upgrade pip
pip install "reno<5"
- name: Generate release notes for beta versions
run: |
reno report --no-show-source --ignore-cache --version v${{ steps.version.outputs.current_pre_release }} -o relnotes.rst
- name: Convert to Markdown
uses: docker://pandoc/core:3.1
with:
args: "--from rst --to markdown_github --no-highlight relnotes.rst -o relnotes.md --wrap=none"
- name: Debug
run: |
cat relnotes.md
- uses: ncipollo/release-action@v1
with:
bodyFile: "relnotes.md"
prerelease: ${{ steps.version.outputs.current_pre_release }}
allowUpdates: true