0.10.3 から 0.10.4 への更新。更新後には trac-admin ... upgrade を実行する必要がある。
プロジェクト毎にがんがん作成しているので、現在マシン上にtracが12サイト。 しかも微妙にディレクトリの位置が違ったりしていて面倒になってきたので、 portupgrade 実行時に自動的に trac-admin ... upgrade を行うような設定を書いた。
/usr/local/etc/pkgtools.conf の一部
AFTERINSTALL = {
'japanese/trac' => 'for c in `locate \*/conf/trac.ini` ; do sudo -u www /usr/local/bin/trac-admin ${c%conf/trac.ini} upgrade; done; /usr/local/bin/svc -t /var/service/apache2' ,
(他のportsの設定は省略)
}
(/usr/local/bin/svc -t /var/service/apache2 の部分は daemontools 管理下のapache再起動コマンドなので、ふつーのFreeBSD流儀だったら /usr/local/etc/rc.d/apache22 restart とか書くべし。)
shの変数操作で ${変数名%末尾から削りたい文字列} 記法便利。元は拡張子を削るための記法のようだが、別に拡張子だけじゃなくてもいけた。
ここ数日 portsnap サーバの更新が止まっていて cvsup 経由で更新してるマシンに比べて実運用マシンの更新が遅れたけど、 そのおかげではまらなかったとも言える。