trac-post-commit-hook使い方

Tracでのコミット時に、ログからTicketを自動クローズするスクリプトを使用しようとしたが、パーミッション関係で問題があったのでメモ。


データベースが666になっちゃう問題があるが、設定方法がよくわからないので以下でいいとしよう。

$ sudo mkdir /var/lib/svn/hooks
$ sudo mkdir trac-post-commit-hook /var/lib/svn/hooks/
$ cat /var/lib/svn/proj/hooks/post-commit
1 #!/bin/sh
2
3 REPOS="$1"
4 REV="$2"
5
6 export LANG=ja_JP.UTF-8
7 LOG=`/usr/bin/svnlook log -r $REV $REPOS`
8 AUTHOR=`/usr/bin/svnlook author -r $REV $REPOS`
9 TRAC_ENV='/var/www/trac/proj'
10 TRAC_URL='http://localhost/trac/porj'
11
12 /usr/bin/python /var/lib/svn/hooks/trac-post-commit-hook \
13 -p "$TRAC_ENV" \
14 -r "$REV" \
15 -u "$AUTHOR" \
16 -m "$LOG" \
17 -s "$TRAC_URL"

$ sudo chmod -R 666 /var/www/trac/proj/db