jenkins with JEUS
14 Dec 2017https://192.168.—.–/svn/—-2.0/—-20
- jdk1.5.0_22(x86)
- maven 3.0.4
- JEUS6 FIX#9(x86)
- VisualSVN-Server-2.7.4
- jenkins 설치 시 jre8 자동 설치됨.
1. Jenkins war 파일 [다운받기] https://jenkins.io/
2. cmd 관리자 권한으로 실행.
java -jar jenkins경로\jenkins.war --httpPort=8090
3. localhost:8090 접속
해당경로의 초기 패스워드 입력(커맨드창에도 패스워드뜸) Install suggested plugins
4. 9999포트 변경
C:\Users\user이름\.jenkins\jenkins.xml
<arguments>-Xrs -Xmx256m -Dhudson.lifecycle=hudson.lifecycle.WindowsServiceLifecycle -jar "%BASE%\jenkins.war" --httpPort=9999 --webroot="%BASE%\war"</arguments>
5. Jenkins 서비스 설치
- 젠킨스관리 > Install as Windows Service 이동
- 경로는 초기 default로 하면된다. (.jenkins 설치된 곳)
- 서비스에서 jenkins 이름 확인. 서비스 등록이 완료되면 cmd관리자권한으로 실행한 jenkins는 종료됨.
6. service 쪽 Jenkins
localhost:9999 접속
7. Svn을 연동 하여 톰캣으로 자동 빌드 배포 하기 위한 환경 설정을 해야 한다
(젠킨스 관리 > Global Tool Configration)
기존에 받은 jdk, maven 경로 설정(jdk1.5.0_22(x86)/maven 3.0.4)
8. Jenkins 새로운 item
9. 소스 코드 관리
- URL 입력
- Credentials -> Add 해당 아이디/패스워드 입력
10. 빌드유발
Poll SCM : 언제 빌드가 수행될 것인가(사진은 10분)
2분으로 설정해 줄것. H/2 * * * *
하단에 나타난 시간 잘 맞는지 확인.
9. JEUS 연결
1) Invoke top-level Maven targets 클릭 입력창에 Build 정보를 입력한다.
Maven Version 선택
Goals 입력 –> clean package
고급 버튼을 누르고
POM 입력 – pom.xml (pom.xml 위치 입력)
2) Run with timeout 3분동안 빌드안될 경우 에러 내고 빌드 종료.
Time-out strategt : Absolute
Timout minutes : 3
Build Step : Execute WIndows batch command
Command에 아래 입력
C:\TmaxSoft\JEUS6.0\bin 경로에 start.bat 생성
jeusadmin DESKTOP-0000000 -Uadministrator -Pjeusadmin startcon DESKTOP-0000000_container1
C:\TmaxSoft\JEUS6.0\bin 경로에 down.bat 생성
jeusadmin DESKTOP-G65KMCN -Uadministrator -Pjeusadmin downcon DESKTOP-G65KMCN_container1
cd C:\Users\Owner\.jenkins\workspace\projectName\target
copy projectName.war C:\TmaxSoft\JEUS6.0\webhome\app_home
cd C:\TmaxSoft\JEUS6.0\bin
cmd /c down.bat
cmd /c PING -n 10 127.0.0.1 1>nul
cmd /c start.bat
<기타사항>
JENKINS에서 maven 빌드를 위해 pom.xml 수정(Web app libraries 추가)
webapp 안에 있는 라이브러리는 가져오지못합.
<properties>
...
// 추가
<webcontent-dir>${basedir}\src\main\webapp\WEB-INF\lib</webcontent-dir>
</properties>
...
<!-- JENKINS를 위한 Web app libraries 추가 -->
<dependency>
<groupId>webapp.commons</groupId>
<artifactId>codec</artifactId>
<version>1.3</version>
<scope>system</scope>
<systemPath>${webcontent-dir}\commons-codec-1.3.jar</systemPath>
</dependency>
...