Files
BE_CPONE/.githooks/pre-push
2026-05-28 14:35:21 +07:00

37 lines
713 B
Bash
Executable File

#!/bin/sh
set -eu
remote_name=$1
remote_url=$2
case "$remote_url" in
*devcpone.aplikasi.web.id*|*10.9.10.205*)
;;
*)
exit 0
;;
esac
tmpdir=$(mktemp -d "${TMPDIR:-/tmp}/devcpone-prepush.XXXXXX")
trap 'rm -rf "$tmpdir"' EXIT HUP INT TERM
touch "$tmpdir/pushes"
cat > "$tmpdir/pushes"
while read -r local_ref local_sha remote_ref remote_sha; do
case "$local_ref:$remote_ref" in
refs/heads/master:refs/heads/master)
branch=master
;;
*)
continue
;;
esac
repo_root=$(git rev-parse --show-toplevel)
if ! "$repo_root/scripts/devcpone_sync.sh" "$branch"; then
printf '%s\n' "devcpone sync failed; blocking push" >&2
exit 1
fi
done < "$tmpdir/pushes"