Initial commit
This commit is contained in:
31
skills/git-pr/scripts/smart_qa.sh
Executable file
31
skills/git-pr/scripts/smart_qa.sh
Executable file
@@ -0,0 +1,31 @@
|
||||
#!/bin/bash
|
||||
# Détecte les fichiers PHP modifiés et lance make qa si nécessaire
|
||||
# Usage: smart_qa.sh
|
||||
# Exit: 0=ok/ignoré, 1=échec QA
|
||||
|
||||
set -euo pipefail
|
||||
|
||||
# Détecter fichiers PHP modifiés
|
||||
PHP_FILES=$(git diff --name-only --cached | grep '\.php$' || true)
|
||||
|
||||
if [ -z "$PHP_FILES" ]; then
|
||||
echo "ℹ️ Aucun fichier PHP modifié - QA ignorée"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
echo "🔍 Fichiers PHP détectés - Lancement de make qa..."
|
||||
echo "$PHP_FILES" | sed 's/^/ - /'
|
||||
|
||||
# Lancer QA avec timeout
|
||||
if timeout 600 make qa; then
|
||||
echo "✅ QA passée avec succès"
|
||||
exit 0
|
||||
else
|
||||
EXIT_CODE=$?
|
||||
if [ $EXIT_CODE -eq 124 ]; then
|
||||
echo "❌ QA timeout (>600s)" >&2
|
||||
else
|
||||
echo "❌ QA échouée" >&2
|
||||
fi
|
||||
exit 1
|
||||
fi
|
||||
Reference in New Issue
Block a user