Fonds les deux scripts de publication en un seul, qui refuse de mentir

Il y en avait deux, et le mauvais portait le nom le plus convaincant :
`publier-release.sh` compilait, archivait et réécrivait le manifeste, à
charge pour l'appelant de committer. Lancé seul, il a produit les deux
moitiés de la panne du 2026-08-21 — un manifeste corrigé mais non poussé,
et une release v0.4.0 contenant six commits de plus que son tag.

`publier.sh` absorbe l'étape et refuse désormais de publier, avant de
compiler, si le tag de la version existe déjà (en nommant le commit du tag
et celui de HEAD) ou si le dépôt du code n'est pas propre. `--archive-seule`
garde la brique réutilisable en CI, sous le même nom : ni manifeste, ni
commit, ni tag, donc rien à moitié publié.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
mathieu
2026-08-21 23:12:41 +02:00
co-authored by Claude Opus 5
parent 81108d7879
commit 7c7e686c7a
3 changed files with 325 additions and 358 deletions
+2 -2
View File
@@ -68,11 +68,11 @@ ram.runtime = "200M"
[resources.sources.main]
# Archive **déjà compilée** (publish self-contained linux-x64), produite par
# `build/publier-release.sh` et déposée en release sur le Gitea de l'utilisateur.
# `build/publier.sh` et déposée en release sur le Gitea de l'utilisateur.
# Le SDK .NET n'est jamais installé sur le serveur : c'est tout l'intérêt du
# self-contained (CLAUDE.md, « Ne jamais compiler sur le serveur »).
#
# Ces deux valeurs sont réécrites par `build/publier-release.sh`.
# Ces deux valeurs sont réécrites par `build/publier.sh`.
amd64.url = "https://git.akbar.nohost.me/mathieu/mabibli/releases/download/v0.4.1/mabibli-0.4.1-linux-x64.tar.gz"
amd64.sha256 = "21f6a437dcd118ed863d24ce1137f711ca19e004b5e89b6d482dcfd07ab7a884"