#!/usr/bin/env bash
set -e
: "${PERL:=$(which perl)}"
ZILD="$PERL -S zild"
main() {
for dir; do
echo "Checking: $dir"
(
cd "$dir"
[ -e Meta ] || exit 0
branch_name=$(git symbolic-ref -q HEAD)
branch_name=${branch_name##refs/heads/}
branch_name=${branch_name:-HEAD}
release_branch="$($ZILD meta branch)"
if [ "$branch_name" != "$release_branch" ]; then
note "Current branch '$branch_name' is not release branch '$release_branch'"
exit 0
fi
make update &> /dev/null || make update &> /dev/null
if [ -n "$(git status -s)" ]; then
note "Changes exist. Please review:"
git diff
git status
bash || exit 1
fi
exit 0
) || {
echo "Bailing out!"
exit 1
}
done
echo Done!
}
note() {
echo " Note: $@"
}
[ "${BASH_SOURCE[0]}" == "$0" ] && main "$@"