@@ -11,11 +11,10 @@ permissions:
1111 security-events : write
1212
1313env :
14- DOCKER_REGISTRY : kwa06001
14+ DOCKER_REGISTRY : softbank2025
1515 IMAGE_TAG : ${{ github.sha }}
1616
1717jobs :
18- # 변경된 서비스 감지 + 빌드를 한 번에
1918 build-jars :
2019 name : Build All JARs
2120 runs-on : ubuntu-latest
@@ -141,7 +140,6 @@ jobs:
141140 user/build/libs/*.jar
142141 retention-days : 1
143142
144- # 5개 서비스 완전 병렬 빌드
145143 docker-build-scan-push :
146144 name : Docker Build & Push
147145 needs : build-jars
@@ -170,7 +168,6 @@ jobs:
170168 username : ${{ secrets.DOCKERHUB_USERNAME }}
171169 password : ${{ secrets.DOCKERHUB_PASSWORD }}
172170
173- # 최적화된 Dockerfile 사용 (JAR 파일 직접 복사)
174171 - name : Create optimized Dockerfile
175172 run : |
176173 cat > ${{ matrix.service }}/Dockerfile.fast << 'EOF'
@@ -190,10 +187,13 @@ jobs:
190187 tags : |
191188 ${{ env.DOCKER_REGISTRY }}/${{ matrix.service }}:${{ env.IMAGE_TAG }}
192189 ${{ env.DOCKER_REGISTRY }}/${{ matrix.service }}:latest
193- cache-from : type=registry,ref=${{ env.DOCKER_REGISTRY }}/${{ matrix.service }}:buildcache
194- cache-to : type=registry,ref=${{ env.DOCKER_REGISTRY }}/${{ matrix.service }}:buildcache,mode=max
190+ cache-from : |
191+ type=registry,ref=${{ env.DOCKER_REGISTRY }}/${{ matrix.service }}:buildcache
192+ type=gha
193+ cache-to : |
194+ type=registry,ref=${{ env.DOCKER_REGISTRY }}/${{ matrix.service }}:buildcache,mode=max
195+ type=gha,mode=max
195196
196- # Trivy 스캔 (백그라운드, 블로킹 없음)
197197 - name : Run Trivy scan
198198 uses : aquasecurity/trivy-action@master
199199 continue-on-error : true
@@ -212,12 +212,11 @@ jobs:
212212 sarif_file : ' trivy-results-${{ matrix.service }}.sarif'
213213 category : ' trivy-${{ matrix.service }}'
214214
215- # 배포
216215 deploy-to-ec2 :
217216 name : Deploy to EC2
218217 needs : [build-jars, docker-build-scan-push]
219218 runs-on : ubuntu-latest
220- if : (github.ref == 'refs/heads/main' || github.event_name == 'workflow_dispatch') && needs.build-jars.outputs.has-changes == 'true'
219+ if : (github.ref == 'refs/heads/main' || github.event_name == 'workflow_dispatch' || startsWith(github.ref, 'refs/heads/feat/') ) && needs.build-jars.outputs.has-changes == 'true'
221220 steps :
222221 - name : Checkout repository
223222 uses : actions/checkout@v4
@@ -276,24 +275,24 @@ jobs:
276275 cp docker-compose.yml docker-compose.yml.backup
277276
278277 for service in $SERVICES; do
279- sed -i "s|image: kwa06001 /${service}:.*|image: kwa06001 /${service}:${IMAGE_TAG}|g" docker-compose.yml
278+ sed -i "s|image: softbank2025 /${service}:.*|image: softbank2025 /${service}:${IMAGE_TAG}|g" docker-compose.yml
280279 done
281280
282281 sed -i '/build:/,+2d' docker-compose.yml
283282
284283 echo "📥 Pulling images (parallel)..."
285284 for service in $SERVICES; do
286- docker pull kwa06001 /${service}:${IMAGE_TAG} &
285+ docker pull softbank2025 /${service}:${IMAGE_TAG} &
287286 done
288287 wait
289288
290- echo "🛑 Stopping and removing old services..."
291- docker-compose stop $SERVICES || true
292- docker-compose rm -f $SERVICES || true
289+ echo "🛑 Stopping and removing old services..."
290+ docker-compose stop $SERVICES || true
291+ docker-compose rm -f $SERVICES || true
293292
294- echo "🚀 Creating new services..."
293+ echo "🚀 Creating new services..."
295294 docker-compose up -d --no-deps $SERVICES
296-
295+
297296 echo "📊 Ensuring monitoring services are running..."
298297 docker-compose up -d prometheus grafana
299298
0 commit comments