Get tests passing again.
[git-central.git] / server / post-receive-trac
old mode 100644 (file)
new mode 100755 (executable)
index a4c08d3..b98445e
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
 
 . $(dirname $0)/functions
 
@@ -17,8 +17,17 @@ while read oldrev newrev refname ; do
        esac
 
        set_new_commits
+       set_rev_types
+
        echo "$new_commits" | git rev-list --reverse --stdin | while read commit ; do
-               "$PYTHON" "$POST_RECEIVE_TRAC" "$TRAC_ENV" "$short_refname" "$commit"
+               set_describe "$commit"
+               set_describe_tags "$commit"
+               author="$(git rev-list -n 1 $commit --pretty=format:'%cn <%ce>' | grep -v $commit)"
+               message="$(git rev-list -n 1 $commit --pretty=format:'%s%n%b' | grep -v $commit)"
+               "$PYTHON" "$(dirname $0)/post-receive-trac.py" "$TRAC_ENV" "$short_refname" "$describe" "$describe_tags" "$commit" "$author" "$message"
+               # Trac will crap out if we submit ticket refs too quickly
+               # http://trac.edgewall.org/ticket/6466
+               sleep 1
        done
 done