ci(release): remplacer le script Python par sed/awk
All checks were successful
CI / test (push) Successful in 13s

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
thibaud-lclr 2026-05-13 11:18:27 +02:00
parent 4e2bfbee02
commit ea3a37559a

View file

@ -45,23 +45,17 @@ jobs:
echo "Pre-release tag — CHANGELOG.md non modifié"
;;
*)
cat > /tmp/update_changelog.py << 'PYEOF'
import os
# Rename [Unreleased] → version header
sed -i "s/^## \[Unreleased\]$/## [${current_tag}] — ${today}/" CHANGELOG.md
version = os.environ['VERSION']
today = os.environ['TODAY']
# Insert new empty [Unreleased] section after "# Changelog"
sed -i "s/^# Changelog$/# Changelog\n\n## [Unreleased]/" CHANGELOG.md
with open('CHANGELOG.md', 'r') as f:
content = f.read()
content = content.replace('## [Unreleased]', f'## [{version}] — {today}', 1)
content = content.replace('# Changelog\n', '# Changelog\n\n## [Unreleased]\n', 1)
with open('CHANGELOG.md', 'w') as f:
f.write(content)
PYEOF
VERSION="${current_tag}" TODAY="${today}" python3 /tmp/update_changelog.py
# Insert reference link before the first existing [vX...] link
awk -v tag="${current_tag}" -v url="${GITHUB_SERVER_URL}/${GITHUB_REPOSITORY}/releases/tag/${current_tag}" '
!inserted && /^\[v/ { print "[" tag "]: " url; inserted=1 }
{ print }
' CHANGELOG.md > CHANGELOG.tmp && mv CHANGELOG.tmp CHANGELOG.md
git config user.name "CI"
git config user.email "ci@forge.lclr.dev"