Skip to end of metadata
Go to start of metadata

 프로젝트 개발 환경 구축

전자정부 프레임워크 2.71 또는 이후 버전 준비

http://www.egovframe.go.kr/cop/bbs/selectBoardArticle.do?bbsId=BBSMSTR_000000000002&nttId=718&menu=3&submenu=2&leftsub=2

현재 2.71 버젼으로 하는 것을 강력 권장함. 그렇지 않은 경우 알 수 없는 에러가 남. 표준 프레임워크 쪽에 버그 보고함.

사전작업 

아래 내용은 기존 사용자들을 위한 것으로 해당하지 않으면 생략해도 좋다.

바로보드 관련 프로젝트들을 전부 삭제한다.

Window - Show View - Other - SVN - SVN Repositories에 313 SVN 저장소가 있으면 삭제한다.

Import Project from SVN

Package Explorer - Import - SVN - Projects from SVN - Create a new repository location - Next

> URL: svn://www.313.co.kr/steady

> User: 본인의 SVN 계정 아이디

> Password: 본인의 SVN 계정 비밀번호

> Save authentication (could trigger secure storage login) 체크 (앞으로 아이디, 비밀번호를 묻지 않음.)

 

 

이클립스 작업이 완료되면 Window - Show View - Other - SVN - SVN Repositories를 통해 정상적으로 연결되었는지 확인한다.


Import Existing Maven Project

Package Explorer 상 development-standard 프로젝트 마우스 우클릭 - Import - Maven - Existing Maven Projects


아래와 같은 화면이 나와야 정상


녹색 아이콘이 뜨는 것을 확인

 

이클립스 메이븐 설정

 

JavaScript Validator Errors

만약 프로젝트 내부에서 자바스크립트 라이브러리를 사용한다면, 워크스페이스 빌드 중 에러가 발생하는데 이는 이클립스가 자바스크립트 라이브러리의 코드가 오류인 것처럼 착각하기 때문이다. 그러므로 이 에러들이 나지 않도록 설정한다.

이미지 5.png


에러가 나는 프로젝트에서 마우스 우클릭 - Properties

이미지 7.png


Excluded던 Included던 아무 거나 선택 후 Edit...

이미지 8.png


제외 패턴을 등록한다.

이미지 9.png


정규식 표현을 사용하여 검증하지 않을 자바스크립트 파일을 등록한다.

이미지 10.png

 

이미지 11.png

 

**/highcharts.js
**/jquery*.js
**/repheal*.js
**/respond*.js
**/uglify.js


이클립스와 지라 연동 

지라와 연동하는 Mylyn Connector 설치

지라에서 생성된 Issue를 이클립스에서 바로 확인하기 위해 플러그인을 설치한다.


2015년 6월 2일 확인 결과 다른 방법으로 설치해야됨.

링크 참조 : https://confluence.atlassian.com/display/IDEPLUGIN/Installing+the+Eclipse+Connector


Window - Show View - Other - Mylyn - Task Repositories - Add Task Repository

이미지 15.png



Task 저장소에 연결하기 위해 Atlassian용 커넥터를 추가한다.

이미지 13.png


jira로 검색하여 설치한다.

이미지 14.png


Next, 약관 동의, OK, Yes(이클립스 재시작)

 

지라 Task 저장소 추가

Task Repositories - Tasks 마우스 우클릭 - Add Task Repository

이미지 12.png

 

Task 저장소 커넥터를 지라 커넥터로 선택

이미지 16.png

 

지라 저장소 설정

> Server: http://www.313.co.kr/jira

> Label: 아무거나

> User ID: 본인의 지라 계정 ID

> Password: 본인의 지라 계정 비밀번호


정보 입력 후 Validate Settings를 클릭하여 정보가 올바른지 검증

이미지 17.png

 

인증 자격이 유효하다는 메시지가 나오면 성공!

이미지 19.png

 

이 저장소의 Task 목록에 쿼리를 추가하시겠습니까? 콜!

이미지 20.png

 

폼을 이용하여 쿼리를 작성한다.

이미지 21.png

 

쿼리 파라미터를 입력한다.

> Query Title :아무거나

> Issue Details - Assigned To: Current User(내게 할당된 Task만 가져오겠다.)

이미지 22.png


자신에게 할당된 Task를 처리하기 위한 커밋 방법

만약 지라에 Issue가 생성되어 본인에게 할당이 되었다고 치자. 이 때 Issue의 상태는 Open이다.

이미지 2.png


지라 메인 페이지인 Dashboards에서 이와같이 본인에게 할당된 Issue를 확인할 수 있지만

이미지 3.png


보다 편한 개발을 위해 이클립스에서 Issue를 확인할 수도 있다.


Window - Show View - Other - Mylyn - Task List

(줄이 쳐져 있는 것은 Resolved된 Task를 말한다.)

이미지 4.png


Task를 시작하기 위해 해당 Issue 마우스 우클릭 - Start Work

→ Issue 상태가 Open에서 In Progress로 변경된다.

이미지 5.png


해당 Task에 대한 소스 코드 작성이 완료되었다면 이제 커밋을 하면 된다. 다만 커밋하기 전에 최신 버전을 받은 상태에서 커밋해야 한다.


만약 최신 버전이 아니라면 Team - Update를 통해 최신 버전을 내려받는다.


이제 커밋을 해보자. 자신이 새로 작성하거나 수정한 파일은 파일명 앞에 > 표시가 나타난다.

이미지 12.png


Task List에서 커밋 대상 Issue의 왼쪽에 보이는 동그라미 아이콘을 클릭하여 검정색으로 변경한다.

이미지 13.png


이렇게 하면 프로젝트 파일 중 자신이 작업한 파일만 검정색 글씨로 보이고, 그외의 것은 회색으로 보여 무엇이 변경된 것인지 쉽게 확인할 수 있다. (내가 변경하지 않은 파일들이 회색으로 변하지 않는 이유를 확인해 봐야 함!)

이미지 14.png


커밋 시 커밋 메시지를 작성할 수 있는데 Issue의 상태를 변경시키는 메시지 한 줄, 바로보드 커밋 메시지 규약, 개발자 코멘트를 붙인다.

STAN-번호 #스마트 커밋 명령어

[WWW313COKR][1.0.0-SNAPSHOT][아무개]

개발자 코멘트


다만 현재 첫 줄의 issue 상태 변경 메시지는 사용하지 않도록 한다. 왜냐하면 예전의 개발 흐름과 차이가 생겼기 때문이다.

예전 : 코드 작성 후 커밋 시 issue 상태를 Resolved 상태로 변경 > Crucible에서 리뷰 작성 후 리뷰어에게 요청하면, 리뷰어가 확인 후 issue close하거나 reopen issue

현재 : 코드 작성 후 커밋 > Crucible에서 리뷰 작성 시 김병우 PM을 moderator(중재자)로 이동민 아키텍트를 reviewer로 정하고 Send to Moderator 버튼을 눌러 중재자에게 리뷰 작성을 알림 > 중재자가 리뷰를 시작하면 그 때가 되서야 reviewer가 확인 후 조치

 

해결된 Issue를 리뷰어에게 리뷰 요청

Issue의 최종 상태는 Resolved가 아니고 Closed이다. 이유는 개발자가 커밋한 결과물이 올바른지에 대한 리뷰가 필요하기 때문이다.

파트별 단위 개발자는 할당받은 Task를 처리한 후 파트장에게 리뷰 요청을 하고, 파트장은 프로젝트 관리자에게 다시 리뷰 요청하는 방식이 있을 것이다. 

우리는 일단 이반장에게만 리뷰를 요청한다. 이반장 아이디는 admin이다.

 

리뷰는 지라에서 생성할 수도 있고 FECRU에서 생성할 수도 있는데, 아래는 지라에서 생성하는 방식이다.

이미지 20.png


Create crucible review 링크를 클릭하면 FECRU로 포워딩된다.

이미지 21.png


Reviewers: 폼에 직접 타이핑하던지 목록에서 찾아 리뷰어를 설정한다. 여러 명을 선택할 수 있다.

이미지 29.png


FECRU에서 현재 리뷰어로 taekyung이라는 참자가가 설정되어 있고 리뷰 상태를 확인할 수 있다.

이미지 30.png

리뷰어가 자신에게 할당된 리뷰 확인하고 완료하기

Atlassian사 개발툴끼리는 전부 연동이 되어 있어 어디서든 확인이 가능하지만 리뷰 시스템인 FECRU에서 확인해보겠다.

이미지 32.png

 

리뷰어인 taekyung이 FECRU에 로그인하면 대쉬보드에 아래와 같이 자신에게 등록된 리뷰를 확인할 수 있다. 검토 후 Complete으로 리뷰를 마치면 된다.

 이미지 33.png 


아래와 같은 경고가 나타나는 이유는 리뷰어가 커밋한 파일을 보지도 않고 Complete을 하기 때문이다.  

 이미지 34.png

 

실제 상황이라면 커밋된 파일의 

이미지 35.png


변경사항을 확인하는 리뷰 작업이 필요할 것이다.

이미지 36.png

 
자 이제 Complete 버튼을 클릭하여 리뷰를 완료한다.

이미지 37.png

 
리뷰를 확인해 보면 해당 리뷰어의 리뷰가 완료된 것을 확인할 수 있다.

이미지 39.png  

Issue 클로징

Issue의 마무리는 기본적으로 리뷰어가 한다.

Atlassian 사의 서비스는 상호 참조가 가능하기 때문에 어디서 해도 상관은 없지만, 리뷰어가 리뷰를 완료한 상태라면 FECRU에 있을 상황이 많으므로 이곳에서 진행하겠다.


리뷰 본문의 Linked Issue 항목의 링크를 클릭한다.

이미지 1.png

 
Close Issue 버튼 클릭

이미지 2.png

 
Close Issue 버튼 클릭

이미지 3.png


Issue 상태가 Closed로 바뀐 것을 확인할 수 있다.

이미지 4.png

 
여기까지가 Issue 생성부터 Issue 끝맺음까지의 하나의 주기이다.

참고로 이번 가이드에서는 요구사항 등록 단계를 건너뛰고 지라에서 Issue를 직접 생성하였다. 원래는 자마에 요구사항을 등록하면, 자동으로 지라에 해당 요구사항에 대한 Issue가 자동으로 생성된다.


새벽 3시가 되면 젠킨스/허드슨/뱀부가 빌드를 돌려 운영에 반영된다.

기타 : 프로젝트의 SVN 연결이 끊어졌을 때 대처법

Package Explore 상에서 연결할 프로젝트(project-community 등) 마우스 우클릭 - Team - Share Project

이미지 6.png


이미지 7.png

 
이미지 8.png

 
본인은 development, project-community 두 개의 프로젝트에 대해 작업을 해보았다.  

 이미지 10.png

 

기타 : 주소 목록

 

링크 저장용(tomcat 주서 변경 /standard-server를 /변경 적용 후 url)

전자정부 로그인 페이지 :  http://localhost:8080/uat/uia/egovLoginUsr.do


-끗-


Labels
  • None