-
-
Save PhilippeRoy/59d3e2b272c3f0ca82044bbb04bf9439 to your computer and use it in GitHub Desktop.
Jenkins: script for checking is directory has changed from last build
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash | |
DIR_PATH=$1 | |
GIT_PREVIOUS_COMMIT=$(git rev-parse --short "HEAD^") | |
GIT_COMMIT=$(git rev-parse --short HEAD) | |
if [ ! -d "$DIR_PATH" ]; then | |
echo "Directory '$DIR_PATH' not exists" | |
exit 1 | |
fi | |
if [ -z "$GIT_COMMIT" ]; then | |
echo "No current commit... fail" | |
exit 1 | |
fi | |
if [ -z "$GIT_PREVIOUS_COMMIT" ]; then | |
echo "No previous commit, files are changed!" | |
exit 0 | |
fi | |
# Check is files in given directory changed between commits | |
# NOTE: $GIT_PREVIOUS_COMMIT and $GIT_COMMIT provided by Jenkins GIT Plugin | |
CHANGED=`git diff --name-only $GIT_PREVIOUS_COMMIT $GIT_COMMIT $DIR_PATH` | |
if [ -z "$CHANGED" ]; then | |
echo "No changes dettected..." | |
exit 1 | |
else | |
echo "Directory changed" | |
exit 0 | |
fi |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment