summaryrefslogtreecommitdiffstats
path: root/genome-repo/genome-repo/genome_module/files/post-receive.template
diff options
context:
space:
mode:
Diffstat (limited to 'genome-repo/genome-repo/genome_module/files/post-receive.template')
-rwxr-xr-xgenome-repo/genome-repo/genome_module/files/post-receive.template22
1 files changed, 22 insertions, 0 deletions
diff --git a/genome-repo/genome-repo/genome_module/files/post-receive.template b/genome-repo/genome-repo/genome_module/files/post-receive.template
new file mode 100755
index 0000000..a7d9beb
--- /dev/null
+++ b/genome-repo/genome-repo/genome_module/files/post-receive.template
@@ -0,0 +1,22 @@
+#!/bin/sh
+#
+# This file is laid down by puppet as part of the genomerepo::appliance class
+# that ships with the genome-repo RPM.
+
+update_working_dir() {
+ GIT_DIR=`pwd`
+ GIT_WORK_TREE="/etc/puppet/modules/main/`/bin/basename $GIT_DIR`"
+
+ pushd $GIT_WORK_TREE
+ git --git-dir=$GIT_DIR reset --hard $1
+ echo "$GIT_WORK_TREE updated."
+ popd
+}
+
+while read oldrev newrev ref; do
+ # We only care when master gets updated
+ if [[ $ref == 'refs/heads/master' ]]
+ then
+ update_working_dir $newrev
+ fi
+done