Tag Archives: Mylar

Trac과 Eclipse Mylin 연동하기

이번에는 Trac과 Eclipse의 Mylin을 연동하여 환상의 협업 시스템을 구성하는 방법을 알아보겠습니다.

사실 환상은 좀 오버지만 중소규모의 회사에서 도입하면 분명히 좋을것이라 생각되는 내용입니다.

시작하기 전에 Trac을 아직 설치 하지 못하신 분들은 다음을 참고하시기 바랍니다.



Mylin에서 Trac을 지원합니다만 0.9 ~ 0.10 버젼을 지원합니다. 이번에 0.11 버젼이 새롭게 나왔던데 그냥 0.10버젼을 사용하시는게 좋을 것 같습니다.

Mylin과 Trac은 웹방식과 XML-RPC방식의 두가지 방식을 지원합니다. 위의 제가 써놓은 강좌를 따라하셨다면 웹방식으로 연결될 것입니다.

티켓을 발행하거나 읽을 때 웹 브라우저가 떠서 웹상에서 티켓을 발행하고 처리해야 하죠. 막상 해보면 별로 멋도 없고 버그질라와 연동했을때에 비해 효율성이 떨어지는 느낌입니다.

방법이 없을까 하고 찾아보다 보니 XML-RPC 플러그인을 깔면 버그질라와 동등한 환경을 구성할 수 있더군요.

Trac의 XML-RPC 플러그인은 이곳에서 다운 받을 수 있습니다. 소스를 제가 올려두겠습니다.

1178778508.zip


설치를 한번 해볼까요? 위의 소스를 적절한 위치에 올려두고 시작하겠습니다.
[code][root@Theeye src]# ls
xmlrpcplugin.zip
[root@Theeye src]# unzip xmlrpcplugin.zip
[root@Theeye src]# cd xmlrpcplugin/0.10/
[root@Theeye 0.10]# python setup.py bdist_egg
[root@Theeye 0.10]# cd dist/
[root@Theeye dist]# easy_install TracXMLRPC-0.1-py2.5.egg
Processing TracXMLRPC-0.1-py2.5.egg
Removing /usr/lib/python2.5/site-packages/TracXMLRPC-0.1-py2.5.egg
Copying TracXMLRPC-0.1-py2.5.egg to /usr/lib/python2.5/site-packages
TracXMLRPC 0.1 is already the active version in easy-install.pth


Installed /usr/lib/python2.5/site-packages/TracXMLRPC-0.1-py2.5.egg
Processing dependencies for TracXMLRPC==0.1
Finished processing dependencies for TracXMLRPC==0.1[/code]

설치는 끝났고 trac.ini에 컴포넌트 설정을 추가하겠습니다.
[code][components]
webadmin.* = enabled
tracrpc.* = enabled // 추가[/code]

다음과 같이 Eclipse환경에서 개발하는 개발자들 혹은 그룹에 XML_RPC 권한을 부여합니다.
[code]trac-admin /env/trac permission add developer XML_RPC[/code]

여기까지 왔으면 되어야 하지만 문제가 있습니다. 제가 올렸던 강좌를 따라하신 분들이라면 인증에 문제가 발생할 수 있습니다.

tracd로 standalone 모드로 실행하셨다면 문제가 될 수 있는데요. 예전 강좌에서는 digest(–auth)로 인증을 했었는데 passwd방식으로 바꾸어야 합니다.
[code][root@Theeye trac] htpasswd -nb eye eyepasswd >> passwd[/code]
위와 같이 필요한 사용자들의 계정과 비밀번호를 생성합니다.

이후 –basic-auth옵션으로 tracd를 실행합니다.
[code][root@Theeye trac]tracd -d -p 80 –basic-auth trac,/env/trac/passwd,trac /env/trac[/code]

기존의 주소에서 xmlrpc만 붙여 접속해 봅시다. (예 : http://localhost/trac/xmlrpc)
다음과 같이 XML-RPC API 페이지가 뜨면 플러그인이 정상적으로 작동하고 있는것입니다.
사용자 삽입 이미지

이제 Trac은 모두 준비가 끝난것 같습니다. 이번엔 Eclipse로 돌아가 보도록 할까요?

사용자 삽입 이미지Task Repositories 윈도우를 추가합니다. 오른쪽 버튼을 클릭하고 Add Task Repositories를 선택합니다.

사용자 삽입 이미지Trac을 선택합니다.

사용자 삽입 이미지자신의 트랙 접속 주소와 로그인 계정 정보를 입력하고 Validate Settings를 클릭합니다. 연결에 문제가 없으면 Finish 버튼이 활성화 됩니다.

사용자 삽입 이미지곧바로 Query를 작성하는 창이 뜹니다. Query Title에 대충 All이라고 적고 Finish를 선택하겠습니다. 아무것도 선택된것이 없으므로 조건이 없는것이고 조건이 없다는것은 전체를 가져오겠다는 의미를 갖습니다.

Query란?

Mylin에서는 하나의 작업을 Task라고 부릅니다. 실무를 하다보면 엄청나게 수많은 Task가 쌓이겠죠.
이 Task들에 특정 조건을 두어 내가 보고 싶은것만 그룹으로 묶어 받아볼 수 있습니다.
예를 들면 “나에게 할당 된 Task”, “현재 매우 심각한 문제”, “특정 컴포넌트에 관한 모든것” 과같이 필요한 조건을 두어 그룹으로 지정해 두고 받아볼 수 있습니다. 검색을 생각하시면 되겠군요.

곧바로 조건에 맞는 Task들의 알람이 쭉쭉 표시가 됩니다. Task List 윈도우를 추가해서 봅시다.
사용자 삽입 이미지도착한 Task의 목록이 나오는군요. 더블클릭을 하면 해당 Task의 상세 정보가 나옵니다. 문제를 해결했다면 코멘트를 달고 바로 Resolve할 수 있습니다.

해당 Task 그룹에 오른쪽 버튼을 클릭하고 New – Task를 하면 바로 Task를 추가하여 다른 개발자에게 해야할 일을 적어 티켓 발행을 할수도 있습니다.
사용자 삽입 이미지
Trac(with XML-RPC plugin) 과 Eclipse(with Mylin) 연동 글을 여기서 마치겠습니다.