Introduction to Mantis, SVN & CTIP 200611494 원스타 200810047 김성원 200811466 허태경
Index 1. CTIP 1. Junit 연동및 Mail 보고 2. SVN 3. Mantis 1. Source Integration 4. Trouble Shooting
1. CTIP Continuous Test & Integration Platform
1. CTIP Continuous Test & Integration Platform 지속적인관리와테스트를통합한개발지원플렛폼빌드자동화및배포버전관리테스트및테스팅리포트프로젝트이슈관리
1. CTIP 구현도 Amazon Web Cloud EC2 Windows Server 2008 R2 Developer Eclipse Java Junit Subversive 소스커밋및병합이슈등록및해소 버전관리자동빌드테스트리포트이슈트래킹및알림 Visual SVN Jenkins JVM Mantis PHP IIS MySQL Ant
1. CTIP Junit 연동및 Mail 보고
1. CTIP Junit 연동및 Mail 보고 Test Result Report
2. SVN 형상관리도구
2. SVN SubVersioN Source 를 Version 별로관리 팀단위로충돌없이동시개발가능 (Copy-Modify-Merge 패턴 ) Backup 또는 Rollback 이가능 소스의추가 / 수정 / 삭제로그가남음
2. SVN 용어 1) Server : 여러프로젝트의 Repository 를가지고버전을관리하는서버 2) Client : Server 에접근하기위한개발자용 Client 툴 3) Repository : Server 가관리하는소스의모든정보를담고있는저장소 4) Revision : 갱신번호. 매번수정이발생할때마다증가
2. SVN 용어 5) Check-Out : 서버에서프로젝트를내려받는작업 6) Update : 현재소스를최신소스로업데이트하는작업 7) Commit : 추가 / 변경된부분을새로운버전으로업로드하는과정 8) Merge : 작업한소스가최신소스와충돌할경우합치는작업
2. SVN 용어 9) Trunk 프로젝트의중심이되는폴더 실제개발진행은이곳에서진행 10) Branches Trunk 에서뻗어나온프로젝트로써. 메인에서분리된작은프로젝트단위 11) Tags 버전업이나특정시점에서프로젝트전체를복사하여보관하는곳
2. SVN Repository Project Trunk bin src lib Branches subproject1 subproject2 bin src lib Tags 1.0.0 1.1.0 bin src lib
2. SVN Visual SVN Server
2. SVN Subversive & SVN connectors install
2. SVN Set SVN Repository Location
2. SVN Check out ( 또는 Share Project 를통해첫버전업로드 )
2. SVN Commit
2. SVN Compare with Latest from Repository
3. Mantis 버그트래킹하는사마귀
3. Mantis Bug Tracking System Project 를진행함에있어발생한 Issue 들을집계하고관리할수있음 Email 과연동하여 Issue 를알림 PHP 4.3.0 이상 MySQL 4.1.1 이상 Apache, IIS 등의 Webserver
3. Mantis Setup Mantis(1.2.19) (Window Server 2008 R2, MySQL 5.6.23, IIS6, PHP 5.6.7)
3. Mantis Login page
3. Mantis Main page
3. Mantis Create Project
3. Mantis Issue submit
3. Mantis Issue 확인
3. Mantis Issue 해결보고
3. Mantis 통계
3. Mantis Source Integration
3. Mantis Source Integration Soure 와 SourceSVN 다운로드
3. Mantis Source Integration Plugin 설치
3. Mantis Source Integration Source Integration Config
3. Mantis Source Integration Repositorty setting
3. Mantis Source Integration Changesets 화면
3. Mantis Source Integration Post-Commit hook 설정 (curl 필요 )
3. Mantis Source Integration Commit 시정규표현식에맞추어작성
3. Mantis Source Integration Post-commit 으로 Mantis 가갱신되어서처리함
Trouble Shooting 구축하면서겪었던문제점들과해결법
4. Trouble Shooting Amazon Web Cloud 에구축시용량주의 -> Windows Server 8 로깔았다가용량부족해서 Server 2008 R2 올림 현실
4. Trouble Shooting Jenkins 설치시 Tomcat 에올리면좋음 -> 어플리케이션을설치할경우서비스로관리해야함
4. Trouble Shooting Jenkins Security 설정중로그인한계정만허가해놓고계정안만들면접속할수없으므로별도의보안초기화작업을해야함. Jenkins 강제종료하면중간에설정했던것이다날라가니주의. Java 는 in-bound Port 를어플리케이션으로열면제대로동작하지않는경우가많으므로그냥해당 Port 에대해전체를여는것이좋다. JDK 와 ANT 의경로는환경변수설정을해두는것이좋음 -> ANT 의 build.xml 에서참조가꼬일수있음. Jenkins 에서 ANT 를사용할시, 자동으로 build.xml 전체를수행하는것이아니라직접 target 을지정해줘야함.
4. Trouble Shooting IIS 에 PHP 올릴시 non-thread-safe 로올릴것 -> IIS 가 Multi-Thread 로동작 IIS 6 또는 7 사용시 PHP Platform Manager 를사용하면편함 IIS 에올린 php 에 MSSQL 을붙이기위해선별도의 Extension 을붙여야함그러나별로좋지않음 Mathis 에서 MSSQL 을거의놓다시피했음. -> 알수없는오류가솟구쳐 MySQL 로갈아탐 Apache Tomcat 이좋은선택될수있음.
4. Trouble Shooting Window 환경에서 Mantis 에서 SVN 설정시 binary 와 config 를연결해줘야함 Mantis 설치후 config_inc 에서시간설정을해야경고창안뜸. 이밖에도 SMTP 설정이라던가많이할수있음. 설치후 core 폴더를지워야경고창이안뜸. 설치할때만필요한폴더임.
Thank you