본문 바로가기
DevOps/Jenkins

[CI] Jenkins로 자동 배포하기

by cusmaker 2016. 5. 11.
반응형

대상 프로젝트

- Spring, JDK 1.7, Tomcat7, Ant, Mercurial, Grails



1. Jenkins 설치

- 다운로드 : https://jenkins.io/

2. Jenkins 플러그인 설치

- Deploy war/ear to a container

- Mercurial

3. Jenkins 글로벌 셋팅 변경

- JDK 패스 설정

- Ant 이름 등록(Ant 사용시)

> Workspace에 build.xml 추가

4. 배포지 톰켓 설치

- manager 설치

- 계정 및 권한 설정 (manager-script,manager-gui)

- 소스파일 업로드 사이즈 설정 (\TomcatHome\webapps\manager\WEB-INF\web.xml)

    <multipart-config>

      <!-- 100MB max -->

      <max-file-size>104857600</max-file-size>

      <max-request-size>104857600</max-request-size>

      <file-size-threshold>0</file-size-threshold>

    </multipart-config>


5. Jenkins 프로젝트 생성 및 구성 설정

- 소스 코드 관리 설정(Mercurial)

- Build 설정(Invoke Ant 사용시)

> Invoke Ant에서 Ant Version 설정(기존 글로벌 구성설정 선택)

> Target은 비워두면 Workspace 루트에서 build.xml 자동 선택


- Build 설정(Grails 사용시)

> Build With Grails 추가후 Targets에 "war" 등록

> server.port에 "80" 지정(포트 변경가능)

> 테스트 빌드로 뽑고 싶을경우 Properties에 "grails.env=test" 등록

> 프로젝트 이름에 특문이 들어가면 grails.bat에 명령어에 쿼테이션(")이 들어가서 빌드를 실패할 수 있음.

> 빌드 유발시 Poll SCM의 Schedule에 "00 * * * *" (분 시간 일 요일) 등록하면 변경사항을 확인하여 빌드함


- 빌드 후 조치 설정

> Deploy war/ear to a container (기존에 설치한 플러그인)

> WAR/EAR files에 "**/*.war" 로 설정하면 Workspace안에서 WAR파일을 찾음

> Context path는 build.xml에서 설정한 WAR파일의 이름과 일치시킴

> Containers에는 설치한 톰캣 버전으로 추가하고 설치시 계정 및 URL을 설정함


'DevOps > Jenkins' 카테고리의 다른 글

[CI] Jenkins로 windows batch / linux shell 실행하기  (0) 2017.01.10