hiondal 7f8593fb71 Jenkins CI/CD 파이프라인 완전 구축 완료
- Kustomize 기반 환경별 매니페스트 관리 시스템 구축
- Base 매니페스트 및 환경별(dev/staging/prod) Overlay 작성
- Strategic Merge Patch → Patch 형식으로 업데이트
- Jenkinsfile 파드 자동 정리 기능 적용
- 배포 스크립트 및 검증 스크립트 작성
- 상세 구축 가이드 문서 작성
- 모든 환경 Kustomize 빌드 검증 완료

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-13 01:00:04 +09:00

34 lines
1.1 KiB
Bash
Executable File

#!/bin/bash
set -e
ENVIRONMENT=${1:-dev}
IMAGE_TAG=${2:-latest}
echo "🚀 Starting deployment for environment: $ENVIRONMENT with image tag: $IMAGE_TAG"
# 환경별 이미지 태그 업데이트
cd deployment/cicd/kustomize/overlays/${ENVIRONMENT}
# 서비스 목록 (공백으로 구분)
services="api-gateway user-service bill-service product-service kos-mock"
# 각 서비스 이미지 태그 업데이트
for service in $services; do
echo "📦 Updating image tag for $service to ${ENVIRONMENT}-${IMAGE_TAG}"
kustomize edit set image acrdigitalgarage01.azurecr.io/phonebill/$service:${ENVIRONMENT}-${IMAGE_TAG}
done
# 배포 실행
echo "🔧 Applying manifests to Kubernetes cluster..."
kubectl apply -k .
# 배포 상태 확인
echo "⏳ Waiting for deployments to be ready..."
for service in $services; do
echo " Checking $service..."
kubectl rollout status deployment/$service -n phonebill-${ENVIRONMENT} --timeout=300s
done
echo "✅ Deployment completed successfully!"
echo "🌐 Application endpoints:"
kubectl get ingress -n phonebill-${ENVIRONMENT} -o wide