November 13th, 2008

Trac and Subversion setup On CentOS5

3 Comments », Linux Tips, by nolifelover

หลังจากที่นั่งลองๆ เล่นๆกับ centos server ของผมว่าทำอะไรได้บ้างเลยอยากลง setup subversion ขึ้นมาลองเล่นซึ่งสำหรับ subversion คงไม่ยากเนื่องจากว่าสั่ง yum install ได้จึงลองลง trac ด้วยซึ่งหากใครยังไม่เคยลองทำตามขึ้นตอนที่ผมจะแนะนำเลยครับ ซึ่้งผมจะแนะนำตั้งแต่การลง mysql php จนไปถึงขั้นสุดท้ายเลยครับ
Install Mysql Server
1. ลง mysql โดยใช้ yum package
yum install mysql mysql-devel mysql-server
2. สร้าง startup
chkconfig --levels 235 mysqld on
3. เริ่มการทำงานของ Mysql
/etc/init.d/mysqld start
4. ตรวจสอบว่าเริ่มทำงานแล้ว
netstat -tap | grep mysqld

Install PHP and Apache Server
1. ลง apache และ php support โดยใช้ yum package
yum install php php-devel php-gd php-imap php-ldap php-mysql php-odbc php-pear php-xml php-xmlrpc curl curl-devel perl-libwww-perl ImageMagick libxml2 libxml2-devel
2. ทำการ config ค่าต่างๆได้ที่ /etc/httpd/conf/httpd.conf
3. สร้าง startup
chkconfig --levels 235 httpd on
4. เริ่มการทำงาน
/etc/init.d/httpd start

Install Subversion
1. ลง subversion โดยใช้ yum package
yum install subversion mod_dav_svn
2. แก้ไข nano /etc/httpd/conf/httpd.conf เพิ่มด้านล่างนี้
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so

3. เริ่มการทำงาน apache ใหม่
service httpd start

install Trac!
1. ลง python โดย yum package
yum install python
2. ลง mod_python สำหรับ apache
yum install mod_python
3. ลง MySQL-python โดย yum package และอื่นๆ
yum install MySQL-python
yum install neon neon-devel python-devel swig
wget http://dag.wieers.com/rpm/packages/clearsilver/clearsilver-0.10.4-1.el5.rf.i386.rpm
rpm -i clearsilver-0.10.4-1.el5.rf.i386.rpm
wget http://dag.wieers.com/rpm/packages/clearsilver/python-clearsilver-0.10.4-1.el5.rf.i386.rpm
rpm -i python-clearsilver-0.10.4-1.el5.rf.i386.rpm
wget ftp://ftp.cs.stanford.edu/pub/mirrors/scientific/52/x86_64/SL/python-setuptools-0.6c5-2.el5.noarch.rpm
rpm -i python-setuptools-0.6c5-2.el5.noarch.rpm

4. ดาวโหลด Trac มาแล้วทำการติดตั้ง
wget http://ftp.edgewall.com/pub/trac/Trac-0.11.2.tar.gz
tar -zxvf Trac-0.11.2.tar.gz
cd Trac-0.11.2
python setup.py install

Create SVN Repository and add to trac
1. สร้าง svn โปรแจคที่ต้องการ
cd /var
mkdir svn
chmod svn 777
cd svn
svnadmin create –fs-type fsfs /var/svn/project
2. สร้างฐานข้อมูลสำหรับไว้เก็บข้อมูลของ trac ครับ ในที่นี้จะใช้ mysql
mysql -u root
grant all privileges on *.* to 'username'@'localhost' identified by 'password';
create database trac_base;

3. เพิ่มโปรแจคลงใน trac
cd /var
mkdir trac
chmod trac 777
cd trac
trac-admin /var/trac/project initenv

จากนั้นจะมีการถามดังต่อไปนี้ครับ
Project Name [My Project]>project
Database connection string [sqlite:db/trac.db]>mysql://username:password@hostname:port/databasename
Repository type [svn]>
Path to repository [/path/to/repos]> /var/svn/project

Configure Apache Server, SVN and Trac
1. เพิ่ม permission การอ่านให้กับ apache
chown -R apache.apache /var/svn/project
chown -R apache.apache /var/trac/project

2. แก้ไข /etc/httpd/conf.d/subversion.conf เพื่อให้หาว่า repository เราอยู่ตรงไหน

>
DAV svn
SVNPath /var/svn/project
AuthType Basic
AuthName “project Repository”
AuthzSVNAccessFile /var/svn/svn-acl-conf
AuthUserFile /var/svn/project.htpasswd
Require valid-user

3. แก้ไข /etc/httpd/conf.d/trac.conf

SetHandler mod_python
PythonHandler trac.web.modpython_frontend
PythonOption TracEnv /srv/trac/project
PythonOption TracUriRoot /trac/project
AuthType Basic
AuthName “trac”
AuthUserFile /srv/trac/project.htpasswd
Require valid-user

Add User into SVN and Trac
1. เพิ่ม user สำหรับ svn
touch /var/svn/project
.htpasswd
htpasswd -m /var/svn/project
.htpasswd

2. สร้างไฟล์สำหรับกำหนดสิทธิ nano /srv/svn/svn-acl-conf โดยเพิ่มโค้ดตามนี้
[project:/]
= rw
3. เพิ่ม user สำหรับ Trac
touch /var/trac/project.htpasswd
htpasswd -m /var/trac/project.htpasswd
4. เพิ่มสิทธิ Admin สำหรับ User ที่สร้างขึ้นมา
trac-admin /var/trac/project permission add TRAC_ADMIN

จากนั้นให้ทำการ restart httpd ใหม่
service httpd restart
ที่มา:

http://www.howtoforge.com/perfect_setup_centos5.0_p4

http://www.daniel-skinner.co.uk/setup-subversion-and-trac-on-centos-5/06/01/2008

http://dev.mysql.com/doc/refman/5.0/en/adding-users.html

http://www.docunext.com/blog/2007/11/13/trac-with-mysql/

http://www.techyouruniverse.com/software/installing-trac-with-subversion-on-cent-os-5-with-neon-and-quicksilver

Last 5 posts by nolifelover

3 Responses to “Trac and Subversion setup On CentOS5”

» You can leave a response or Trackback .

  1. พงษ์ศักดิ์ Says:

    Trac and Subversion setup On CentOS5
    ผมอ่านบทความหัวข้อนี้ และได้ทดลองปฏิบัติตามขั้นตอน.. เกิดข้อสงสัยเกิดขึ้นว่า
    /etc/httpd/conf.d/trac.conf ไฟล์นี้ไม่มีอยู่จริง.. รบกวนขอความรู้เพิ่มเติม ด้วยครับ ว่าต้องหาทางแก้อย่างไร..หรือมีบทความที่ แนะนำศึกษาพิ่มเติมไหมครับ
    ขอบคุณครับ

  2. JessicaCal Says:

    Thanks for posting, definitely going to subscribe! See you on my reader.

  3. Arianarark Says:

    Very nice blog. I totally agree with your thoughts.

» Trackbacks/Pingbacks

Leave a Reply