diff --git a/app/client/.husky/check-staged-files.sh b/app/client/.husky/check-staged-files.sh new file mode 100644 index 0000000000..a0c3b1eaec --- /dev/null +++ b/app/client/.husky/check-staged-files.sh @@ -0,0 +1,19 @@ +#!/bin/bash + +is_server_change=$(git diff --cached --name-only | grep -c "app/server") +is_client_change=$(git diff --cached --name-only | grep -c "app/client") + +if [ "$is_server_change" -ge 1 ]; then + echo "Running Spotless check ..." + pushd app/server > /dev/null + (mvn spotless:check 1> /dev/null && popd > /dev/null) || (echo "Spotless check failed, please run mvn spotless:apply" && exit 1) +else + echo "Skipping server side check..." +fi + +if [ "$is_client_change" -ge 1 ]; then + echo "Running client check ..." + npx lint-staged --cwd app/client && git-secrets --scan --untracked && git-secrets --scan -r +else + echo "Skipping client side check..." +fi diff --git a/app/client/.husky/pre-commit b/app/client/.husky/pre-commit index c754342b0c..df1168865b 100755 --- a/app/client/.husky/pre-commit +++ b/app/client/.husky/pre-commit @@ -1,8 +1,4 @@ #!/usr/bin/env sh . "$(dirname -- "$0")/_/husky.sh" -npx lint-staged --cwd app/client && git-secrets --scan --untracked && git-secrets --scan -r - -echo "Running Spotless check ..." -pushd app/server > /dev/null -(mvn spotless:check 1> /dev/null && popd > /dev/null) || (echo "Spotless check failed, please run mvn spotless:apply" && exit 1) +sh app/client/.husky/check-staged-files.sh