You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
33 lines
860 B
33 lines
860 B
#!/usr/bin/env bash
|
|
#
|
|
# Husky Pre-commit Hook
|
|
# Runs lint-fix and Build Architecture Guard on staged files
|
|
#
|
|
. "$(dirname -- "$0")/_/husky.sh"
|
|
|
|
echo "🔍 Running pre-commit hooks..."
|
|
|
|
# Run lint-fix first
|
|
echo "📝 Running lint-fix..."
|
|
npm run lint-fix || {
|
|
echo
|
|
echo "❌ Linting failed. Please fix the issues and try again."
|
|
echo "💡 To bypass this check for emergency commits, use:"
|
|
echo " git commit --no-verify"
|
|
echo
|
|
exit 1
|
|
}
|
|
|
|
# Then run Build Architecture Guard
|
|
echo "🏗️ Running Build Architecture Guard..."
|
|
bash ./scripts/build-arch-guard.sh --staged || {
|
|
echo
|
|
echo "❌ Build Architecture Guard failed. Please fix the issues and try again."
|
|
echo "💡 To bypass this check for emergency commits, use:"
|
|
echo " git commit --no-verify"
|
|
echo
|
|
exit 1
|
|
}
|
|
|
|
echo "✅ All pre-commit checks passed!"
|
|
|
|
|