[TIL] Jenkins 구성 고민

Wendy·2020년 7월 22일
0

학습기록

목록 보기
6/20

개요

이미 한참 지났지만, Jenkins 구성을 위해 고민했던 기록을 남긴다

문제 상황

. 본사에서 만든 솔루션을 고객사 개발서버에 적용해야 하는 상황
. 업데이트 된 솔루션을 반영할때마다 본사 팀원에게 별도의 빌드를 요청해야 했다
1) 빌드시 따로 반영해야 하는 property가 있어 기존 빌드된 파일 사용 불가
2) 고객사 사이트에서 본사 저장소로 방화벽이 막혀있어 일부 라이브러리 반영 불가

목표와 결과

  1. 본사 github 프로젝트와 연동해서
    -> 성공

  2. push 가 일어나면
    . github 프로젝트와 Jenkins 프로젝트가 1:1로만 알람 가능
    . 이미 본사 Jenkins 프로젝트에서 연동해 사용중
    -> 대신 일정 주기마다로 변경

  3. Jenkins에서 빌드가 진행되어
    -> 성공

  4. 고객사 개발서버에 자동 배포
    . 본사 github에서 고객사 서버 방화벽 오픈 불가
    -> 담당자 메일로 알람/파일전송, 필요시 수동 배포

진행 과정

빌드의 자동화 vs 배포의 자동화

후보 1. 본사 github > 본사 Jenkins에 프로젝트 생성 > 고객사 개발서버

  • github, jenkins 모두 구축되어 있어 사용이 편함 (단, SR 처리에 시간 소요)
  • 본사 github과 Jenkins 연동이 용이
  • 본사 서버에서 빌드가 진행되므로 라이브러리 받아오는데 문제 없음

후보 2. 본사 git > 고객사 서버에 Jenkins 구성 > 고객사 개발서버

  • 고객사 사이트 내에서 jenkins와 개발서버 연동이 용이

선택 : 후보 1, 빌드의 자동화

  • SR 처리의 소요시간과 Jenkins 직접 구성의 시간을 비교했을때 전자가 훨씬 경제적
  • 배포는 내가 고생하면 되는데, 빌드는 다른 팀원을 고생시켜야 함
  • 빌드 자동화는 대체할 방법이 없고, 배포 자동화는 별도로 구성이 가능할 것 같음
profile
개발 공부중!

0개의 댓글