Tirosh CD Repo Guide

이 문서는 cd-repo가 어떤 배포 책임을 갖고, source repo에서 넘어온 image를 Argo CD로 어떻게 배포하는지 설명합니다.

cd-repo는 application source code를 build하지 않습니다. 이 repository의 역할은 이미 검증되고 publish된 container image를 환경별 Kubernetes manifest로 배치하고, Argo CD가 그 상태를 cluster에 맞추도록 선언하는 것입니다.

1. What This Repo Owns

cd-repo는 GitOps/CD 경계를 담당합니다.

Area Responsibility
Catalog 환경 공통 Kubernetes manifest를 보관합니다.
Environment overlay dev, stg 같은 환경별 image tag, replica, ingress, namespace 차이를 표현합니다.
Argo CD Application cluster가 어떤 path를 sync할지 선언합니다.
Promotion record 어떤 image tag 또는 digest가 어떤 환경에 배포되는지 Git history로 남깁니다.

2. What This Repo Does Not Own

cd-repo는 source repo CI나 package registry를 대신하지 않습니다.

Not owned here Owner
package build and publish source-repo workflow
container image build and publish source-repo workflow
application source code source-repo
cluster bootstrap, ingress controller, registry secret bootstrap infra repository and cluster operations
production rollback gate CD repo plus infrastructure approval process

3. Reading Order

처음 보는 개발자는 아래 순서로 읽으면 됩니다.

  1. GitOps Overview
  2. Environment Layout
  3. Applications
  4. Image Promotion
  5. Operations