bitnami 의 subversion 사용으로 redmine 연동, hooks 까지 사용한다면?
난 ... svn 을 많..............이 사용해 봤지만.... 세팅을 전혀 해본적이 없다....
하지만 테스트를 위하여 svn 저장소를 생성해야만 했다. 테스트의 목적은 좀전에 설치한 bitnami 의 redmine 과 svn 의 연동이다.
연동을 하려는 이유는 svn 의 hooks 기능으로 커밋의 메시지만 받아와서 레드마인 일감을 자동으로 처리 하는 , 소요시간을 지정하는 방법을 위해서다.
어려울거 같은 기분이 들었고 정말 어려웠다.
뭔지 몰라도 늘 사용하던 svn 은 웹으로 접근이 가능했기 때문에 생각난 것은 이 svn과 apache 가 연동 되야 한다는 것이다. ( 해당 정보 검색하니 죄다 이렇게 하길래 ;;;)
개별로 설치 했다면 아파치에 모듈 등등을 설치해야 했겠지만.... 비트나미를 분석한 결과 그런 모듈은 애초에 설치 되어 있다. 모듈 설치는 생략한다.
우선... 저장소를 만들자.
비트나미 설치와 마찬가지로 모든 상황은 root 로 진행할것이다.
# mkdir /svn
# svnadmin create --pre-1.6-compatible --fs-type fsfs /svn/test
저 명령어는 먼지 모르겠지만... 돌고 도는 검색 도중 눈에 띄는 명령어 였다. 원래는 svnadmin create -fs-type fsfs 폴더명으로 알고 있었는데 .... 여튼
저 상태에서 혹시 몰라 chmod 755 -R /svn 으로 모든 권한을 주었다.
혹시나 모듈이 궁금하면 /비트나미 홈/apahe2/conf 에 http.conf 에
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
가 추가 됬는지 확인해보자 그리고 vhost location 설정이 필요한데 나는 다른 파일에다 설정하였다.
맨 마지막 줄에
Include "/bitnami/apache2/conf/extra/httpd-subversion.conf" 을 추가 해당 파일 vi
myId= 1111
#vi svnserve.conf
[general]
anon-access = read
auth-access = write
password-db = passwd
authz-db = authz
주석을 해제하고 수정만 하면 되니 어렵진 않았다.
모든게 완료되면 저장소를 이클립스로 불러오는데 성공 할수 있다.
https 로 접근하여 아이디를 적을수도 있게 되었다. 근데.... 커밋하면 파일이 어디 갔는지를 찾을수가 없다 ㅠㅠ 아파치의 캐시에 사있던데 ;;그게 맞는지도 모르겟고 ;; 분명 인증 파일 설정파일은 /svn/test 를 읽어가는데 ;; 커밋한 파일을 ;; 어디에 있을까 좀더 풀어 봐야겠다. 물론 이클립스로 커밋 체크아웃은 된다 ㅠㅠ 실물이 어딧냐고!!!
나중에 해결 하자;;
중요한건 이게 아니다.
비트나미 관리자 로그인 후
좌측 상단 에 관리 > 설정 > 저장소로 이동한다.
저기에서 중요한건 커밋(commit)된 변경묶음을 자동으로 가져오기 의 체크여부 이다.
저장소를 클릭할때 혹은 커밋이 이루어질때 변경 사항을 통째로 가져온단다 ... 그만큼 덩치가 커지면 느리단 말이니 목표는 저것을 해제 하고 .. 변경 기록과 커멘트만 가지고와야 한다.
WS를 사용하고 API 키를 생성 하자.
임감에 참조할 키워드를 눈여겨 보고
커밋 시점에 작업 시간 기록 활성화 체크
기록된 시간에 적용한 작업 분류는 개발!!
키워드를 추가 하는건 개인의 몫이지만 내가 설정한 내용을 눈여겨 봐야 한다. 나중에 본보기로 보여 드리게 ㅎㅎ
이제 /svn/test/hooks 에 post-commit.tmpl 이란 파일을 복사하여 post-commit 로 만들어 vi 하고
#!/bin/sh
curl "http://10.112.59.201/redmine/sys/fetch_changesets?key=wL0vbKSytRnpn73civOc&id=test"
입력해준데로 소요 시간이 입력됬고 이제 일감을 마감 시킬게요
closes 는 완료 키워드였어요
자... 진척도가 100이 됫고 소요시간도 4시간 늘어났습니다.
아... 뿌듯하네요