From 41f0b308188876700ed2f1f2f26812b02e3d2935 Mon Sep 17 00:00:00 2001 From: Luke Robles Date: Thu, 17 Aug 2017 12:29:44 -0700 Subject: [PATCH] Blocking pushes to master --- test-dragon-bot.sh | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/test-dragon-bot.sh b/test-dragon-bot.sh index 1867bc89..c26395ec 100755 --- a/test-dragon-bot.sh +++ b/test-dragon-bot.sh @@ -1,3 +1,25 @@ +# Add the git hooks to the local repo. This prevents pushes on master +SCRIPTDIR="$(dirname "$0")" +HOOKDIR="$SCRIPTDIR/.git/hooks" +SCRIPT="$HOOKDIR/pre-push" +cat << EOF > $SCRIPT +#!/bin/bash +protected_branch='master' +# check each branch being pushed +while read local_ref local_sha remote_ref remote_sha +do + remote_branch=$(echo $remote_ref | sed -e 's,.*/\(.*\),\1,') + if [ $protected_branch = $remote_branch ] + then + echo "ABORT PUSH: Not allowed to push directly to $protected_branch. Use --no-verify to force." + exit 1 # push will not execute + fi +done +exit 0 +EOF + +chmod +x $SCRIPT + # Remove the running container so we cna re-use the container name 'dragon-bot' printf "\n[-] Deleting old dragon-bot container from system\n" docker rm -f dragon-bot-test