dae/.github/workflows/generate-changelogs.yml

58 lines
1.8 KiB
YAML

name: Generate Changelogs
run-name: 'chore(release): generate changelogs for ${{ inputs.previous_release_tag }}..${{ inputs.future_release_tag }}'
on:
workflow_dispatch:
inputs:
previous_release_tag:
required: true
description: previous release tag
future_release_tag:
required: true
description: future release tag
dry_run:
required: true
default: true
jobs:
build:
name: Generate changelogs
runs-on: ubuntu-latest
permissions:
issues: write
steps:
- uses: actions/checkout@v4
- name: Generate GitHub Auth Token
# https://github.com/tibdex/github-app-token
id: generate_token
uses: tibdex/github-app-token@v2
with:
app_id: ${{ secrets.GH_APP_ID }}
private_key: ${{ secrets.GH_APP_PRIVATE_KEY }}
- name: Generate release changelogs
uses: daeuniverse/changelogs-generator-action@main
id: changelog
with:
# https://github.com/daeuniverse/changelogs-generator-action
previousRelease: ${{ inputs.previous_release_tag }}
futureRelease: ${{ inputs.future_release_tag }}
token: ${{ steps.generate_token.outputs.token }}
- name: Print outputs
shell: bash
run: |
echo "${{ steps.changelog.outputs.changelogs }}"
- name: Create an issue with proposed changelogs
if: ${{ inputs.dry_run == 'false' }}
uses: dacbd/create-issue-action@main
with:
token: ${{ steps.generate_token.outputs.token }}
title: '[Release Changelogs] ${{ inputs.future_release_tag }}'
labels: automated-issue,release
assignees: "sumire88,mzz2017,kunish,jschwinger233"
body: |
${{ steps.changelog.outputs.changelogs }}