Trac 服务器的安装与配置 (svn)

参考文章:http://wiki.ubuntu.org.cn/Trac%E7%9A%84%E5%AE%89%E8%A3%85%E8%AE%BE%E7%BD%AE

还有一篇官方文档讲的也比较详细可以参考:http://trac.edgewall.org/wiki/TracInstall#Dependencies

参考文章中已经将Trac服务器的安装与配置讲的非常清楚了。按照文章中的方法,基本上就可以搭建成功。

Ubuntu + tracd 0.11.7 + svn,版本 1.6.12 (r955767) 


最后有点迷惑的地方,就是Trac服务器的登录,或是权限认证的地方,讲的不是太清楚。

小菜我经过多次的尝试终于找到了一种权限认证的方式,但仍然也存在一些问题,比如和svn账户的同步等。

Trac简介

Trac是Edgewall公司推出的网页界面专案管理软件,尤其擅长软件BUG跟踪方面。

Trac使用Python编程语言开发。在2005年中以前,Trac以GPL发行;直到 0.9 版开始使用修改过的BSD许可证发布。基本上都是属于自由软件的许可证。该软件集成了增强的Wiki功能和版本控制功能,并可通过插件扩展其功能。

由于其插件众多、功能全面,甚至可以与很多商业的CMS系统媲美,安装也不复杂,因此应用也日益广泛。它的ticket管理及工作流插件(http://trac-hacks.org/) 使得它也可以很方便地进行简单的业务协作及流程控制。


配置SVN服务器

搭建SVN服务器,没什么可说的。参考:http://songxj.blog.51cto.com/620981/396113

本小菜创建的svn目录是:/home/robertkun/svn/repo

创建svn钩子程序:

mv /home/robertkun/svn/repo/hooks/post-commit.tmpl /home/robertkun/svn/repo/hooks/post-commit
chmod +x /home/robertkun/svn/repo/post-commit
修改post-commit 内容:
REPOS="$1"
REV="$2"
TRAC_ENV =  "/home/robertkun/trac"

/usr/bin/python usr/share/doc/trac/contrib/trac-post-commit-hook -p "$TRAC_ENV" -r "$REV"
"$REPOS"/hooks/mailer.py commit "$REPOS" $REV "$REPOS"/mailer.conf

配置PostgreSQL数据库

安装PostgreSQL数据库很简单,只需要:

sudo apt-get install postgresql

为了让trac能访问PostgreSQL,则需要安装python-psycopg2模块:

sudo apt-get install python-psycopg2

启动PostgreSQL服务器daemon(命令中的版本号可能不同):

sudo /etc/init.d/postgresql-8.3 start

添加PostgreSQL用户和数据库

添加PostgreSQL用户和数据库也很简单,只需要输入下列命令:

sudo -u postgres sh (切换到postgres用户)
createuser -A -D -P robertkun (创建robertkun用户,并提示输入密码,请输12345入以便和下文对应)
Shall the new role be allowed to create more new roles? (y/n) y
createdb -O robertkun trac (创建trac数据库)
exit (退出postgres用户,回到正常用户提示行)
Ubuntu 用户还可以安装pgDesigner 图形环境,查看PostgreSQL的使用情况。


创建配置Trac环境

Trac用目录和数据库来储存项目信息, 叫做”环境“。一个新的Trac环境是通过使用trac-admin创建出来的,同Subversion一样,Trac环境可以放至在任意位置,由于Trac是个Web应用,是通过Apache来访问的,所以通常将其设在/var/www目录中。具体命令及设置如下:

cd /home/robertkun
mkdir trac
trac-admin trac initenv
Project Name [My Project]> kill (在这里输入你的项目名称)
Database connection string [sqlite:db/trac.db]>postgres://robertkun:12345@localhost/trac (输入PostgreSQL数据库的位置)
Repository type [svn]>(默认使用svn,回车)
Path to repository [/path/to/repos]> /home/robertkun/svn/repo (在这里输入你的项目对应的Subversion地址,注意Trac默认情况下只能访问本机的Subversion仓库,在上面填写地址时不能加"file://"前缀。)
小菜安装的时候到这一步提示成功。并没有出现下一步的提示。。
Templates directory [/usr/share/trac/templates]>/usr/share/pyshared/trac/templates

配置Trac的权限认证

I. 用户创建 

Trac用htpasswd创建用户,从而可以和SVN等账号集成 

trac-admin -c home/robertkun/trac/.htpasswd kill

添加kill用户。

为kill用户增加了TRAC_ADMIN权限

进入了命令行交互模式:

robertkun@ubuntu:~/trac$ trac-admin ~/trac/
Welcome to trac-admin 0.11.7
Interactive Trac administration console.
Copyright (c) 2003-2009 Edgewall Software


Type:  '?' or 'help' for help on commands.
        
Trac [/home/robertkun/trac]> permission add kill TRAC_ADMIN


II. 用户权限设置 

依照前面的设置,虽然需用用户认证才能访问Trac,但是进入之后还是不能进行更多的管理操作。

trac-admin home/robertkun/trac

就进入了命令行交互模式。 
1. 查看所有用户及权限. 
运行 

Trac [/home/robertkun/trac]>permission list
User           Action         
------------------------------
anonymous      BROWSER_VIEW   
anonymous      CHANGESET_VIEW 
anonymous      FILE_VIEW      
anonymous      LOG_VIEW       
anonymous      MILESTONE_VIEW 
anonymous      REPORT_SQL_VIEW
anonymous      REPORT_VIEW    
anonymous      ROADMAP_VIEW   
anonymous      SEARCH_VIEW    
anonymous      TICKET_VIEW    
anonymous      TIMELINE_VIEW  
anonymous      WIKI_VIEW      
authenticated  TICKET_CREATE  
authenticated  TICKET_MODIFY  
authenticated  WIKI_CREATE    
authenticated  WIKI_MODIFY    
kill           TRAC_ADMIN     

Available actions:
 BROWSER_VIEW, CHANGESET_VIEW, CONFIG_VIEW, EMAIL_VIEW, FILE_VIEW,
 LOG_VIEW, MILESTONE_ADMIN, MILESTONE_CREATE, MILESTONE_DELETE,
 MILESTONE_MODIFY, MILESTONE_VIEW, PERMISSION_ADMIN, PERMISSION_GRANT,
 PERMISSION_REVOKE, REPORT_ADMIN, REPORT_CREATE, REPORT_DELETE,
 REPORT_MODIFY, REPORT_SQL_VIEW, REPORT_VIEW, ROADMAP_ADMIN, ROADMAP_VIEW,
 SEARCH_VIEW, TICKET_ADMIN, TICKET_APPEND, TICKET_CHGPROP, TICKET_CREATE,
 TICKET_EDIT_CC, TICKET_EDIT_DESCRIPTION, TICKET_MODIFY, TICKET_VIEW,
 TIMELINE_VIEW, TRAC_ADMIN, WIKI_ADMIN, WIKI_CREATE, WIKI_DELETE,
 WIKI_MODIFY, WIKI_VIEW

修改trac配置文件:/home/robertkun/trac/conf/trac.ini, 

在文件末尾添加:

[components]

#啟用 WebAdmin 外掛程式
webadmin.* = enabled


#啟用 IniAdmin 外掛程式
iniadmin.iniadmin.iniadminplugin = enabled

#啟用 TracWysiwyg 外掛程式
tracwysiwyg.* = enabled

#啟用 SvnAuthzAdmin 外掛程式
svnauthz.* = enabled

#啟用 AccountManager 外掛程式
acct_mgr.api.accountmanager = enabled
acct_mgr.htfile.HtPasswdStore = enabled

#關閉預設的 Http 登入認證方式,改用 AccountManager 的登入認證
trac.web.auth.LoginModule = disabled
acct_mgr.web_ui.LoginModule = enabled

#啟用帳號管理
acct_mgr.admin.AccountManagerAdminPage = enabled

#允許用戶變更密碼、刪除帳號
acct_mgr.web_ui.AccountModule = enabled

[account-manager]
password_format = htpasswd
password_file = /home/robertkun/trac/.htpasswd
password_store = HtPasswdStore

配置Apache

小菜一开始的时候,也是按照参考文章的做法,一步步的配置Apache,但后来发现Apache并没有起作用。关掉Apache 服务器照样可以登录Trac。Trac服务器和Apache的关系也就没有搞的太清楚。也罢,能用就行了,还请高人指点。


启动Trac服务器

tracd -p 8000 home/robertkun/trac/

在浏览器中输入:http://localhost:8000/



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值