aRustyDev / aRustyDev/gh

feat(action): changelog/generate - Generate changelog from commits

Open
#37 0 comments 0 reactions 1 assignee Claimed by @aRustyDev View on GitHub
enhancement new-action
Dominant language
Shell
Stars
0
Forks
0
PR merge metrics
No merged PRs in 30d

Description

## Parent Epic
Part of #22 (Atomic Release Pipeline Actions)

## Priority
P1 - Release support for W6

## Description

Create a composite action that generates changelog entries from conventional commits using git-cliff.

## Inputs

| Input | Required | Default | Description |
|-------|----------|---------|-------------|
| `artifact` | Yes | - | Artifact name |
| `artifact-path` | Yes | - | Path to artifacts directory |
| `version` | Yes | - | Version for the changelog entry |
| `base-ref` | No | `origin/main` | Base ref for commit range |
| `config` | No | `cliff.toml` | Path to git-cliff config |
| `output-format` | No | `markdown` | Output format: markdown, json |

## Outputs

| Output | Description |
|--------|-------------|
| `changelog` | Generated changelog content |
| `commits-analyzed` | Number of commits analyzed |

## Usage Example

```yaml
- uses: arustydev/gha/actions/changelog/generate@v1
id: changelog
with:
artifact: my-chart
artifact-path: charts
version: "1.3.0"

- run: echo "${{ steps.changelog.outputs.changelog }}"
```

## Implementation Notes

- Uses git-cliff for changelog generation
- Filters commits by artifact path
- Supports custom git-cliff configuration
- Falls back to simple commit list if git-cliff fails

## Source Reference

`helm-charts/.github/scripts/version-bump.sh`:
- `generate_changelog()` (lines 159-226)

## Related

- #13 - changelog generation (consolidate)
- #35 - changelog/extract-version (complementary)

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.