2011年4月14日 星期四

Integration Redmine with VisualSVN server for Windows - Part 1

Software:
0. Windows: Windows Server 2008
1. Redmine: bitnami-redmine-1.1.2.1-windows-installer.exe
2. VisualSVN server: VisualSVN-Server-2.1.7.msi

Installation:
1. install new Windows Server 2008, don't enable IIS.
2. install VisualSVN server: repository on d drive, add install-path into environment PATH
3. install Redmine on d drive (next-by-next)

Configuration of VisualSVN server:
1. enable https on 8443 port
2. use subversion authentication (also windows authentication is OK)
3. create redmine account for Redmine integration (I suggest to use ReadOnly rights)
4. create Test_Repo repository and add redmine account on it

Configuration of Redmine:
1. login by admin
2. Administration > Settings > Authentication : Enable REST web service for future function (refresh_repository)
3. Administration > Settings > Repositories: Enable WS for repository management and Generate a key for future function (refresh_repository)
4. create a project (Test_Project)
5. Test_Project > Settings > Repository:
    choose Subversion and then fill URL (https://<MachineName>:8443/svn/Test_Repo/)
    login: redmine    Password: <password> of redmine on SVN server
6. click Test_Project > Repository, you will find it is not OK, you have to do following modifications
    * find file: subversion_adapter.rb
    * find keyword: --non-interactive, and add --trust-server-cert
    * restart Redmine services, and then redo Step6 again
    * If it still can not work, execute cmd.exe and execute "svn export https://<MachineName>:8443/svn/Test_Repo/trunk", and then input redmine account and correct password and choose "permarent"
    * then redo Step6 again, I think it is OK now.

This part 1 is how to integrate from Redmine side to SVN side so that you can click project's repository to display source control information on Redmine.

This setting can also be applied to that SVN server and Redmine are installed on different machines.

The next part 2 will show you how to integrate from SVN side to Redmine side so that developers commit their source code into SVN, and the mean time, SVN will check the log comments whether fulfill Redmine's log rule to make the log message into Redmine system.
It will check
* comments format fulfill Redmine's rule ?
* comments is too short ?
* issue number is exist ?
* owner of issue is equal to checkin user ?
* issue number is open state ?
* issue number is belong to project associated with committed repository ?


沒有留言:

張貼留言