Skip to content

Automate

Automate #6

Workflow file for this run

name: Releases
on:
push:
branches:
- main
- automate-release
tags:
- '*.*.*'
permissions:
contents: read
jobs:
prepare-release:
runs-on: ubuntu-latest
permissions:
contents: write
security-events: write
steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v5.0.0
- name: Setup Python
uses: actions/setup-python@83679a892e2d95755f2dac6acb0bfd1e9ac5d548 # v6.1.0
with:
python-version: '3.13'
- name: Determine release info
id: release_info
run: |
if [[ "${GITHUB_REF}" == "refs/heads/automate-release" ]]; then
TAG="latest"
else
TAG="${GITHUB_REF#refs/tags/}"
fi
echo "tag=$TAG" >> $GITHUB_OUTPUT
- name: Update latest tag
if: github.ref == 'refs/heads/automate-release'
uses: EndBug/latest-tag@52ce15b2695f86a4ce47b72387dee54e47f6356c # v1.6.2
with:
ref: latest
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Generate release notes
id: notes
run: |
python script/create_release_notes.py
- name: Create release
uses: softprops/action-gh-release@v1
with:
tag_name: ${{ steps.release_info.outputs.tag }}
name: ${{ steps.release_info.outputs.tag }}
body_path: release_notes.txt
draft: true
overwrite: true
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}