- 追加された行はこの色です。
- 削除された行はこの色です。
- Trac へ行く。
#freeze
* [[Trac]]
BTS(Bug Tracking System)で問題管理のソフトです。他にもBugzilla,Scarabとかあるのですが、Subversionと連携してくれるので使ってみます。
#contents
** インストール
Tracをインストールする前にいくつかインストールする必要があります。
http://projects.edgewall.com/trac/よりtrac本体をダウンロードします。
wget http://ftp.edgewall.com/pub/trac/trac-0.8.4.tar.gz
2008/5/11現在、0.11ですが、http://www.i-act.co.jp/project/products/products.htmlより日本語にローカライズされたバージョンがダウンロードできます。
言語はpythonを使っているので、[[Python]]を参考にインストールします。
Subversionは[[Subversion]]を参考に入れておきます。次にsqliteです。[[PHP]]のsqliteを参考にインストールします。次にhttp://initd.org/tracker/pysqliteです。 pythonからsqliteを使うインターフェースでしょうか。1.1.6でないとimport sqliteで落ちました。
wget http://initd.org/pub/software/pysqlite/releases/2.0/2.0.3/pysqlite-2.0.3.tar.gz
tar xzvf pysqlite-2.0.3.tar.gz
cd pysqlite-2.0.3
python setup.py build
python setup.py install
おっエラーだらけ。
src/cursor.h:65: error: 文法エラー が '*' トークンの前にあります
ちょっとhttp://initd.org/pub/software/pysqlite/doc/install-source.htmlをみてみます。どうも、sqliteをpearからいれたかのがいけなかった。makeして入れなおすといけました。とりあえずldconfigしておきます。
そのディレクトリのscriptsにtest-pysqliteファイルがありますので、
scripts/test-pysqlite
として実行すると、OKがでました。~
2008/4/20時点では、URLはhttp://pypi.python.org/pypi/pysqliteで
wget http://oss.itsystementwicklung.de/download/pysqlite/2.4/2.4.1/pysqlite-2.4.1.tar.gz
tar xzvf pysqlite-2.4.1.tar.gz
では次にClearSilverをインストールします。オープンソースのWebテンプレート言語だそうです。0.11からはGenshiに変更されました。 http://clearsilver.net/より
wget http://www.clearsilver.net/downloads/clearsilver-0.10.1.tar.gz
tar xzvf clearsilver-0.10.1.tar.gz
cd clearsilver-0.10.1
INSTALLファイルをみて、
./configure --with-apache=/usr/local/apache2
make
make install
leopardのときmakeで
*** /work/clearsilver-0.10.5/ruby/ext/hdf/extconf.rb failed ***
Could not create Makefile due to some reason, probably lack of
necessary libraries and/or headers. Check the mkmf.log file for more
details. You may need configuration options.
ってエラーがでたんで、とりあえず
./configure --with-apache=/usr/local/apache2 --disable-ruby
にして続行しました。http://trac.edgewall.org/wiki/TracOnOsxNoFinkも参考に~
すると/usr/lib/python2.4/site-packagesにneo_cgi.soがコピーされます。
centos5できちんとパスを指定しないとneo_cgi.soがコピーされないことがありましたので、
./configure --with-apache=/usr/local/apache2 --disable-java --with-python=/usr/local/bin/python
としました。またleopardでは
cd python
python setup.py install
でインストールしました。/Library/Python/2.5/site-packages/でも確認しておきましょう~
最後に
error: Could not find suitable distribution for Requirement.parse('clearsilver==0.10.5')
ってでているのが気になるのですが....
またインストールできてないとアクセスしたときに
TracError: ClearSilver not installed (No module named neo_cgi)
って怒られます。
では最後にhttp://docutils.sourceforge.net/からDocutilsをインストールします。これはreST(reStructuredText)という形式の入力でHTMLやXMLが出力できるようなものなのだそうですが、Tracのwikiの入力にでもつかわれているのでしょうか。http://www.planewave.org/translations/rst/quickstart.ja.htmlを参考にしてみます。では早速入れてみます。
wget http://surfnet.dl.sourceforge.net/sourceforge/docutils/docutils-0.3.9.tar.gz
tar xzvf docutils-0.3.9.tar.gz
cd docutils-0.3.9
python setup.py install
では最後にEUC-JP、Shift_JISなどの日本語の文字エンコーディングがpythonでできるコーデックをインストールしておきます。http://www.python.jp/Zope/download/JapaneseCodecs
wget http://ftp.python.jp/pub/JapaneseCodecs/JapaneseCodecs-1.4.11.tar.gz
tar xzvf JapaneseCodecs-1.4.11.tar.gz
cd JapaneseCodecs-1.4.11
python setup.py install
ではようやくtracです。
tar xzvf trac-0.8.4.tar.gz
cd trac-0.8.4
python ./setup.py install
では環境をつくっていきます。
trac-admin /webroot/trac initenv
んーエラーがでました。
File "/usr/local/bin/trac-admin", line 30, in ?
import sqlite
ImportError: No module named sqlite
ちょっとパスをみてみます。
python
>>> import sys
>>> sys.path
PYTHONPATHにセットしてやればいいみたいなんですが、どこだ? とりあえず、pysqlite の1.1.6を入れてみる。げっ、動いたやんか。でも
File "/usr/local/bin/trac-admin", line 34, in ?
from trac import sync
File "/usr/local/lib/python2.4/site-packages/trac/sync.py", line 22, in ?
from svn import core, fs, delta, repos
んーー どうもsubversionでなにかせんとあかんみたいやなー [[Subversion]]のpythonを参考にインストールするとこの問題のsvnとlibsvnが出来ているので/usr/local/lib/python2.4/site-packagesにコピーしたらいけた。
では、
trac-admin /webroot/trac initenv
でプロジェクト名、svnのレポジトリパス,テンプレートディレクトリの場所を指定します。日本語化にあたって、http://www.i-act.co.jp/project/products/products.htmlからダウンロードします。
wget http://www.i-act.co.jp/project/products/downloads/trac-0.8.4-ja-1.zip
unzip trac-0.8.4-ja-1.zip
cd trac-0.8.4-ja-1
rm -rf /usr/local/share/trac/templates/
rm -rf /usr/local/share/trac/wiki-default/
cp -r templates /usr/local/share/trac/
cp -r wiki-default/ /usr/local/share/trac/
ではhttp.confを編集します。
ScriptAlias /tractest/trac.cgi "/usr/local/share/trac/cgi-bin/trac.cgi"
Alias /tractest/ "/usr/local/share/trac/htdocs/"
<Directory "/usr/local/share/trac/htdocs">
Options Indexes MultiViews
AllowOverride None
Order allow,deny
Allow from all
</Directory>
<Location "/tractest/trac.cgi">
SetEnv TRAC_ENV "/webroot/trac"
</Location>
ではブラウザよりhttp://localhost/tractest/trac.cgi
Oops...
Trac detected an internal error:
No module named neo_cgi
Traceback (most recent call last):
File "/usr/local/share/trac/cgi-bin/trac.cgi", line 25, in ?
trac.core.cgi_start()
File "/usr/local/lib/python2.4/site-packages/trac/core.py", line 533, in cgi_start
send_pretty_error(e, None)
File "/usr/local/lib/python2.4/site-packages/trac/core.py", line 473, in send_pretty_error
req.init_request()
File "/usr/local/lib/python2.4/site-packages/trac/core.py", line 341, in init_request
Request.init_request(self)
File "/usr/local/lib/python2.4/site-packages/trac/core.py", line 272, in init_request
import neo_cgi
ImportError: No module named neo_cgi
あれ?おかしいなー /usr/local/lib/python2.4/site-packages/にneo_cgi.soがない。clearsilver-0.10.1/python/neo_cgi.soをコピー
Trac detected an internal error:
Missing environment variable "TRAC_ENV". Trac requires this variable to point to a valid Trac Environment.
Traceback (most recent call last):
File "/usr/local/lib/python2.4/site-packages/trac/core.py", line 532, in cgi_start
real_cgi_start()
File "/usr/local/lib/python2.4/site-packages/trac/core.py", line 514, in real_cgi_start
env = open_environment()
File "/usr/local/lib/python2.4/site-packages/trac/core.py", line 186, in open_environment
raise EnvironmentError, \
EnvironmentError: Missing environment variable "TRAC_ENV". Trac requires this variable to point to a valid Trac Environment.
おっ、エラーが変わった。なんだ。httpd.confのlocationを間違っていた。ではもう一度。
Oops...
Trac detected an internal error:
The web server user requires read _and_ write permission
to the database /webroot/root/trac/db/trac.db and the directory this file is located in.
Traceback (most recent call last):
File "/usr/local/lib/python2.4/site-packages/trac/core.py", line 532, in cgi_start
real_cgi_start()
File "/usr/local/lib/python2.4/site-packages/trac/core.py", line 514, in real_cgi_start
env = open_environment()
File "/usr/local/lib/python2.4/site-packages/trac/core.py", line 191, in open_environment
version = env.get_version()
File "/usr/local/lib/python2.4/site-packages/trac/Environment.py", line 160, in get_version
cnx = self.get_db_cnx()
File "/usr/local/lib/python2.4/site-packages/trac/Environment.py", line 84, in get_db_cnx
raise EnvironmentError, \
EnvironmentError: The web server user requires read _and_ write permission to the database /webroot/trac/db/trac.db and the directory this file is located in.
おっ、やっと簡単に直りそうなエラーだ。
chown -R nobody:nobody /webroot/trac
やっと画面がでました。おや?ログインできんぞ?そうか。httpd.confに設定がいるんだ。
<Location "/tractest/trac.cgi/login">
AuthType Basic
AuthName "WelCome Trac!"
AuthUserFile /webroot/trac/trac.htpasswd
Require valid-user
</Location>
httpdをgracefulで設定ファイルを読み直し、
htpasswd -cb /webroot/root/trac/trac.htpasswd admin hogepass
htpasswd -b /webroot/root/trac/trac.htpasswd hogeuser hogepass1
ユーザ追加して、tracで権限を追加します。
trac-admin /webroot/trac permission add admin TRAC_ADMIN
確認
trac-admin /webroot/trac permission list
いろいろコマンドがあるので、
trac-admin help
で確認しておく
http://trac.so-kukan.com/newt/wiki/TracInstall
http://dag.wieers.com/packages/trac/
**trac.ini
shift_jisがいい場合は、
default_charset = iso-8859-15
を
default_charset = japanese.shift_jis
** リンク
** 参考書籍
** コメント
--#comment