프로젝트 수행시 개발서버를 이용해서 여러명의 개발자가 함께 작업하는 환경 및 방법에 대해서 설명하려고 합니다.
개발자 PC 및 개발서버 구성
개발자 클라이언트 PC
소프트웨어 통합개발환경 : 이클립스
프레임워크 : 전자정부(Egov)프레임워크 (스프링(Spring) 프레임워크)
빌드 및 라이브러리 관리 : Maven
JDK : 1.8
톰캣서버 : 8.5
문서 및 소스형상관리 : Tortoise SVN
서버 PC
지속적이고 자동화된 빌드 및 배포 : 젠킨스(Jenkins)
Maven : 라이브러리 관리
톰캣서버 : 8.5
JDK : 1.8
소스형상관리서버 : Visual SVN Server
개발환경을 위해 해야할 업무
서버 PC
- Visual SVN Server 설치
레파지토리 생성(SVN Server URL), 사용자 추가, 권한 설정 - 젠킨스(Jenkins) 설치
플러그인 설치, 사용자 추가, 프로젝트 추가(소스관리(SVN) + 빌드(Maven pom.xml) + Deploy(톰캣서버) 설정) - Maven 설치
라이브러리 관리 - 톰캣서버 설치
사용자 추가, 개발자 또는 테스터가 개발서버에서 구동되는 웹서비스를 수시로 모니터링할 수 있는 URL 제공
로컬 개발자 PC
- 이클립스 설치
Maven, SVN 플러그인 설치, Maven 샘플 프로젝트 Import(최초 1회), SVN 소스 레파지토리 연동 - 톰캣서버 설치
이클립스와 연동 - Tortoise SVN 설치
Visual SVN Server 문서 레파지토리 연동
개발환경 구축 후 각 업무별 처리 절차
프로젝트 문서(산출물) 관리
- 각 개발자가 문서 SVN URL을 이용해서 개발자 PC에 체크아웃
- 개발자가 문서 작성 후 Commit
- 관리자는 SVN 폴더 update 후 문서 취합
프로젝트 개발소스 관리
- 프로젝트 기본 개발소스를 SVN에 Add 후 Commit
- 젠킨스에 접속해서 빌드 수행(정상적으로 빌드가 수행되는지 확인)
- 개발서버 웹서비스 URL 접속해서 정상적으로 화면이 표시되는지 확인
- 이클립스와 SVN 연동 후 소스 Checkout
- 개발자 개발 소스 Update
- 개발자 개발 소스 수정
- 개발자 소스 Commit
- 젠킨스 URL에 접속해서 일일빌드 실행(성공여부 확인)
- 고객 및 테스터가 웹서비스에 접속해서 기능 확인
이후 5~9번 계속 반복
개발환경 구축은 내용이 길어서 아래와 같이 연재로 구성했습니다.
1. [개발환경] 개발서버를 이용해서 여러명의 개발자가 공동작업하는 환경에 대한 설명
3. [개발환경] Visual SVN Server와 Tortoise SVN Client 툴을 설치하고 연동해서 활용하는 방법(문서공동작업, 소스형상관리)
4. [개발환경]이클립스(eclipse)와 서브버전(SVN) 연동해서 프로젝트 소스형상관리하는 방법
5. 젠킨스(Jenkins) + 톰캣(Tomcat) 서버 + 서브버전(SVN) + 메이븐(Maven) Project 자동빌드 및 배포 설정 총정리