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.

56 lines
1004 B

#!/usr/bin/env bash
#
# helpers.sh
#
# Helper functions for Travis build scripts.
#
# force strict error checking
set -o errexit
set -o pipefail
# enable extended globbing syntax
shopt -s extglob
CYAN='\033[0;36m'
MAGENTA='\033[1;35m'
NC='\033[0m' # no color
# log command before running and add a blank line
run () {
echo -e "${MAGENTA}>>>${NC} $*"
eval "$*"
local retval=$?
echo
return $retval
}
# print args as a cyan header
header () {
echo
echo -e "${CYAN}$*${NC}"
echo
}
# disallow unbound variables during build step
enter_build_step () {
set -o nounset
}
# allow unbound variables so Travis doesn't get mad at us
exit_build_step () {
set +o nounset
}
modified_cask_files () {
if [[ -z "${MODIFIED_CASK_FILES+defined}" ]]; then
MODIFIED_CASK_FILES="$(git diff --name-only --diff-filter=AM "${TRAVIS_COMMIT_RANGE}" -- Casks/*.rb)"
export MODIFIED_CASK_FILES
fi
echo "${MODIFIED_CASK_FILES}"
}
any_casks_modified () {
[[ -n "$(modified_cask_files)" ]]
}