Redmine と Gitorious をサーバにインストールした

 オープンソースRuby on Railsのツールの、Redmine と Gitorious を自宅のサーバにインストールしました。
 Redmine : プロジェクト管理(チケット、バグトラッキング、技術文書の管理)に使う予定です。
 Gitorious : ソースコードやドキュメントなどのバージョン管理に使用。git のログなどをウェブから見るなどを考えています。
 これだけそろえば、ソースコードの管理、ドキュメントの管理などなど、個人(一人)開発の管理が楽になりそうです(もちろんチームではもっと楽かも)。追加で次のシステムがそろえば、私個人の開発用には十分すぎる環境ですね。

  • ビルドシステム(Continuous Integration のツールを予定)
  • 自動バックアップシステム

 現状は仮想環境(XenDomU, CentOS 5.2 x86_64)の1サーバへRedmineとGitoriousをインストールしました。今後そろえる予定のビルドサーバとバックアップは物理的に別のサーバに格納したいところです。環境再構築も面倒で手間がかかるので、おそらく差分バックアップ + ディスクイメージごとのバックアップをすることになりそうです。

参考

 Gitorious のインストールは次のエントリを参考にしました。Redmineよりも色々と手間取ることが多かったです。
 Slicehost CentOS5.2 に Gitorious をインストールした - 写経日記
 gem install ... でいくつかハマりました。gemのパッケージが新しすぎて実行できないケースがあったため、hoe(1.8.2), ruby-openid(2.1.2), echoe(3.0.2)などは括弧内のバージョンを指定してインストールしています。
 ちなみに、MySQLをソースからコンパイルしていると gem install mysql だけではこけるので、以下のようにmysql_configとincludeパスを指定して実行する必要があります。また、これだけだとライブラリ(.lib)へのパスも通ってないので、/etc/ld.so.conf にmysqlのlibのパスを追加しておきました。

sudo gem install mysql -- --with-mysql-config=/usr/local/mysql/bin/mysql_config \
  --with-mysql-include=/usr/local/mysql/include

 Railsを使ったウェブアプリケーションの導入に慣れていないこともあり、MySQLにGitorious用のデータベースを作るのを忘れていて、手間取りました。

2009-02-22 追記:
 Gitoriousがうまく動いていません。git push origin master しても次のエラーが出てリモートリポジトリにpushできませんでした。Gitorious のMLにも同様エラーがおこっているようですが・・。*1

fatal error
fatal: The remote end hung up unexpectedly 

Apache のログを見たら

127.0.0.1 - - [22/Feb/2009:14:45:50 +0900] "GET /projects/hex/repos/repository/writable_by?username=suma HTTP/1.1" 404 1146

 てのがありました。バグなのだろうか。。MLで質問したほうがいいかもしれません。

2009-02-28追記:

なんとも間抜けなことに、プロジェクトの作成をウェブ経由で行った後に、git push origin masterするべきだったようです。Create a new projectというリンクからプロジェクトを作成していなかったのがpushできない原因でした。というわけで、これから快適なGitoriousライフが過ごせたらいいなと思います。