Chinaunix首页 | 论坛 | 博客
  • 博客访问: 7400025
  • 博文数量: 1756
  • 博客积分: 18684
  • 博客等级: 上将
  • 技术积分: 16232
  • 用 户 组: 普通用户
  • 注册时间: 2010-06-02 10:28
个人简介

啥也没写

文章分类

全部博文(1756)

文章存档

2024年(2)

2023年(44)

2022年(39)

2021年(46)

2020年(43)

2019年(27)

2018年(44)

2017年(50)

2016年(47)

2015年(15)

2014年(21)

2013年(43)

2012年(143)

2011年(228)

2010年(263)

2009年(384)

2008年(246)

2007年(30)

2006年(38)

2005年(2)

2004年(1)

分类: BSD

2008-05-20 11:23:02

我需要在FreeBSD中完成一个与google codes一起协作的集成环境。我需要的是这样的一个环境:
1.使用google codes的subversion
2.在本地有一个trac,这个trac跟踪svn中的更新,同时可以与相关的集成、测试环境进行协作
3.在本地有一个集成测试环境,我使用了bitten来做这个事
4.支持多个项目同时进行工作
5.使用LDAP进行用户身份验证

整体的来讲,这个系统是这样的一个其作流程:
1.用户通过svn将代码提交到google codes上的svn服务器
2.本地的服务器通过svnsync把代码同步到本机的svn库中
3.用户可以通过trac访问本机的svn库中
4.在trac中的bitten插件,得到本trac中的更新,生成了客户端们的集成和测试任务
5.客户端通过bitten客户端取得本机的集成和测试任务并且进行相关的其作,把结果发回trac
6.用户可以通过本机的trac可以知道所有的测试和集成进展

这里记下的没有理念和想法,只是把实现的系统配置说明了。主要说明的是:
1.apache安装
2.subversion安装
3.trac的安装
4.trac-webadmin的安装
5.svnsync的配置
6.svn的配置
7.trac的配置
8.trac-webadmin的配置
9.bitten的安装
10.bitten的配置

Apache的安装
在FreeBSD下安装apache很简单,注意相关的配置参数就好:

cd /usr/ports/www/apache22
sudo make WITH_AUTH_MODULES=yes WITH_DAV_MODULES=yes WITH_SSL_MODULES=yes WITH_LDAP_MODULES=yes WITH_BERKELEYDB=db42 install clean

Subversion的安装
FreeBSD安装subeversion也不麻烦,同样把参数不要落了就好:

cd /usr/ports/devel/subversion
sudo make WITH_MOD_DAV_SVN=yes WITH_APACHE2_APR=yes WITH_PYTHON=yes WITH_ASVN=yes install clean

Trac的安装
安装trac使用了ports的config,注意选择好相关的配置:

cd /usr/ports/www/trac
sudo make install clean
选择SILVERCITY、DOCUTILS和SUBVERSION。

Trac-Webadmin的安装

cd /usr/ports/www/trac-webadmin
sudo make install clean

svnsync的配置
这个配置方法之前我写过。这里使用一个cron来run它。我在crontab中有这样的信息:
*/30 * * * * /home/hd/bin/syncsvn.sh
这里的syncsvn.sh差不多是这样的:
/usr/local/bin/svnsync sync file:///home/hd/svn/xbaydns

Subversion的配置
我的svn服务是over http的,也就是使用了apache的webdav集成,在/usr/local/etc/apache22/Includes中我有一个svn.conf文件,内容如下:

DAV svn
SVNParentPath /home/hd/svn
AuthType Basic
AuthName "HDMac Repository"
AuthzSVNAccessFile /home/hd/svn-auth
AuthBasicProvider ldap
AuthLDAPURL ldap://hdbsd:1389/ou=user,dc=xbaynet,dc=com?cn
AuthLDAPBindDN "cn=hd,ou=user,dc=xbaynet,dc=com"
AuthLDAPBindPassword "password"
AuthzLDAPAuthoritative on
Require valid-user

注意,这里使用了SVNParentPath,也就是多库型的svn主机,这样简化了相应的配置。后面的Auth系列是LDAP的设置。

trac的配置
初始化一个trac的目录:
trac-admin /home/hd/trac/perbay initenv
你可以,使用tracd来启动trac:
tracd --port 8000 /home/hd/trac/perbay
不过,我更喜欢使用apache/mod_python来启动trac,我在/usr/local/etc/apache22/Includes中加入了trac.conf,这里我也使用了LDAP为trac来认证:
LoadModule python_module /usr/local/libexec/apache22/mod_python.so


SetHandler mod_python
PythonHandler trac.web.modpython_frontend
PythonOption TracEnvParentDir /home/hd/trac
PythonOption TracUriRoot /trac

AuthType Basic
AuthName "Trac"
AuthBasicProvider ldap
AuthLDAPURL ldap://hdbsd:1389/ou=user,dc=xbaynet,dc=com?cn
AuthzLDAPAuthoritative on
Require valid-user

Trac-Webadmin配置
在trac中加入web-admin模块,修改conf目录中的trac.ini:
[components]
webadmin.* = enabled

将相关的用户加入管理组,让其有管理员权限:
trac-admin /home/hd/trac/perbay permission add hd TRAC_ADMIN

Bitten的安装
bitten现在还只能从svn中得到最新的版本,其它版本还是容易出现不正常的问题的。安装上不难:

svn co /home/hd/soft/bitten
cd /home/hd/soft/bitten
sudo python setup.py install

Bitten的配置
如果已经配置好了trac-webadmin,哪么bitten配置还是很简单的,先在trac.ini中加入这样的配置项:
[components]
bitten.* = enabled
上面已经为webadmin加了配置,所以不用再多写[components]了。安装了bitten后需要升级一下bitten的配置:
trac-admin /home/hd/trac/xbaydns upgrade
再登录到trac中去,使用admin给相关的用户授权。要给anonymous加上BUILD_EXEC和BUILD_VIEW权限。给有管理权限的用户加上BUILD_ADMIN权限。

阅读(1530) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~