빌드 작업 설정
Last updated
Last updated
이 문서에서는 Webhook을 이용하여 전송된 프로젝트를 빌드하는 설정을 작성한다.
Maven
을 사용하여 빌드를 수행할 예정이므로 Jenkins가 설치된 PC에 Maven이 설치되어 있어야 한다.
Add build step
- Invoke top-level Maven targets
를 선택하여 빌드 작업을 추가한다.
만약 Maven이 설치되어 있지 않다면 다음 문서를 참조하여 설치 및 Jenkins와 연동한다.
Maven 연동Maven version을 지정하고 Gols에 clean install
을 입력한다. 여러 줄에 걸쳐 입력하거나 중간에 띄어쓰기를 작성한다.
고급 버튼을 누르면 프로젝트를 빌드하기 위해 필요한 pom.xml의 위치를 지정할 수 있다. 별도의 설정이 없다면 다음과 같이 작성한다.
Github에 Push가 발생해서 Webhook으로 프로젝트 정보가 Jenkins에 들어오고, 빌드까지 자동으로 수행되었다면 Apache Tomcat과 같은 WAS에 배포하도록 설정하는 작업이 남았다.
이 내용은 WAS의 종류에 따라 다를 수 있으며, 이 문서에서는 Apache Tomcat 9
를 기준으로 작성한다.
톰캣을 설치PC가 아닌 외부에서 접속하고 싶을 경우는 다음 문서를 통해 접근 허용 설정을 먼저 해야한다.
Tomcat Manager 설정프로젝트가 현재 서비스 중일 수 있으므로 배포 해제를 수행할 수 있어야 한다. 톰캣은 다음과 같은 URL형태로 배포 해제 기능을 제공한다.
PROTOCOL://ID:PASSWORD@HOST:PORT/manager/text/undeploy?path=/PROJECT
예를 들어 WAS의 관리 계정이 admin
, 비밀번호가 admin
이고 localhost
의 8080
번 포트를 사용하고 http
프로토콜을 사용한다면 home 프로젝트 배포 해제 주소는 다음과 같다.
http://admin:admin@localhost:8080/text/undeploy?path=/home
배포 주소 역시 배포해제와 동일한 패턴을 가진다.
PROTOCOL://ID:PASSWORD@HOST:PORT/manager/text/deploy?path=/PROJECT&update=true
단, 배포를 위해서는 파일이 필요하기 때문에 해당 주소만으로는 기존에 존재하는 프로젝트만 재배포가 가능하다.
CURL은 터미널에서 HTTP 요청을 보낼 수 있도록 만들어진 요청 도구이다. 이 도구를 이용하면 각종 요청들을 짧은 코드로 수행할 수 있다.
배포 해제 스크립트와 배포 스크립트를 각각 작성한다.