shared-actions/generate-release-notes/README.md
Ruben b0f915be4c
All checks were successful
Aikido Security PR Check / Aikido Security Scan (pull_request) Successful in 46s
validate-shared-actions / validate-shared-actions (pull_request) Successful in 1m3s
feat: add release note and webhook actions
2026-06-09 07:08:14 +02:00

39 lines
1.7 KiB
Markdown

# generate-release-notes
Collects the git commit log between two refs and generates human-readable release notes using [Opencode](https://opencode.ai) with AWS Bedrock.
## Inputs
| Input | Required | Default | Description |
|-------|----------|---------|-------------|
| `bedrock-bearer-token` | Yes | — | AWS Bedrock bearer token for Opencode |
| `base-ref` | Yes | — | Base branch for git log comparison (e.g. `main` or `dev`) |
| `head-ref` | Yes | — | Head branch for git log comparison (e.g. `HEAD` or `dev`) |
| `section-title` | Yes | — | Title for the commits section in the generated markdown |
| `empty-message` | Yes | — | Message to include when no commits are found |
| `include-diff-stat` | No | `true` | Include a "Changed files" section with `git diff --stat` output |
## Outputs
| Output | Description |
|--------|-------------|
| `release-note` | The generated release notes as a markdown string |
## Usage
```yaml
- id: notes
uses: https://schmalz-git.git.onstackit.cloud/schmalz/shared-actions/generate-release-notes@generate-release-notes-v1
with:
bedrock-bearer-token: ${{ secrets.BEDROCK_BEARER_TOKEN }}
base-ref: main
head-ref: HEAD
section-title: My Service
empty-message: No changes since last release.
```
## Notes
- Requires the repository to be checked out with enough history for the comparison (use `fetch-depth: 0` in the `checkout` action).
- Release notes are generated in German and categorised into 💡 Features, 🪲 Bugfixes, and 🧹 Wartung based on conventional commit prefixes.
- The output can be passed directly to the `publish-release-notes-via-webhook` action via `${{ steps.notes.outputs.release-note }}`.