Description
Aujourd'hui le CI build et teste, mais il n'y a aucun workflow de release. Les déploiements et versions ne sont pas tracés automatiquement.
Comportement souhaité
Lorsqu'un tag v* est pushé sur main :
- Créer une GitHub Release automatiquement
- Générer un changelog depuis les commits (ou les PR mergées)
Implémentation suggérée
# .github/workflows/release.yml
name: Release
on:
push:
tags:
- 'v*'
jobs:
release:
runs-on: ubuntu-latest
permissions:
contents: write
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Generate changelog & create release
uses: softprops/action-gh-release@v2
with:
generate_release_notes: true
Options alternatives
release-please (Google) : gestion sémantique automatisée via Conventional Commits
semantic-release : plus complet, intègre bump de version + npm publish si besoin
Bénéfices
- Historique de versions visible sur GitHub
- Changelog auto depuis les commits
- Traçabilité des déploiements prod
Description
Aujourd'hui le CI build et teste, mais il n'y a aucun workflow de release. Les déploiements et versions ne sont pas tracés automatiquement.
Comportement souhaité
Lorsqu'un tag
v*est pushé surmain:Implémentation suggérée
Options alternatives
release-please(Google) : gestion sémantique automatisée via Conventional Commitssemantic-release: plus complet, intègre bump de version + npm publish si besoinBénéfices