diff --git a/.github/avancement.md b/.github/avancement.md index 8eefce5b..34b3ace6 100644 --- a/.github/avancement.md +++ b/.github/avancement.md @@ -16,6 +16,14 @@ --- +## 🚧 CI : tests bash des scripts de déploiement (2026-10-02, #605, branche `ci/605-bash-tests-en-ci`) + +- Nouveau job `bash` dans `.github/workflows/ci.yml` : `bash tests/bash/run.sh` (28 tests, git/php/ssh/scp mockés) à chaque PR et push sur `main`. Ils ne tournaient pas en CI : 7 échouaient sur `main` depuis le correctif cassé `61ba614` sans que personne le voie (#569, #570). +- Vérifié dans un clone propre (sans `.deploy-targets`, `.secrets`, `vendor/`, `.env`) : 28/28 verts ; avec un script volontairement cassé la sortie est non nulle, donc le job échoue. +- Le job n'est pas requis par la protection de branche `main` (labels/php/js) : décision à prendre séparément. + +--- + ## ✅ Déploiement : composer en CLI, vérification de vendor/, rollback (2026-10-02, #570, PR #602 mergée) - Cause de l'incident #569 (6 instances en 500) : composer lancé en PHP CGI par le cron affichait son aide et sortait en 0 ; code déjà mis à jour par `git checkout`, `vendor/` ancien, aucun rollback. diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index afd2d04c..8085308d 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -197,3 +197,16 @@ jobs: - name: 🧪 Run JS tests run: npm test --silent + + # Tests des scripts de déploiement (bin/deploy-*.sh, #605) : git/php/ssh/scp + # y sont mockés, aucun besoin de base de données ni de composer install. + # Ils ne tournaient pas en CI : 7 d'entre eux échouaient sur main depuis un + # correctif cassé (61ba614) sans que personne ne le voie (cf. #569, #570). + bash: + runs-on: ubuntu-latest + steps: + - name: 📥 Checkout code + uses: actions/checkout@v5 + + - name: 🐚 Run deploy scripts tests + run: bash tests/bash/run.sh