Top / バグトラッキングシステムTracをつかう

Eclipseと連携できるバグトラッキングシステムがないかなあと探してるんですが、Tracてのが良さそうなんで使ってみました。

インストール

ログが長いのでインストールにまとめました。

色々設定

Tracを使用するにはまずプロジェクト*1を作成します。

Trac用ディレクトリの作成。その下にテスト用プロジェクト作成。

[root@localhost opt]# mkdir /opt/tracroot
[root@localhost opt]# trac-admin /opt/tracroot/tractest initenv
Creating a new Trac environment at /opt/tracroot/tractest

Trac will first ask a few questions about your environment
in order to initalize and prepare the project database.

 Please enter the name of your project.
 This name will be used in page titles and descriptions.

Project Name [My Project]>

 Please specify the connection string for the database to use.
 By default, a local SQLite database is created in the environment
 directory. It is also possible to use an already existing
 PostgreSQL database (check the Trac documentation for the exact
 connection string syntax).

Database connection string [sqlite:db/trac.db]>

 Please specify the type of version control system,
 By default, it will be svn.

 If you don't want to use Trac with version control integration,
 choose the default here and don't specify a repository directory.
 in the next question.

Repository type [svn]>

 Please specify the absolute path to the version control
 repository, or leave it blank to use Trac without a repository.
 You can also set the repository location later.

Path to repository [/path/to/repos]> /opt/svnroot

 Please enter location of Trac page templates.
 Default is the location of the site-wide templates installed with Trac.

Templates directory [/usr/share/trac/templates]>

Creating and Initializing Project
 Installing default wiki pages
 /usr/share/trac/wiki-default/InterWiki => InterWiki
 /usr/share/trac/wiki-default/TracEnvironment => TracEnvironment
 /usr/share/trac/wiki-default/TracAccessibility => TracAccessibility
 /usr/share/trac/wiki-default/TracAdmin => TracAdmin
 /usr/share/trac/wiki-default/TracInstall => TracInstall
 /usr/share/trac/wiki-default/TracRoadmap => TracRoadmap
 /usr/share/trac/wiki-default/WikiStart => WikiStart
 /usr/share/trac/wiki-default/TracIni => TracIni
 /usr/share/trac/wiki-default/TracTimeline => TracTimeline
 /usr/share/trac/wiki-default/TracPermissions => TracPermissions
 /usr/share/trac/wiki-default/WikiRestructuredTextLinks => WikiRestructuredTextLinks
 /usr/share/trac/wiki-default/TracQuery => TracQuery
 /usr/share/trac/wiki-default/TracSupport => TracSupport
 /usr/share/trac/wiki-default/TracRss => TracRss
 /usr/share/trac/wiki-default/TracRevisionLog => TracRevisionLog
 /usr/share/trac/wiki-default/TracSyntaxColoring => TracSyntaxColoring
 /usr/share/trac/wiki-default/TracInterfaceCustomization => TracInterfaceCustomization
 /usr/share/trac/wiki-default/TitleIndex => TitleIndex
 /usr/share/trac/wiki-default/WikiRestructuredText => WikiRestructuredText
 /usr/share/trac/wiki-default/TracUpgrade => TracUpgrade
 /usr/share/trac/wiki-default/SandBox => SandBox
 /usr/share/trac/wiki-default/CamelCase => CamelCase
 /usr/share/trac/wiki-default/TracModPython => TracModPython
 /usr/share/trac/wiki-default/TracLogging => TracLogging
 /usr/share/trac/wiki-default/WikiHtml => WikiHtml
 /usr/share/trac/wiki-default/TracNotification => TracNotification
 /usr/share/trac/wiki-default/TracBackup => TracBackup
 /usr/share/trac/wiki-default/TracChangeset => TracChangeset
 /usr/share/trac/wiki-default/WikiNewPage => WikiNewPage
 /usr/share/trac/wiki-default/WikiPageNames => WikiPageNames
 /usr/share/trac/wiki-default/TracLinks => TracLinks
 /usr/share/trac/wiki-default/TracTickets => TracTickets
 /usr/share/trac/wiki-default/TracWiki => TracWiki
 /usr/share/trac/wiki-default/WikiMacros => WikiMacros
 /usr/share/trac/wiki-default/TracTicketsCustomFields => TracTicketsCustomFields
 /usr/share/trac/wiki-default/WikiDeletePage => WikiDeletePage
 /usr/share/trac/wiki-default/TracStandalone => TracStandalone
 /usr/share/trac/wiki-default/TracUnicode => TracUnicode
 /usr/share/trac/wiki-default/TracFastCgi => TracFastCgi
 /usr/share/trac/wiki-default/TracImport => TracImport
 /usr/share/trac/wiki-default/TracBrowser => TracBrowser
 /usr/share/trac/wiki-default/WikiProcessors => WikiProcessors
 /usr/share/trac/wiki-default/InterTrac => InterTrac
 /usr/share/trac/wiki-default/InterMapTxt => InterMapTxt
 /usr/share/trac/wiki-default/TracReports => TracReports
 /usr/share/trac/wiki-default/TracSearch => TracSearch
 /usr/share/trac/wiki-default/TracPlugins => TracPlugins
 /usr/share/trac/wiki-default/RecentChanges => RecentChanges
 /usr/share/trac/wiki-default/TracCgi => TracCgi
 /usr/share/trac/wiki-default/WikiFormatting => WikiFormatting
 /usr/share/trac/wiki-default/TracGuide => TracGuide

Warning:

You should install the SVN bindings

---------------------------------------------------------------------
Project environment for 'My Project' created.

You may now configure the environment by editing the file:

  /opt/tracroot/tractest/conf/trac.ini

If you'd like to take this new project environment for a test drive,
try running the Trac standalone web server `tracd`:

  tracd --port 8000 /opt/tracroot/tractest

Then point your browser to http://localhost:8000/tractest.
There you can also browse the documentation for your installed
version of Trac, including information on further setup (such as
deploying Trac to a real web server).

The latest documentation can also always be found on the project
website:

  http://trac.edgewall.org/

Congratulations!
// [root@localhost opt]# chmod 777 -R /opt/tracroot/tractest/db
[root@localhost opt]# chown apache:apache /opt/tracroot/tractest/db -R

Apacheの設定追加。

httpd.confに以下を追加。

/trac, /tractest のコンテキストの設定

Alias /trac "/usr/share/trac/htdocs/"
ScriptAlias /tractest /var/www/cgi-bin/trac.cgi
<Location "/tractest">
    SetEnv TRAC_ENV "/opt/tracroot/tractest"
</Location>

複数のプロジェクトを管理するにはココ↑を複数設定すればよいと思う。

リスタート。

[root@localhost conf]# /etc/init.d/httpd restart
httpd を停止中:                                            [  OK  ]
httpd を起動中:                                            [  OK  ]
[root@localhost conf]#

アクセスしてみる

http://[ホスト名]/tractest/

へアクセスして、トップページが表示されることを確認します。

pic.gif

ユーザ管理

Tracにアクセスするためのユーザ管理方法についてです。ためしにmkinoというユーザを追加してみます。

[root@localhost tractest]# htpasswd -c /opt/tracroot/tractest/.htpasswd mkino
New password:
Re-type new password:
Adding password for user mkino
[root@localhost tractest]#

これで.htpasswdファイルにmkinoが追加されました。

あとはこれをTracのURLにアクセスするときに参照するようhttpd.confに設定しておけばOKです。

httpd.confの設定

Alias /trac "/usr/share/trac/htdocs/"
ScriptAlias /tractest /var/www/cgi-bin/trac.cgi
<Location "/tractest">
    SetEnv TRAC_ENV "/opt/tracroot/tractest"
</Location>
↑この設定は上ですでにやってある

<LocationMatch "/.+/login$">
 AuthType Basic
 AuthName "Trac"
 AuthUserFile /opt/tracroot/tractest/.htpasswd
 Require valid-user
</LocationMatch>
↑loginってURLに対してBasic認証を追加してある

以上でTracのログインリンクをクリックするとBasic認証のダイアログがあがるようになります。上のmkino/***でログインが可能になりました。

たとえばプロジェクトで使用しているSubversionと同じ.htpasswdファイルを参照するようにすれば、ユーザ管理を共有できますね。

<Location "/svn">
  DAV svn
  SVNPath /opt/svnroot
  AuthName "Subversion repository"
  AuthType Basic
  Require valid-user
  AuthUserFile /opt/tracroot/tractest/.htpasswd
</Location>
↑こんな感じで。。

コンテンツ一覧

関連リンク


この記事は

選択肢 投票
おもしろかった 3  
そうでもない 0  
  • ちなみにrpmを使わないでインストールした場合はtrac.cgiが/var/www/cgi-binにおかれないので、 ScriptAlias? /tractest /usr/share/trac/cgi-bin/trac.cgi と指定する必要がある。 -- きの? 2007-06-07 (木) 00:45:31
  • chmod 777の箇所は全部、chown apache:apacheでやってみるか? -- きの? 2007-06-08 (金) 00:14:33
  • yum install python-clearsilverも必要かな。 -- きの? 2007-08-02 (木) 20:12:16
  • うちでは日本語版を使ってるので、実際は日本語版をインストールしました。 -- きの? 2007-08-03 (金) 08:32:39

Top / バグトラッキングシステムTracをつかう

現在のアクセス:6937


*1 URLのコンテキストに対応する

添付ファイル: filepic.gif 796件 [詳細]

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2008-10-20 (月) 23:26:02 (4042d)