創屋ぷれす

mantis/SVN連携。自動アップデート

Source Integration PluginはSVNへのコミットログを見てmantisに取り込んでくれるが、
普通にセットアップすると手動でimportボタンを押さないと取り込んでくれない。
これだと煩わしいのでcronを使って5分毎にimportを自動化した。

【手順】
mantis(1.2.8)からシステム管理→プラグイン管理→Source Control Integration 0.16.3のリンクをクリック。
Source Control Integration: Configurationの以下の項目を変更
・Allow Remote Importsにチェック
・Allowed Addressesにlocalhostを記述
※APIキーを使う方法もありそうだがよくわからなかったのでこちらの方法で

インポートするためのスクリプトを記述
(どこにあってもいいが、以下の例は/svnがリポジトリルートの場合)
# cd /svn
# mkdir mantis_scripts
# vi mantis_scripts/import.sh

#!/bin/sh
URL="http://localhost/mantis/plugin.php?page=Source/import"
LOG_FILE=`mktemp /tmp/svn_import_log.XXX`
CURL=/usr/bin/curl
${CURL} -d "id=all" ${URL} >> ${LOG_FILE}

cronで実行できるように権限設定
# chown -R svn:svn mantis_scripts
# chmod +x mantis_scripts/import.sh

クーロンの設定
# crontab -e
*/5 * * * * /svn/mantis_scripts/import.sh

以上で、5分間隔で自動更新される。

Comments are closed.