2003-11-17

λ Scarab-ja

Bugzillaみたいのを使わないとやってられなくなってきたので調査。最初からBugizillaかScarabかぐらいしか考えてなかったけど。

Javaなところがいまいちではあるが、JDK1.3.1は正式版があることだし使ってみるかなあ。

λ [FreeBSD] JDK-1.3.1をインストールしよう!

要するに事前にportintstall java/javavmwrapperをするということ。 それ以外のパッケージはよほど気合を入れてインストールパッケージを削っていない限りは入っている。

JDK入れたついでにportinstall devel/apache-ant,portinstall databases/postgresql-jdbcを実行した。 CLASSPATHに入れる代わりに

ln -s /usr/local/share/java/classes/postgresql.jar /usr/local/diablo-jdk1.3.1/jre/lib/ext

を実行。…と思ったらScrabの配布ファイル中にpostgresql-jdbcドライバが入っていたよ。

λ Scrab を build

default.properties + default.postgresql.properties で軽くbuild用設定ファイルを作ったら一発で通った。

#!/bin/sh
export JAVA_HOME=/usr/local/diablo-jdk1.3.1
export ANT_HOME=/usr/local/ant
export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$ANT_HOME/bin:/usr/local/bin:$PATH
cd build
ant

buildできたからといって使えるかどうかは謎。

Postgresql初期データベースの作成(失敗)

build.properties の作成以外に、以下の作業をして mysql ファイル(0バイト)を消して postglesql を作成。

cd scarab-1.0-b17/target/webapps/scarab/WEB-INF/sql; rm mysql; touch postgresql

実行は cd scarab-1.0-b17/src/sql; sudo -u pgsql sh create-db.sh…でも失敗。いきなりCreate Tableから失敗しとる。

結局あきらめた人の日記とか見つかるし。

λ Bug Tracking System

Bug Tracking Systemの機能比較表。最初にここ見てれば…

やっぱ影舞が一番お手軽かつ十分な機能っぽい。

λ 影舞のインストール

sudo pw useradd kagemai -u 1072 -d /home/kagemai -mでユーザを作成、 install-ja.rb の先頭部分を以下のようにホームディレクトリに合わせて編集。(うちではpublic_htmlの代わりにwwwディレクトリを使っている)

$user = 'kagemai'
# $group = 'kagemai'
$setup_htaccess = true
$root_dir = '/home/kagemai'      
$html_dir = '/home/kagemai/www' 
$data_dir = '/home/kagemai/data'
$passwd_dir = '/home/kagemai/etc'

終わったらsudo -u kagemai ruby install_ja.rb。 ~kagemai/www/.htaccess にアクセス制限やCGIの動作をするための設定を適宜書く。以上。

グラフを使いたい場合は portinstall graphics/ruby-gdchart と、何かTrueTypeフォントが必要らしい。(あまり追っていない)

CGIが使えるようになってからの最低限の設定は base_url の設定。

メールでの受付

data/project/[プロジェクト名]/include にaliasesに書くためのネタが入っているので、ダブルクォートを外して .qmail-[プロジェクト名]につっこむ。 一応qmail-command(8)の仕様に合わせるため exit 0 を自分で追加しておく。

|/usr/local/bin/ruby /home/kagemai/bin/mailif.rb プロジェクト名 || exit 0

メールアドレスの場合大文字小文字の区別がないので.qmail-[プロジェクト名]のプロジェクト名は全部小文字にする。 解釈に失敗したメールをどっかに取っておきたい場合は2行目に保存先を書いておく。 失敗しようがどうしようが取っておきたい場合は.qmail-hogeファイルの先頭に保存先を書いておく。 qmailで良かった。

ruby+apache(suExec)+qmailをフツーに使ってる環境だとすんごいお手軽。tDiaryとほぼ同レベルのインストール手順だった。 PostgreSQLにするのは規模に応じてということで。

/usr/local/lib/ruby/site_ruby/1.6/parsedate.rb,date.rb と衝突

parsedate の仕様が変わったのかなんかしらんが、ruby-shim-ruby18-1.8.1.p2 でインストールされていた parsedate.rb でエラー。 多分使ってないと思うのでファイルを削除した。その後 date.rb でもエラー。

portupgrade の時に消えるように /usr/local/etc/pkgtools.conf に以下のエントリ追加。

AFTERINSTALL = {
  'lang/ruby16-shim-ruby18' => 'rm -f /usr/local/lib/ruby/site_ruby/1.6/parsedate.rb; rm -f /usr/local/lib/ruby/site_ruby/1.6/date.rb' ,
}
[]