aboutsummaryrefslogtreecommitdiff
path: root/tools/git-post-receive-hook
diff options
context:
space:
mode:
authorGravatar Holger Weiss <holger@zedat.fu-berlin.de> 2009-11-07 10:40:22 +0100
committerGravatar Holger Weiss <holger@zedat.fu-berlin.de> 2009-11-07 10:40:22 +0100
commit2b442ff177751c5ea17e792c10e6d50d7b922b08 (patch)
treebda2e1ef8977c0681e503f66ef9ae56566706a91 /tools/git-post-receive-hook
parentc3e2186b15901579cec17aca22646b9dddf2363f (diff)
downloadmonitoring-plugins-2b442ff177751c5ea17e792c10e6d50d7b922b08.tar.gz
Git commit notifications via post-receive hook
Now that we moved our Git repositories to SourceForge, we don't need to maintain local clones for generating commit notifications anymore, as SourceForge provides shell access to the repositories. Instead, we now run git-notify as a post-receive hook on the SourceForge server. Actually, we use a wrapper which executes git-notify with the desired options and which makes it easy to add other post-receive hooks in the future.
Diffstat (limited to 'tools/git-post-receive-hook')
-rwxr-xr-xtools/git-post-receive-hook23
1 files changed, 23 insertions, 0 deletions
diff --git a/tools/git-post-receive-hook b/tools/git-post-receive-hook
new file mode 100755
index 00000000..70d259e7
--- /dev/null
+++ b/tools/git-post-receive-hook
@@ -0,0 +1,23 @@
+#!/bin/sh
+
+prefix="${0%/*}/notifications" # $GIT_DIR/hooks/notifications
+recipient='Nagios Plugin Commits <nagiosplug-checkins@lists.sourceforge.net>'
+maxcommits=100
+maxdiffsize=$((300 * 1024))
+gitweburl='http://nagiosplug.git.sf.net/git/gitweb.cgi?p=nagiosplug'
+gitnotify="$prefix/git-notify.pl"
+statefile="$prefix/git-notify.dat"
+
+exec "$gitnotify" \
+ -m "$recipient" \
+ -n "$maxcommits" \
+ -s "$maxdiffsize" \
+ -t "$statefile" \
+ -u "$gitweburl" \
+ -A \
+ -C \
+ -H \
+ -S \
+ -T \
+ -X \
+ -z