とりあえずTracで

colinux+Subversion+Trac(+doxygen)で開発環境Portable


開発作業はひとところで開発マシン・開発サーバー・・・を用意して、一気に行うのが一番いいと思うのですが、自社と客先を行ったり来たりする現状が。。。

外部にサーバを出すのが'アレ'そうなので、どうしたものかと思っていたのですが、「開発環境を持ち運べばいいじゃないかっ☆」ということに気がついた。
まぁ、colinuxで開発しつつcolinux上に立てたTracサーバでプロジェクト管理もやってしまおうという計画(外部サーバでコンパイルができるときは、マシンパワーの関係上そちらでコンパイルはやるけど・・・)

とりあえず、colinuxはすでに使用しているので、その上にApache、subversion、Trac、doxygenを入れてみようと思う。
↑詳細は後で書くとして、Admin系のプラグインを追加したけど、パスワードをいじろうとすると、エラーが、、、要調査です。!!

下準備

仕上げ部分はソースからコンパイルするとして、下準備はパッケージで入れよう。(若干妥協)
パッケージで入れたものは以下
  • Python
  • zlib
  • readline
というか、たいていの環境なら最初から入ってますね^^;
今回の導入は、Ubuntu(Server)の最小構成からスタートなので、いろいろ足りませんでした。
パッケージのインストールは
apt-get install Python*
apt-get install zlib*
apt-get install readline*
みたいな。
その際に、いろいろ付属品も入るが、どうせ必要なものと言い聞かせました。

sqliteのインストール

ここからはソースからの導入。
使用したのは、sqlite-3.3.17です。
tar zxvf sqlite-3.3.17.tar.gz
cd sqlite-3.3.17
./configure
make
make install
のような流れで。ここはエラー無く完了!

PySqliteのインストール

こいつは、なにやらPythonとsqliteを繋ぐモジュールだとか違うとか。。。
使用したのは、pysqlite-2.3.3です。
tar zxvf pysqlite-2.3.3.tar.gz
cd pysqlite-2.3.3
python setup.py install
で、OK。。。のはずが、エラー発生!
src/connection.h:26:20: error: Python.h: No such file or directory
なにやら、'Python.h'がないと怒っておられる様子。
たぶんあれだと思い、開発パッケージを落としてみる。
apt-get install python-dev
今度はOK!!
やはり、基本は焦らず騒がずです^^

Apacheのインストール

散々Apacheのクロスコンパイルをやったおかげで、セルフコンパイルのお手軽さに感動w
使用したのは、httpd-2.2.4です。
tar jxvf httpd-2.2.4.tar.bz2
cd httpd-2.2.4
./configure --enable-so --enable-dav --with-included-apr
make
make install
Apacheの設定については、セキュリティーの問題とかが絡んでくるから勉強の必要があるなぁ。。
今回は、とりあえず動くことを目標にw(SSLとか入れないとなぁ)

mod_pythonのインストール

cgiとしてpythonを動かせるようにするらしいですよ?
使用したのは、mod_python-3.3.1です。
tar zxvf mod_python-3.3.1.tgz
cd mod_python-3.3.1
./configure --with-apxs=/usr/local/apache2/bin/apxs
make
make install
これでOK、、、のはずが、エラー!!
apt-getでいろいろ入れてたときに、libpthread-devも入れていたのですが、調べるとこいつが原因らしい。。。
調べてる最中に日本語のページが見つからなかったTT(というか、全体数も少なかった・・・)
まれなエラーなのか??

swigのインストール

なにやらスクリプト言語からC/C++のコードを使用するためのラッパーらしいですよ?
使用したのは、swig-1.3.29です。これは次にインストールするsubversionからのご指名ですw
tar zxvf swig-1.3.29.tar.gz
cd swig-1.3.29
./configure
make
make install
ここは問題なく終了

subversionのインストール

ここからが本番かな??neonは飛ばしたので、セキュリティー的にはだめだけど、とりあえず動かしたい!
使用したのは、subversion-1.4.3です。
tar jxvf subversion-1.4.3.tar.bz2
cd subversion-1.4.3
./configure \
>--enable-swig-bindings=python \
>--with-swig=/usr/local/bin/swig \
>--with-libs=/usr/local \
>--with-apr=/usr/local/apache2 \
>--with-apr-util=/usr/local/apache2 \
>--with-apxs=/usr/local/apache2/bin/apxs
make
make install
すんなりOK。。。本当にオプションあってるかな??

続けて、PythonからSubversionを使うためのオプションをインストール
make swig-py
make install-swig-py
成功すると、'/usr/local/lib/svn-python'ができるので、下記のようにパスを通します。

Light Material曰く、
echo /usr/local/lib/svn-python > /usr/lib/python2.4/site-packages/svn-python.pth
私の環境はPython2.5なのでそこは適宜修正。
その他、
ln -s /usr/local/lib/svn-python /usr/local/lib/python2.5/site-packages/svn-python
ln -s /usr/local/lib/svn-python/svn /usr/locallib/python2.5/site-packages/svn
ln -s /usr/local/lib/svn-python/libsvn /usr/local/lib/python2.5/site-packages/libsvn
みたいにしてあるところもあるけど、同じ意味なのか??

ClearSilverのインストール

こいつについては詳細は、、、テンプレートエンジンらしい。。。
使用したのは、clearsilver-0.10.4です。
tar zxvf clearsilver-0.10.4.tar.gz
cd clearsilver-0.10.4
./configure --disable-ruby --disable-perl --disable-java --disable-csharp
make
make install
でいけるかな!と思ったら、なんかPython用のモジュールを作ってないっぽい・・・
よく見ると、configureログに
checking for python includes... not found
!!!
なぜかわからないけど、見つけれてないご様子???
./configure --with-python=/usr/bin/python
を追加して再度makeを。

Docutilsのインストール

よくわかんないけど、とりあえず入れてみる。
使用したのは、docutils-0.4です。
tar zxvf docutils-0.4.tar.gz
cd docutils
python setup.py install

SilverCityのインストール

コードのシンクタックハイライトをしてくれるらしい。
使用したのは、SilverCity-0.9.7です。※0.9.6はバグってるらしい。
tar zxvf SilverCity-0.9.7.tar.gz
cd SilverCity-0.9.7
python setup.py build
python setup.py install

Tracのインストール

いよいよラスボスの登場ですwこれが終わればひと段落ですね!
使用したのは、trac-0.10.4-jaです。インタアクト株式会社で日本語化されたもの。
unzip trac-0.10.4-ja.zip
cd trac-0.10.4
python ./setup.py install

これで一応完了!!長かった。。。

動作確認をするにあたり、Apacheのアカウント作成・リポジトリ作成・アクセス権の設定等々めんどくさいことが山済みになっておりました。
このあたりは、もっとスマートに解決するすべがありそうなので、要調査

ここからは隠しダンジョン、もといプラグインのインストールをしていく。

プラグインのインストール

setuptoolsのインストール

まず、プラグインインストールするために、setuptoolsのインストールを行う。
ちょっと環境がかわいそうなことになっていたため、ソースから入れる。
使用したのは、setuptools-0.6c3です。
tar zxvf setuptools-0.6c3.tar.gz
cd setuptools-0.6c3
python setup.py install
これで、tracプラグインが使用できるようになりました。

WebAdminのインストール

公式にあるパッケージ(?)はPython2.3用と2.4用しかないため、(内の環境は2.5)ソースから作成する。
使用したのは、リポジトリの最新版(0.1.2dev_r4429)です。
svn co http://svn.edgewall.com/repos/trac/sandbox/webadmin/
python setup.py install
この時点で、TRAC_ADMIN権限のユーザでログインすれば、メニューに[admin]が現れます。
現れない場合は、権限を追加する。
trac-admin /path/to/trac permission add username TRAC_ADMIN
権限の確認をする場合は、
trac-admin /path/to/trac permission list

AccountManagerのインストール

公式にあるリンクから最新のソースをcheckoutします。
使用したのは、リポジトリの最新版(0.10)です。
svn co http://trac-hacks.org/svn/accountmanagerplugin/0.10
python setup.py install
これで、ブラウザ上からアカウントの操作が可能になる、、、ようです。
何でかメニューに登場しません。。。T T

IniAdminのインストール

これで、(たぶん)/path/to/trac/conf/trac.iniの操作がWEB上から可能になります。
使用したのは、iniadminplugin-0.10です。
unzip iniadminplugin-0.10.zip
cd iniadminplugin-0.10
python setup.py install

WebAdminUsersのインストール

これで、ユーザアカウントの操作がWEB上から可能になります。
unzip webadminusersplugin.zip
cd webadminusersplugin.zip
python setup.py install

doxygenのインストール


TracGanttのインストール

Ticketに日付情報を負荷することができ、スケジュール管理に使えるかなと。
TracGanttからソースをダウンロードします。
使用したのは、TracGantt-0.3.2aです。
tar TracGantt-0.3.2a.tar.gz
cd TracGantt-0.3.2a
python setup.py install
あとは、/path/to/trac/conf/trac.iniに下記を追加する。
...
[components]
...
tracgantt.* = enabled

...
[ticket-custom]
due_assign = text
due_assign.label = 開始予定日
due_assign.value = YYYY/MM/DD

dependencies = text
dependencies.label = 依存タスクNo
dependencies.value =

due_close= text
due_close.label = 終了予定日
due_close.value = YYYY/MM/DD

include_gantt = checkbox
include_gantt.label = ガントチャートに載せるか否か
include_gantt.value =

[gantt-charts]
date_format = %Y/%m/%d
日本語を使う場合は、trac.iniをUTF-8にすること。
また、日付フォーマットは後から変えると厄介らしいので、よく考えることだって。


名前:
コメント:
最終更新:2007年06月10日 12:11
ツールボックス

下から選んでください:

新しいページを作成する
ヘルプ / FAQ もご覧ください。