ci: prevent edits to existing migrations
CI / 🧪 Tests Laravel (push) Successful in 2m24s
CI / 🐳 Build & Push Images (push) Successful in 1m5s

This commit is contained in:
2026-08-16 13:16:15 +02:00
parent f752c28d99
commit 7aa5c4e659
2 changed files with 50 additions and 0 deletions
+32
View File
@@ -0,0 +1,32 @@
#!/usr/bin/env sh
set -eu
base_sha="${1:-}"
head_sha="${2:-HEAD}"
if [ -z "$base_sha" ] || printf '%s' "$base_sha" | grep -Eq '^0+$'; then
echo 'Impossible de déterminer le commit de référence.'
exit 1
fi
git cat-file -e "$base_sha^{commit}"
git cat-file -e "$head_sha^{commit}"
violations="$(
git diff \
--name-status \
--diff-filter=MDTR \
"$base_sha" \
"$head_sha" \
-- database/migrations/
)"
if [ -n "$violations" ]; then
echo 'Les migrations existantes sont immuables.'
echo 'Crée une nouvelle migration corrective :'
printf '%s\n' "$violations"
exit 1
fi
echo 'Aucune migration existante modifiée.'