#!/bin/sh ###################################################################### # Pre-commit hook for verifying that generated library modules match # their EXPECTED content. Library modules are generated from fragments # under the 'roles/lib_(openshift|utils)/src/' directories. # # If the attempted commit modified files under the # 'roles/lib_(openshift|utils)/' directories this script will run the # 'generate.py --verify' command. # # This script will NOT RUN if module source fragments are modified but # not part of the commit. I.e., you can still make commits if you # modified module fragments AND other files but are not comitting the # the module fragments. # Did the commit modify any source module files? CHANGES=`git diff-index --stat --cached HEAD | grep -E '^ roles/lib_(openshift|utils)/src/(class|doc|ansible|lib)/'` RET_CODE=$? ABORT=0 if [ "${RET_CODE}" -eq "0" ]; then # Modifications detected. Run the verification scripts. # Which was it? if $(echo $CHANGES | grep -q 'roles/lib_openshift/'); then echo "Validating lib_openshift..." ./roles/lib_openshift/src/generate.py --verify if [ "${?}" -ne "0" ]; then ABORT=1 fi fi if $(echo $CHANGES | grep -q 'roles/lib_utils/'); then echo "Validating lib_utils..." ./roles/lib_utils/src/generate.py --verify if [ "${?}" -ne "0" ]; then ABORT=1 fi fi if [ "${ABORT}" -eq "1" ]; then cat <