75 lines
2.2 KiB
Markdown
75 lines
2.2 KiB
Markdown
<!-- file: docs/DELTA_WORKFLOW.md -->
|
||
<!-- version: 3 -->
|
||
|
||
# Workflow de livraison delta
|
||
|
||
Les règles normatives de livraison sont définies dans [`../RULES_GENERAL.md`](../RULES_GENERAL.md). Ce document décrit leur application pratique.
|
||
|
||
## Nommage
|
||
|
||
Delta multi-module ou racine :
|
||
|
||
```text
|
||
khadhroony-bot3_vX.Y.Z-pre.abc-delta.zip
|
||
```
|
||
|
||
Delta limité à un package :
|
||
|
||
```text
|
||
kb-modulename_vX.Y.Z-pre.abc-delta.zip
|
||
```
|
||
|
||
Correctif d’une prerelease déjà livrée :
|
||
|
||
```text
|
||
khadhroony-bot3_vX.Y.Z-pre.abc-delta-fix-001.zip
|
||
```
|
||
|
||
La numérotation des correctifs recommence à `fix-001` pour chaque nouvelle prerelease.
|
||
|
||
## Contenu
|
||
|
||
Chaque archive contient uniquement :
|
||
|
||
- les fichiers ajoutés ;
|
||
- les fichiers modifiés ;
|
||
- un `delta.md` non versionné à la racine.
|
||
|
||
Elle exclut :
|
||
|
||
- les fichiers inchangés ;
|
||
- `Cargo.lock` ;
|
||
- `package-lock.json` ;
|
||
- `node_modules/`, `target/`, `dist/` et les autres sorties de build ;
|
||
- `gen/`, les bindings TS-RS générés et tout autre code régénérable ;
|
||
- les logs, caches, PID, bases et données locales ;
|
||
- les fichiers `.env` réels et toute configuration contenant des secrets ;
|
||
- les fichiers d’IDE ou propres à la machine ;
|
||
- les empreintes SHA256 ;
|
||
- les fichiers supprimés, qui doivent être indiqués comme suppressions manuelles.
|
||
|
||
`.env.example`, `.gitignore` et les autres fichiers source explicitement maintenus peuvent être livrés. `delta.md` est généré spécialement pour le ZIP et reste obligatoire même si les documents `delta*.md` sont ignorés dans le dépôt.
|
||
|
||
## Contrat de `delta.md`
|
||
|
||
`delta.md` indique obligatoirement :
|
||
|
||
- la base requise ;
|
||
- les correctifs antérieurs requis ;
|
||
- les fichiers ajoutés ;
|
||
- les fichiers modifiés ;
|
||
- les fichiers à supprimer manuellement ;
|
||
- les validations exécutées ;
|
||
- les validations non exécutées ;
|
||
- les remarques d’application et de compatibilité.
|
||
|
||
## Application
|
||
|
||
1. Partir de la base indiquée.
|
||
2. Appliquer les deltas et correctifs antérieurs dans l’ordre indiqué.
|
||
3. Extraire l’archive à la racine du workspace.
|
||
4. Effectuer les suppressions manuelles listées dans `delta.md`.
|
||
5. Lancer les validations demandées.
|
||
|
||
Une archive déjà livrée ne doit jamais être remplacée silencieusement sous le même nom.
|