
선행 조건
1. Jenkins 설치
2. Maven, Git 설치
3. Jenkins GitServer 연동 ←위 사항은 꼭 선행되어야함!
(3번 링크 참조 : https://velog.io/@tjdtn0219/Spring-Boot%EC%9E%90%EB%8F%99-%EB%B0%B0%ED%8F%AC%ED%95%98%EA%B8%B0-Step1.-Jenkins-Git-%EC%97%B0%EB%8F%99)
연동하려는 Repository -> Settings -> Webhooks -> Addwebhook
Payload URL : {Jenkins 서버 IP}:{port}/github-webhook/
Content type : application/json
다음과 같이 Webhook을 생성해줍니다.
Jenkins 관리 -> Global Tool Configuration
Git Jdk Maven 환경 설정
Git, JDK, Maven 모두 Jenkins가 설치되어 있는 서버에 환경 변수 경로를 입력한다
** 주의 사항 **
설명 : 젠킨스 프로젝트 구성의 Build Trigger 설정
젠킨스 프로젝트의 구성 탭으로 이동하여, GITScm polling을 위한 Github hook trigger를 빌드 유발 설정으로 선택한다. 이 선택은 위의 SCM(소스 코드 관리) 탭에서 연동한 Github 저장소에서 push에 의한 hook 이벤트가 발생할 경우 저장소를 polling해서 젠킨스의 자동 빌드를 유발한다.
Git
빌드 유발
Build Steps
여기까지 진행하면 아래 그림과 같이 /var/lib/jenkins/workspace/{SpringBoot프로젝트}/target에 war파일이 생성된 것을 볼 수 있다. 이제 이 war파일은 Tomcat이 동작하는 디렉토리(../tomcat/webapps)에 넣어주면 끝이다.

빌드 후 조치 :
Post Build Task 플러그인 사용
(Post Build Task 플러그인이 없다면 별도로 플러그인 설치 후 사용 가능)
Jenkins 처음 시작할 때 기본 플러그인 설치 목록에는 Post build task 라는 플러그인이 없기 때문에 별도로 설치가 필요하다.
빌드 후에 작성된 Script로 Case별로 동작이 가능한 플러그인이다.
다음과 같이 Jenkins Log에 SQL 연결 실패나 빌드 실패가 감지되면 "Build 중 에러 발생"이라는 문구를 Console에 출력한다.
Build SUCCESS가 감지되면 다음과 같은 스크립트로 동작을한다.
스크립트를 간단히 설명하자면, /var/lib/jenkins/workspace 아래에 Git으로부터 받은 레포지토리 안에 target 폴더에 war파일을 Spring이 동작하는 webapps로 욺겨주는 방식이다.