image.png

  1. main,dev 브랜치에 코드가 푸시되면 GitHub Actions가 시작되어 테스트를 실행하고 테스트 결과(성공/실패)를 Slack으로 전송한다.
  2. 테스트를 통과했을 경우 github action에서 제공하는 GITHUB_SHA를 태그로 하는 이미지를 생성하고, ECR에 푸시한다.
  3. 빌드된 이미지 태그를 기반으로 Kustomize 파일을 자동 업데이트하며, 변경된 설정은 Helm/Kustomize 전용 레포지토리인 space-place-helm에 반영된다. 이렇게 애플리케이션 코드와 인프라 설정 코드를 독립적으로 관리할 수 있게 되었다.
  4. ArgoCD는 space-place-helm 레포를 확인하고 있다가 버전이 올라갔을 경우 쿠버네티스 서버에 해당 버전을 배포하게 된다.