ci: introduce towncrier to generate changelog from fragments (#4573)
* introduce towncrier to generate changelog from fragments Replace manual CHANGELOG.md editing with towncrier fragment-based changelog management. Each PR adds a small text file in .changelog/ instead of editing the changelog directly, eliminating merge conflicts. Root .changelog/ is used for coordinated releases (most packages). Per-package .changelog/ dirs are used for independently released packages (opamp-client, propagator-aws-xray, resource-detector-azure, sdk-extension-aws). Changes: - Add towncrier config to root pyproject.toml and 4 independent package pyproject.toml files - Add shared Jinja2 template at scripts/changelog_template.j2 - Replace sed-based changelog generation with towncrier build in all release workflows (coordinated + per-package) - Rewrite changelog CI to use towncrier check for fragment validation - Add do-not-edit comments and towncrier markers to all CHANGELOG.md files - Update CONTRIBUTING.md with changelog fragment guidance - Update RELEASING.md to reflect towncrier workflow - Add towncrier to dev dependencies Assisted-by: Claude Opus 4.6 * address review: drop towncrier explanation, add changelog backport - Remove towncrier explanation sentence from RELEASING.md (per @xrmx) - Add changelog backport step to prepare-patch-release.yml to sync changelog from release branch to main (per @emdneto, matching core) Assisted-by: Claude Opus 4.6 --------- Co-authored-by: Aaron Abbott <aaronabbott@google.com>
M
Mike Goldsmith committed
a65160059e2380bb09a5105dbdad13c5e360e8f8
Parent: 287a65e
Committed by GitHub <noreply@github.com>
on 5/12/2026, 8:19:13 PM