Thứ Năm, 14 tháng 10, 2010

Cài đặt Apache+Trac+Svn trên ubuntu

Cài đặt Apache+Trac+Svn trên ubuntu

Bản ubuntu mình dùng là 10.10

1. Cài đặt các module cần thiết , bao gồm cả apache bằng apt-get.
sudo apt-get install apache2 libapache2-mod-python libapache2-svn python-setuptools subversion python-subversion

2.

Dùng easy_install của python để cài trac
sudo easy_install http://ftp.edgewall.com/pub/trac/Trac-0.12.tar.gz

Ở  thời điểm này thì bản 0.12 là bản stable .

3. Tạo các thư mục , cấu hình , add user :

sudo mkdir /svn
sudo mkdir /trac
sudo htpasswd -cm /etc/svnauth yourusername
sudo htpasswd -m /etc/svnauth nextusername


+Tạo file /etc/svnaccess
sudo vim /etc/svnaccess

các bạn dùng vi vim nano gì cũng được , localhost thì dùng gedit cũng chả sao .

Nội dung của nó kiểu thế này .
[groups]
developers = yourusername, nextusername
[ / ]
@developers = rw
* = r

mục đích là tạo group và gán quyền
developer thì đọc và ghi
còn * thì chỉ có thể đọc .

+ cấu hình apache
sudo vim /etc/apache2/sites-available/default

thêm vào

   


<Location /svn>

DAV svn
SVNParentPath /svn

AuthType Basic
AuthName "Subversion Repository"
AuthUserFile /etc/svnauth
Require valid-user

AuthzSVNAccessFile /etc/svnaccess
</Location>

<Location /trac>

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

AuthType Basic
AuthName "Trac"
AuthUserFile /etc/svnauth
Require valid-user

</Location>


Nhớ là trong thẻ nhé .

tạo file trac.ini trong /etc/ nội dung :

/etc/trac.ini
[header_logo]
alt = Logo
height = -1
link =
src = /logo.gif
width = -1

Cái file logo là 1 file bất kỳ để làm logo hiển thị phía trên tay trái cảu trac . cái này cũng không cần thiết lắm .
Nhưng muốn đệp thì phải làm :D .

Viết script để add project mới cho nhanh
#!/usr/bin/perl
$sName = $ARGV[0];
$lName = $ARGV[1];
if ($lName eq "") {
$lName = $sName;
}
$sName =~ tr/A-Z/a-z/;
$path = "sudo svnadmin create /svn/$sName";
system ($path);
$path = "sudo chown -R www-data /svn/$sName";
system ($path);
$path = "sudo trac-admin /trac/$sName initenv '$lName' 'sqlite:db/trac.db' 'svn' '/svn/$sName' --inherit=/etc/trac.ini";
system ($path);
$path = "sudo chown -R www-data /trac/$sName";
system ($path);
$path = "sudo trac-admin /trac/$sName permission add yourusername TRAC_ADMIN permission list yourusername";
system ($path);
print "Done!\n\n";

script này các bạn có thể để thẳng vào /trac
đặt tên là create.pl

chạy

perl /trac/create.pl "ProjectName" "ProjectDESC"

nhớ thay các tham số nhé .

truy cập vào dự án :
- trac : http://localhost/trac/ProjectName
- svn : http://localhost/svn/ProjectName

Done .

Không có nhận xét nào:

Đăng nhận xét