본문 바로가기
공부/프로젝트

젠킨스를 적용해보자

by JERO__ 2022. 7. 25.

젠킨스

 

1. Jenkins란 뭘까?

1-1. 정의

소프트웨어 개발 시 지속적 통합 서비스를 제공하는 툴이다. 다수의 개발자들이 하나의 프로그램을 개발할 때 버전 충돌을 방지하기 위해 각자 작업한 내용을 공유 영역에 있는 Git등의 저장소에 빈번히 업로드함으로써 지속적 통합이 가능하도록 한다.

1-2. 젠킨스 이전

개발자들이 각각 수정, 성능개선한 브랜치를 master 브랜치에 PR을 보내고 머지하는 과정을 생각해보자. merge에 대한 승인을 받고 다른 날까지 기다려야 한다. 왜냐하면, master에 대한 빌드, 테스트 분석을 사람이 직접 해주기 때문이다. 이 때문에 개발에 대한 영속성이 없다)지속적으로 개발할 수 없다)

1-3. 젠킨스 적용

merge가 되면 자동으로 빌드, 테스트, 분석을 진행한다! 즉, 개발에 대한 영속성이 생기게 되었고, 지속적으로 코드를 반영할 수 있다.

2. 간단한 진행과정 정리

1. 구성요소

  • github
  • EC2 : Jenkins Server
  • EC2 : WAS (백엔드 서버)

2. 과정

  1. github에서 웹훅을 설정한다.
    • 웹훅 : 특정 이벤트가 발생하였을 때 타 서비스나 응용프로그램으로 알림을 보내는 기능
    • [Jenkins가 설치된 EC2 Public URL]/github-webhook
      • github-webhook에서 온다는 명시를 추가로 해주어야 한다.
  2. Jenkins - CI
    1. 실패시, Jenkins에 실패 로그가 남는다. (merge는 됨)
  3. WAS - CD
    • jar파일을 받는다
    • sh파일을 실행한다.
      • 기존 실행중인 PID를 찾아 종료
      • 받은 jar파일을 실행 nohup

'공부 > 프로젝트' 카테고리의 다른 글

Flyway를 사용하는 이유  (0) 2022.07.29
젠킨스 pipeline를 설정해보자  (0) 2022.07.26
[지원플랫폼] 플래닝포커를 해보자  (0) 2022.07.25
DB 서버를 연동해보자  (0) 2022.07.25
Swap 메모리를 설정해보자  (0) 2022.07.25

댓글