[Redmine] 저장소를 프로젝트별로 자동 생성하게 하기

레드마인의 마음에 드는 점이 여러 프로젝트를 동시에 진행할 수 있다는 점입니다. 그리고 무엇보다도 프로젝트별로 소스 저장소(SCM)를 정의할 수 있습니다. 하지만 좀 더 편하기 위해 프로젝트를 생성하면 자동으로 저장소가 생성되면 좋겠다고 생각했는데 보기 좋게 이미 기능이 제공되고 있군요. 설정을 해보도록 하겠습니다.

1. 우선 관리자로 레드마인에 접속하여 설정에 들어갑니다.

2. 아래의 이미지를 참고하여 인증탭의 REST 웹서비스 활성화에 체크합니다.
사용자 삽입 이미지
3. 아래의 이미지를 참고하셔서 저장소의 API키값을 복사해 둡니다. 없다면 생성하시길…
사용자 삽입 이미지
4. 다음의 값을 crontab에 등록하도록 합시다.
[code]*/5 * * * * root ruby /home/redmine/extra/svn/reposman.rb –redmine theeye.pe.kr
–svn-dir /svn –url http://theeye.pe.kr/svn –owner nobody
–key abcdefghijklmnopqrstu[/code]
reposman.rb라는 스크립트를 사용하여 매번 새로운 프로젝트가 생겼는지 확인하여 저장소를 자동생성합니다. 5분에 한번씩 체크합니다. 옵션에 대한 설명을 다음과 같습니다.

–redmine : 레드마인에 접속하기 위한 주소를 적습니다.
–svn-dir : SVN의 경우, 저장소 루트의 경로를 적습니다.
–url : SVN에 접속하기 위한 주소입니다. 보시다시피 아파치에 mod_dav_svn을 이용해 연동하셔야 합니다.
–owner : 저장소를 관리하기 위한 권한설정입니다. 아파치 실행권한에 맞추시면 됩니다.
–key : 아까 3번에서 복제해둔 API키 값입니다.

5. 끝
이제 프로젝트를 생성하게 되면 5분이내로 저장소가 자동으로 생성되며 레드마인의 프로젝트 내에서 보이지 않던 저장소 탭이 생기게 됩니다.