Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
26 changes: 26 additions & 0 deletions .github/release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
changelog:
categories:
- title: Features
labels: [feat]
- title: Fixes
labels: [fix]
- title: Performance
labels: [perf]
- title: Reverts
labels: [revert]
- title: Documentation
labels: [docs]
- title: Refactors
labels: [refactor]
- title: Style
labels: [style]
- title: Tests
labels: [test]
- title: Build
labels: [build]
- title: Continuous integration
labels: [ci]
- title: Chores
labels: [chore]
- title: Other changes
labels: ["*"]
53 changes: 53 additions & 0 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
name: Release

on:
push:
branches: [main]
tags: ['v*']

permissions:
contents: write

concurrency:
group: release
cancel-in-progress: false

jobs:
draft:
name: Update the draft release
if: startsWith(github.ref, 'refs/heads/')
runs-on: ubuntu-latest
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
GH_REPO: ${{ github.repository }}
steps:
- name: Replace the draft release
run: |
if gh release view unreleased >/dev/null 2>&1; then
gh release delete unreleased --yes
fi
gh release create unreleased \
--draft \
--target "${{ github.sha }}" \
--title "Unreleased" \
--generate-notes

release:
name: Publish the release
if: startsWith(github.ref, 'refs/tags/')
runs-on: ubuntu-latest
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
GH_REPO: ${{ github.repository }}
steps:
- name: Create the release
run: |
gh release create "${{ github.ref_name }}" \
--title "${{ github.ref_name }}" \
--generate-notes

- name: Remove the stale draft release
run: |
if gh release view unreleased >/dev/null 2>&1; then
gh release delete unreleased --yes
fi
Loading