mirror of
https://github.com/cna-bootcamp/phonebill.git
synced 2025-12-06 08:06:24 +00:00
- Jenkinsfile 개선: SonarQube 분석, Quality Gate 추가 - 환경별 설정 파일 업데이트 (dev/staging/prod) - Kustomize base 및 overlay 파일 정리 - prod 환경 overlay 파일 추가 - 배포 스크립트 및 검증 스크립트 업데이트 - 파이프라인 가이드 문서 업데이트 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
36 lines
1012 B
Bash
Executable File
36 lines
1012 B
Bash
Executable File
#!/bin/bash
|
|
set -e
|
|
|
|
ENVIRONMENT=${1:-dev}
|
|
IMAGE_TAG=${2:-latest}
|
|
|
|
echo "🚀 Starting deployment to ${ENVIRONMENT} environment..."
|
|
|
|
# 환경별 이미지 태그 업데이트
|
|
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}..."
|
|
kustomize edit set image docker.io/hiondal/$service=docker.io/hiondal/$service:${ENVIRONMENT}-${IMAGE_TAG}
|
|
done
|
|
|
|
# 배포 실행
|
|
echo "📤 Applying Kubernetes manifests..."
|
|
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 --timeout=300s
|
|
done
|
|
|
|
echo "✅ Deployment completed successfully!"
|
|
echo ""
|
|
echo "📊 Current deployment status:"
|
|
kubectl get pods -n phonebill
|