Jenkins Pipeline 으로 git clone 부터 빌드까지
CI 파이프라인의 뼈대는 언제나 같다 — 저장소에서 코드를 가져와 빌드한다. 비공개 저장소 자격 증명부터 함수로 나눠 재사용하는 구조까지, 실제로 쓰는 형태로 정리한다.
Jenkins 파이프라인·분산 빌드·백업 복구, AWS CodeBuild 연동, Ansible 로 산출물 넘기기, blue/green 롤백까지 직접 구성하며 정리한 CI/CD 실습 기록.
CI 파이프라인의 뼈대는 언제나 같다 — 저장소에서 코드를 가져와 빌드한다. 비공개 저장소 자격 증명부터 함수로 나눠 재사용하는 구조까지, 실제로 쓰는 형태로 정리한다.
빌드가 늘면 마스터 한 대로는 버티지 못한다. 마스터·노드·에이전트·엑시큐터가 각각 무엇이고 왜 나누는지, 그리고 슬레이브 노드를 SSH 로 실제로 붙이는 순서까지 화면과 함께 정리한다.
Jenkins 가 먹통이 되거나 이전 시점으로 돌아가야 할 때가 온다. 백업셋이 있다면 되돌릴 수 있다. 기존 설치를 지우고, 원하는 버전으로 다시 깔고, JENKINS_HOME 을 백업본으로 갈아 끼우는 순서.
Jenkins 에서 AWS CodeBuild 를 호출해 변수까지 넘기는 방법과, 지원이 끊긴 플러그인을 대신해 Bitbucket 을 CodeCommit 으로 미러링한 임시 방편. 지금 이 구성을 새로 잡으면 안 되는 이유도 함께.
빌드가 끝나면 산출물은 Jenkins 워크스페이스에 남을 뿐이다. 그걸 저장소로 옮겨 배포 대상이 가져가게 만들고, Jenkins 가 Ansible Tower 를 호출해 배포까지 잇는 구조를 정리한다.
되돌려야 할 때 "어디로" 돌아갈지부터 정해져 있어야 한다. SemVer 로 기준점을 만들고, 기존 아티팩트를 쓸지 다시 빌드할지 고르고, 배포 방식별로 롤백이 어떻게 달라지는지 정리한다.