Trac
概要部署trac
安装apache安装subversion安装python安装 ClearSilver安装sqlite安装trac建立trac环境创建一个admin用户为admin用户授权TRAC_ADMIN为trac安装插件
安装 WebAdmin 插件安装 TracAccountManager 插件配置apache为trac服务配置档案库权限下载Subversion客户端建立globle trac.ini Trac
官方网站
http://trac.edgewall.org/ 。
概要
Trac 是一个为软件开发项目需要而集成了
Wiki和问题跟踪管理系统的应用平台,是一个开源软件应用。 Trac 以简单的方式建立了一个软件项目管理的Web应用,以帮助开发人员更好地写出高质量的软件。 Trac 应用力求不影响现有团队的开发过程。
部署trac
安装apache
从
http://httpd.apache.org/ 下载apache次新版本(apache_2.0.59-win32-x86-no_ssl.msi),并安装。 根据提示输入如下信息:
Network Domain: yi-dao.com
Server Name: www
Admin Email: webmaster@yi-dao.com
默认安装。桌面右下角有一个运行的apache服务管理器图标(红羽毛和绿三角)。浏览
http://localhost/ ,成功。
安装subversion
从
http://subversion.tigris.org/ 下载subversion次新版本(svn-1.4.2-setup.exe)以及相应的python接口程序(svn-win32-1.4.2_py2.4.exe)。分别默认安装。
安装python
从
http://www.python.org/download/ 下载python次新版本(python-2.4.msi),并安装。默认安装。 从
http://apache.justdn.org/httpd/modpython/win/3.2.8/ 下载mod_python-3.2.8.win32-py2.4.exe,并执行,会提示选择apache的安装路径。 编辑apache的配置文件httpd.conf,在 !
LoadModule 段的最后加入以下几行信息后保存。
LoadModule python_module modules/mod_python.so
从
http://www.clearsilver.net/downloads/ 下载最新版本(clearsilver-0.9.14.win32-py2.4.exe)。默认安装。
安装sqlite
从
http://www.sqlite.org/download.html 下载最新版本(sqlite-3_3_12.zip)。原来这个是不需要安装的。 从
http://initd.org/tracker/pysqlite 下载pysqlite-2.3.2.win32-py2.4.exe,但是这个网站不能访问,通过Google查找到
压缩包: pysqlite-2.3.2.win32-py2.4.exe.7z。使用这个压缩包中的文件来执行安装。
安装trac
从
http://www.edgewall.com/ 下载trac最新版本(trac-0.10.3.win32.exe),并默认安装。
建立trac环境
在E:盘(我的数据专用存储设备)上创建文件夹:(E:\tracdata\home)用来作为我的第一个trac环境。 从命令行窗口执行如下命令以创建一个Subversion数据环境:
svnadmin create E:\tracdata\home\repo
从命令行窗口执行如下命令以创建一个Trac数据环境:
cd C:\python24
python Scripts\trac-admin E:\tracdata\home\trac initenv
根据提示输入如下信息:
Project Name [My Project]> home
Database Connection String [sqlite:db/trac.db]>
Repository type [svn]>
Path to repository [/path/to/repos] > E:\tracdata\home\repo
Templates directory [C:\Python24\share\trac\templates]>
创建一个admin用户
使用apache的用户密码工具来创建一个用户admin,并保存到
E:\tracdata\auth-file 中:从命令行执行以下命令:
cd c:\prog*\apache*\apache*\bin
htpasswd.exe -cm E:\tracdata\auth-file admin
根据提示输入密码,用户文件就创建好了,是一个文本文件,密码被加密了。命令的参数 -cm 表示创建文件并使用md5加密密码。如果今后需要添加一个新的用户,则只需要使用参数 -m 就行了。
为admin用户授权TRAC_ADMIN
针对刚创建的trac环境,需要为admin用户授权为管理员,在命令行执行操作:
cd c:\python24
python Scripts\trac-admin E:\tracdata\home\trac permission →
add admin TRAC_ADMIN
为trac安装插件
详细信息请参见
http://trac.edgewall.org/wiki/TracPlugins 。从
http://peak.telecommunity.com/dist/ez_setup.py 下载并保存为
ez_setup.py 文件。可以直接执行这个python程序文件。 从
http://trac.edgewall.org/wiki/PluginList 和
http://trac-hacks.org/wiki/0.10 上可以找到很多有用的插件。
安装 WebAdmin 插件
从
http://trac.edgewall.org/wiki/WebAdmin 下载 !
TracWebAdmin-0.1.2dev_r4240-py2.4.egg.zip 并把文件名最后的.zip删除,然后安装这个插件。有两种方式来安装trac插件,第一种是为每个trac环境分别安装,只需要把egg文件复制到 trac环境文件夹plugins下,并设置apache配置属性
SetEnv TRAC_ENV /path/to/projenv 和
SetEnv PYTHON_EGG_CACHE /path/to/dir。第二种方式为所有的trac环境安装插件,需要运行命令:
C:\python24\Scripts\easy_install C:\tools\trac →
\TracWebAdmin-0.1.2dev_r4240-py2.4.egg
然后配置trac环境的
trac.ini 文件,并修改如下内容:
[components]
webadmin.* = enabled
安装 TracAccountManager 插件
浏览信息
http://trac-hacks.org/wiki/AccountManagerPlugin ,可以知道如何安装这个插件:
C:\python24\Scripts\easy_install http://trac-hacks.org →
/svn/accountmanagerplugin/0.10
然后配置为 HtPasswdStore 。即编辑trac环境的trac.ini文件,并修改如下内容:
[components]
webadmin.* = enabled
acct_mgr.htfile.HtPasswdStore = enabled
acct_mgr.admin.AccountManagerAdminPage = enabled
acct_mgr.web_ui.AccountModule = enabled
trac.web.auth.LoginModule = disabled
acct_mgr.web_ui.LoginModule = enabled
acct_mgr.web_ui.RegistrationModule = enabled
[account-manager]
; configure the plugin to store passwords in the htpasswd format:
password_format = htpasswd
; with Trac 0.10 use this instead:
password_store = HtPasswdStore
; the file where user accounts are stored
; the webserver will need write permissions to this file
; and its parent folder
password_file = E:/tracdata/auth-file
配置apache为trac服务
编辑apache的httpd.conf配置文件,为trac环境和相应的subversion档案库配置url路径:
SetHandler mod_python
PythonHandler trac.web.modpython_frontend
PythonOption TracEnv E:/tracdata/home/trac
PythonOption TracUriRoot /home
DAV svn
SVNPath E:/tracdata/home/repo
AuthType Basic
AuthName "Home Subversion Repository"
AuthUserFile E:/tracdata/auth-file
Require valid-user
AuthzSVNAccessFile E:/tracdata/home/repo/conf/authz
配置档案库权限
修改
E:/tracdata/home/repo/conf/authz,以添加admin的访问权限:
[/]
admin = rw
同时修改
E:/tracdata/home/trac/conf/trac.ini :
[trac]
authz_file = E:\tracdata\home\repo\conf\authz
下载Subversion客户端
到
http://tortoisesvn.tigris.org/ 下载subverion客户端
TortoiseSVN-1.4.3.8645-win32-svn-1.4.3.msi,并安装。
建立globle trac.ini
在
C:\Python24\share\trac 下创建目录conf并将
E:/tracdata/home/trac/conf/trac.ini 复制到这个目录下,然后删除一些与当前trac环境相关的特有属性。
# -*- coding: utf-8 -*-
[attachment]
max_size = 262144
render_unsafe_content = false
[browser]
downloadable_paths = /trunk, /branches/*, /tags/*
hide_properties = svk:merge
[changeset]
max_diff_bytes = 10000000
max_diff_files = 0
wiki_format_messages = true
[header_logo]
alt =
height = -1
link = http://example.org/
src = common/trac_banner.png
width = -1
[logging]
log_file = trac.log
log_level = DEBUG
log_type = none
[mimeviewer]
enscript_modes = text/x-dylan:dylan:4
enscript_path = enscript
max_preview_size = 262144
mime_map = text/x-dylan:dylan,text/x-idl:ice,text/x-ada:ads:adb
php_path = php
silvercity_modes =
tab_width = 8
[notification]
always_notify_owner = false
always_notify_reporter = false
always_notify_updater = true
mime_encoding = base64
smtp_always_bcc =
smtp_always_cc =
smtp_default_domain =
smtp_enabled = false
smtp_from = trac@localhost
smtp_password =
smtp_port = 25
smtp_replyto = trac@localhost
smtp_server = localhost
smtp_subject_prefix = __default__
smtp_user =
use_public_cc = false
use_short_addr = false
use_tls = false
[project]
descr = My example project
footer = Visit the Trac open source project at
href="http://trac.edgewall.org/">http://trac.edgewall.org/
icon = common/trac.ico
name = globle-trac
url = http://example.org/
[search]
min_query_length = 3
[ticket]
default_component =
default_milestone =
default_priority = major
default_type = defect
default_version =
restrict_owner = false
[timeline]
changeset_long_messages = false
changeset_show_files = 0
default_daysback = 30
ticket_show_details = false
[trac]
authz_file =
authz_module_name =
base_url =
check_auth_ip = true
database = sqlite:db/trac.db
default_charset = iso-8859-15
default_handler = WikiModule
htdocs_location =
ignore_auth_case = false
mainnav = wiki,timeline,roadmap,browser,tickets,newticket,search
metanav = login,logout,settings,help,about
permission_store = DefaultPermissionStore
repository_dir =
repository_type = svn
# request_filters =
# templates_dir =
timeout = 20
[wiki]
ignore_missing_pages = false
split_page_names = false
[components]
webadmin.* = enabled
acct_mgr.htfile.HtPasswdStore = enabled
acct_mgr.admin.AccountManagerAdminPage = enabled
acct_mgr.web_ui.AccountModule = enabled
trac.web.auth.LoginModule = disabled
acct_mgr.web_ui.LoginModule = enabled
acct_mgr.web_ui.RegistrationModule = enabled
[account-manager]
# authentication_url =
generated_password_length = 8
# htdigest_realm =
password_format = htpasswd
password_store = HtPasswdStore
password_file = E:/tracdata/auth-file
没有评论:
发表评论