Help us understand the problem. What is going on with this article?

Python 製の課題管理ツール Trac

More than 3 years have passed since last update.

Trac

https://trac.edgewall.org/

Trac は Python で書かれた Edgewall Software 社によるオープンソースの課題管理ツール。修正BSDライセンス。
バージョンは現行の 1.2 系(2016/11~)、LTS の 1.0 系(2012/9~2015/7)、次期バージョンの 1.3 系(2016/11~)などがあり、最新安定版は2017年6月21日リリースの 1.2.2 になる。
他に Redmine や Mantis Bug Tracker などがある。

歴史

https://trac.edgewall.org/wiki/TracHistory
https://trac.edgewall.org/wiki/TracChangeLog?version=95
https://en.wikipedia.org/wiki/Trac
2003年8月に CVSTrac を参考に SQLite と Subversion を使って svntrac として書かれ始め、2003年12月に Trac にリネームされる。2004年2月に Trac のバージョンは最初に 0.0.1 から 0.1 に変更され、次に 0.1 から 0.5 にいっきに変わった。その後2004年3月に 0.6 と 0.7、そして2004年11月に 0.8 とバージョンアップしていった。

システム要件

https://trac.edgewall.org/wiki/TracInstall

  • Python 2.6 以上 3.0 未満
  • setuptools 0.6 以上
  • Genshi 0.6 以上
  • Babel 0.9.6 または 1.3 以上

インストール

構成例

  • CentOS 7.3.1611 (1706) minimal
    • Python 2.7.5 (anaconda)
    • setuptools 0.9.8 (base)
    • Apache 2.4.6 (base)
    • mod_wsgi 3.4 (base)
    • Trac 1.2.2 (easy_install)
    • Babel 2.4.0 (easy_install)
    • Genshi 0.7 (easy_install)

Trac

yum -y install gcc python-devel python-setuptools enscript
easy_install Babel
easy_install Trac

Trac より先に Babel をインストールしておくと自動的に日本語化される。

Apache

yum -y install httpd mod_wsgi
mkdir /var/www/trac
chown apache. /var/www/trac
cat << "_EOF_" > /var/www/trac/trac.wsgi && chmod 755 /var/www/trac/trac.wsgi
import os
os.environ['TRAC_ENV_PARENT_DIR'] = '/var/www/trac'
os.environ['PYTHON_EGG_CACHE'] = '/var/www/trac/eggs'
import trac.web.main
application = trac.web.main.dispatch_request
_EOF_
cat << "_EOF_" > /etc/httpd/conf.d/trac.conf
WSGIScriptAlias /trac /var/www/trac/trac.wsgi
<Directory /var/www/trac>
    WSGIApplicationGroup %{GLOBAL}
    Require all granted
</Directory>
<LocationMatch "/trac/.*/login">
   AuthType Basic
   AuthName "trac"
   AuthUserFile "/var/www/trac/.htpasswd"
   Require valid-user
</LocationMatch>
_EOF_
firewall-cmd --permanent --add-service=http && firewall-cmd --reload
httpd -t
systemctl start httpd && systemctl enable $_
setenforce 0 #TODO

Subversion

yum install subversion subversion-python mod_dav_svn
mkdir /var/www/svn
cat << "_EOF_" > /etc/httpd/conf.d/subversion.conf
<Location /svn>
    DAV svn
    SVNParentPath /var/www/svn
    <LimitExcept GET PROPFIND OPTIONS REPORT>
        AuthType Basic
        AuthName "Subversion - Authorization Realm"
        AuthUserFile /var/www/trac/.htpasswd
        Require valid-user
    </LimitExcept>
</Location>
_EOF_
httpd -t
systemctl restart httpd

BASIC 認証

htpasswd -c /var/www/trac/.htpasswd admin
htpasswd /var/www/trac/.htpasswd example_user

プラグイン

Trac Portal Plugin

https://pypi.python.org/pypi/TracPortalPlugin
Trac は複数プロジェクトを管理する機能が用意されていないので Trac Portal Plugin などを利用する必要がある。

trac-admin /var/www/trac/portal initenv
trac-admin /var/www/trac/portal permission add admin TRAC_ADMIN
easy_install -Z -U https://trac-hacks.org/svn/xmlrpcplugin/trunk
trac-admin /var/www/trac/portal config set components tracrpc.* enabled
trac-admin /var/www/trac/portal permission add authenticated XML_RPC 
easy_install TracPortalPlugin
trac-admin /var/www/trac/portal config set components tracportal.* enabled
trac-admin /var/www/trac/portal config set components tracportalopt.* enabled
trac-admin /var/www/trac/portal config set trac mainnav "wiki, dashboard, cross_search, public_projects, available_projects, new_project"
trac-admin /var/www/trac/portal config set tracportal ignore_projects portal
trac-admin /var/www/trac/portal config set tracportal trac_env_parent_dir /var/www/trac
trac-admin /var/www/trac/portal upgrade
chown -R apache. /var/www/trac/portal



AccountManagerPlugin

https://trac-hacks.org/wiki/AccountManagerPlugin
https://ameblo.jp/itboy/entry-10182930033.html

easy_install http://trac-hacks.org/svn/accountmanagerplugin/trunk
trac-admin /var/www/trac/portal config set components acct_mgr.* enabled
chown -R apache. /var/www/trac/portal

IniAdminPlugin

https://trac-hacks.org/wiki/IniAdminPlugin

TracIniAdminPanelPlugin

https://trac-hacks.org/wiki/TracIniAdminPanelPlugin

参考情報

Tracのプラグインがエラーで入らないときの対処法 | いちよんこーど
Shibuya.trac
Track Hacks

課題管理ツール

bezeklik
サーバー管理、CMS構築のお仕事募集中。 CentOS / Apache / Nginx / PHP / MySQL / Docker / CMS (eZ Platform, eZ Publish, WordPress, Drupal) / Redmine
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした