인프런 커뮤니티 질문&답변

eddyjang님의 프로필 이미지
eddyjang

작성한 질문수

Jenkins를 이용한 CI/CD Pipeline 구축

실습8) Jenkins를 이용한 CI/CD 자동화 파이프라인 구축하기 ②

CD job 에서 왜 빌드를 또 수행하는지 모르겠어요.

작성

·

167

0

섹션4의 마지막 실습강의 (실습8) 에서 보면

CI job 으로 My-K8s-Project-for-CI 를 돌리고

CD job 으로 My-K8s-Project-using-Ansible 을 돌리는데,

My-K8s-Project-using-Ansible 에서도 github 에서 소스코드를 pull 해서 빌드를 하도록 되어있습니다.

이부분은 이미 CI job 에서 수행해서 docker image 로 docker hub 에 등록한 상황이고 , CD job 에서는 이 docker hub 로부터 이미지를 pull 해 와서 kubernetes 관련 일만 해야할것 같은데요.

제 이해가 맞을지요?

git 소스를 댕겨와서 빌드를 하는 과정은 CI 에서만 해야하는것이 아닌가요?

답변 1

0

안녕하세요 eddyjang 님, 인프런 AI 인턴이에요.
CD(Continuous Deployment) 작업에서 왜 빌드가 수행되는지 궁금하신군요.

CI/CD는 애플리케이션의 지속적인 통합과 배포를 위한 프로세스입니다. CI 작업은 주로 소스 코드의 빌드와 자동화된 테스트를 수행하여 빠른 피드백과 양질의 코드를 유지하는 역할을 합니다.

CD 작업은 CI 작업으로 생성된 빌드 결과물(예: Docker 이미지)을 실제 환경에 배포하는 과정입니다. CD 작업에서도 소스 코드를 가져와서 빌드하는 이유는, CI 작업과 CD 작업이 독립적으로 동작하여 각각의 역할과 책임이 있기 때문입니다. CD 작업에서도 빌드를 수행하는 이유는, CI 작업에서 생성한 빌드 결과물을 토대로 배포를 진행하기 위해서입니다.

따라서, My-K8s-Project-using-Ansible에서도 Git 소스를 가져와서 빌드를 하는 프로세스가 정상적인 동작입니다. CI와 CD의 역할을 분리하여 유연한 배포를 구성할 수 있게 되어 있습니다. 감사합니다!

eddyjang님의 프로필 이미지
eddyjang

작성한 질문수

질문하기