#!/bin/sh # # Porte de qualité locale — c'est ICI que la CI de ce projet se joue. # # Le déploiement Coolify se déclenche sur webhook à chaque push : rien ne # s'interpose entre `git push` et la mise en ligne. Ce hook est donc le dernier # filet avant que du code cassé parte en dev. # # Installation (une fois par clone) : npm run hooks:install # Contournement ponctuel : git push --no-verify # set -e echo "▶ pre-push : porte de qualité (~6 s)…" start=$(date +%s) if ! npm run --silent check; then cat >&2 <<'MSG' ✗ La porte de qualité a échoué — push interrompu. Corriger, ou pousser quand même en connaissance de cause : git push --no-verify Correction automatique de la plupart des problèmes de style : npm run lint:fix && npm run lint:py:fix MSG exit 1 fi echo "✓ pre-push : tout est vert ($(( $(date +%s) - start ))s)"