From 2bc10a4aa9bfb33a54e5fc3768ea652a16f8bb37 Mon Sep 17 00:00:00 2001 From: Geoffrey Thomas Date: Sun, 1 Feb 2009 10:45:08 -0500 Subject: [PATCH] svn zephyr post commit hook --- svn-hooks/commit-zephyr | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100755 svn-hooks/commit-zephyr diff --git a/svn-hooks/commit-zephyr b/svn-hooks/commit-zephyr new file mode 100755 index 0000000..f23877a --- /dev/null +++ b/svn-hooks/commit-zephyr @@ -0,0 +1,41 @@ +#!/bin/bash + +CLASS=test +INSTANCE=@ +FULL=0 + +OPTS=$(getopt -o c:i:f -l class:,instance:,full -n "$0" -- "$@") || exit $? +eval set -- "$OPTS" +while :; do + case "$1" in + -c|--class) CLASS=$2; shift 2;; + -i|--instance) INSTANCE=$2; shift 2;; + -f|--full) FULL=1; shift;; + --) shift; break;; + *) exit 1;; + esac +done +[ $# -ge 2 ] || exit 1 +REPOS=$1 +REV=$2 + +if [ "$INSTANCE" = "${INSTANCE%@}@" ]; then + INSTANCE=${INSTANCE%@}r$REV +fi + +dirs=$(svnlook dirs-changed "$REPOS" -r "$REV") +svnlook info "$REPOS" -r "$REV" | ( + read -r author + read -r datestamp + read -r logsize + log=$(cat) + echo "r$REV by $author $datestamp" + echo "$log" + svnlook changed "$REPOS" -r "$REV" + if [ "$FULL" -eq 1 ]; then + echo + svnlook diff "$REPOS" -r "$REV" + else + echo svnlook diff "$REPOS" -r "$REV" + fi +) | zwrite -d -c "$CLASS" -i "$INSTANCE" -O "auto" -s "r$REV - $dirs" -- 2.45.0