aRustyDev / aRustyDev/helm-charts

enhancement: structured changelog management for chart and full releases

Open
#51 0 comments 0 reactions 1 assignee Claimed by @aRustyDev View on GitHub
enhancement
Dominant language
Go Template
Stars
0
Forks
0
PR merge metrics
No merged PRs in 30d

Description

## Summary

Implement structured changelog management that supports both per-chart changelogs and a full repository changelog.

## Background

Currently, W1 generates a changelog preview per-chart using git-cliff. This works for PR validation, but we need a more comprehensive changelog strategy for releases.

## Proposed Features

### 1. Per-Chart Changelogs
- Maintain a `CHANGELOG.md` in each chart directory (e.g., `charts/cloudflared/CHANGELOG.md`)
- Automatically updated when a chart is released
- Only includes changes relevant to that specific chart

### 2. Full Repository Changelog
- Maintain a root `CHANGELOG.md` with all changes across all charts
- Grouped by chart name and release version
- Useful for repository-wide release tracking

### 3. Changelog Formats
Consider supporting multiple formats:
- Markdown (default, for GitHub display)
- ArtifactHub format (in Chart.yaml annotations)
- JSON (for programmatic consumption)

## Implementation Considerations

- Should be integrated with release-please's release PR process
- Need to decide when changelogs are generated:
- During PR validation (preview only - current behavior)
- During release PR creation (W3)
- After release (W6)
- Consider using git-cliff's `--prepend` option for incremental updates

## Related Issues

- #48 - Changelog comment reuse enhancement
- #49 - Fixed changelog git range (now closed)

## References

- [ADR-009: Per-Chart Changelog Generation Strategy](../docs/src/adr/009-per-chart-changelog-strategy.md)
- [git-cliff documentation](https://git-cliff.org/)

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.