v0.1 - 초기 구조

구성 요소
Developer -> Source Repository (GitHub): 개발자가 코드 Push 및 PR OpenGitHub Action (CI):- Job 1: Checkout -> ESLint/Format Check -> Type Check
- Job 2: Docker Image Build -> Trivy (보안 스캔) -> ECR 푸시
GitOps Repository: ECR 이미지 태그 자동 업데이트Argo CD: GitOps Repo 변경 감지 -> Helm으로 매니페스트 생성 -> Kubernetes 배포
문제점
- 테스트 단계 없음
- PR Open과 main 머지 후 트리거 구분 불명확
v0.2 - CI 구조 개선

구성 요소
- GitHub Action CI에서
테스트 단계추가 GitHub Action (CI)트리거 및 job 구분 명확화:job - PR Open: Checkout -> ESLint/Format Check -> Type Check -> Testjob - Branch Merge: Docker Image Build -> Trivy -> ECR 푸시
문제점
- dev / staging / prod 환경 분리 없음
v0.3 - 배포 환경 분리

구성 요소
staging 환경 미포함: 서비스 규모가 작아 dev / prod 2단계로만 구성
문제점
- 브랜치 보호 정책(main PR은 develop에서만)
- AWS OIDC 인증
- ECR 이미지 태그 규칙(
dev-{sha}/prod-{sha}) - GitOps 업데이트 방식(sed -> commit -> push, GITOPS_TOKEN 인증)
- ArgoCD App of Apps 부트스트랩 구조
v0.4 — 실제 구현 반영

개선 사항
- 브랜치 정책 job 추가 —
job - Check Branch박스. main 브랜치 PR은 develop에서만 머지 가능 (위반 시 워크플로 실패) - CI job 이름 변경
job - Code Quality(PR Open 시): Checkout -> ES Lint/Format Check -> Type Check -> Testjob - Publish dev/prod(Push develop/main 시): Docker Image Build -> Trivy -> ECR
- ECR 이미지 태그 규칙 명시 —
dev-{sha}/prod-{sha}라벨을 ECR 노드 옆에 표기 - AWS 인증을 OIDC로 명시 —
AWS IAM노드를 Workflow 영역 밖에 별도 추가, Workflow -> IAM 점선 화살표 라벨OIDC AssumeRole. Long-lived AWS access key 없이aws-actions/configure-aws-credentials@v4로 Role Assume - ArgoCD App of Apps 구조 표기 — ArgoCD 박스 안에 두 부트스트랩 앱 표기
app-of-apps-dev/prod: 서비스 5개(shoong-order,shoong-kitchen,shoong-delivery,shoong-notification,shoong-batch) + infra Appsapp-of-apps-shared: Istio (base/istiod/gateway) 등 클러스터 공용 인프라
문제점
- Frontend 분기 미반영 —
shoong-frontend는 ECR/ArgoCD 경로가 아닌npm build -> S3 sync -> CloudFront Invalidation별도 흐름. 다음 버전에서 분기 박스 추가 예정
'Project: Shoong-Delivery' 카테고리의 다른 글
| [자동화] terrafom apply 후 수동 작업 대신 자동화 스크립트 (0) | 2026.05.20 |
|---|---|
| [Terraform] shoong-delivery 테라폼 구조 및 회고 (0) | 2026.05.20 |
| [네트워크]EKS 트래픽 설계: ALB + Istio를 선택한 이유 (0) | 2026.05.19 |
| [아키텍처] K8S 클러스터 아키텍처 구축기 (0) | 2026.05.18 |
| [아키텍처] AWS 인프라 아키텍처 구축기 (0) | 2026.05.18 |