From 96a4e00c0e5adec010199010d9b045e888bb0b63 Mon Sep 17 00:00:00 2001 From: Gregor Kleen Date: Fri, 26 Jul 2019 12:16:15 +0200 Subject: [PATCH] chore: perform further sanity checks before release --- is-clean.sh | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/is-clean.sh b/is-clean.sh index 83956e5c9..b63b54f46 100755 --- a/is-clean.sh +++ b/is-clean.sh @@ -1,6 +1,21 @@ #!/usr/bin/env bash -if ! ( output=$(git status --porcelain) && [ -z "$output" ] ); then +set -e + +if [ -n "$(git status --porcelain)" ]; then echo "Working directory isn't clean" >&2 exit 1 fi + +if [ "$(git rev-parse --abbrev-ref HEAD)" != "master" ]; then + echo "Not on master" >&2 + exit 1 +fi + +ourHash=$(git rev-parse HEAD) +theirHash=$(git ls-remote origin -h refs/heads/master | awk '{ print $1; }') + +if [ "$theirHash" != "$ourHash" ]; then + echo "Local HEAD is not up to date with remote master" >&2 + exit 1 +fi