#!/bin/bash # This script will be run bazel when building process starts to # generate key-value information that represents the status of the # workspace. The output should be like # # KEY1 VALUE1 # KEY2 VALUE2 # # If the script exits with non-zero code, it's considered as a failure # and the output will be discarded. # The code below presents an implementation that works for git repository git_rev=$(git rev-parse HEAD) if [[ $? != 0 ]]; then exit 1 fi echo "BUILD_SCM_REVISION ${git_rev}" # Check whether there are any uncommited changes git diff-index --quiet HEAD -- if [[ $? == 0 ]]; then tree_status="Clean" else tree_status="Modified" fi echo "BUILD_SCM_STATUS ${tree_status}"