本来だと、XML-RPCを使ったり、RSSをアグリゲートするのが良いのでしょうが、とりあえず手っ取り早く手に入れるためには、次のようにSQLiteで直接取得してしまいます。
SQL文はこちら。RSSとかでは取得できない情報が手に入ります。
$ cat closed_ticket_list.sql
.mode tabs
select id, type, time, status, summary from ticket where status not in ('closed') order by id, status;
.mode tabs
select id, type, time, status, summary from ticket where status not in ('closed') order by id, status;
スクリプトはこちら。/var/trac にあるものを、http://example.jp/xxx/trac/ という名前で公開しているという前提です。
$ cat list.sh
#!/bin/sh
for projectName in `ls -1 /var/trac`
do
echo "http://example.jp/${projectName}/trac/ticket/";
if [ -f /var/trac/$projectName/db/trac.db ]; then
sqlite3 /var/trac/$projectName/db/trac.db < closed_ticket_list.sql
fi
done
#!/bin/sh
for projectName in `ls -1 /var/trac`
do
echo "http://example.jp/${projectName}/trac/ticket/";
if [ -f /var/trac/$projectName/db/trac.db ]; then
sqlite3 /var/trac/$projectName/db/trac.db < closed_ticket_list.sql
fi
done