Skip to content

Commit d8e5cf8

Browse files
authored
Merge pull request #157 from TimeBank-Sparta/20152842-patch-60
Update deploy.yml
2 parents 3fcf4f3 + a9bcfba commit d8e5cf8

1 file changed

Lines changed: 24 additions & 11 deletions

File tree

.github/workflows/deploy.yml

Lines changed: 24 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -90,12 +90,12 @@ jobs:
9090
TARGETS=($CHANGED)
9191
fi
9292
echo "Deploy targets: ${TARGETS[*]}"
93-
for svc in "${TARGETS[@]}"; do
94-
docker build -t namgyu967/$svc:${TAG} -f $svc/Dockerfile .
95-
docker push namgyu967/$svc:${TAG}
96-
docker tag namgyu967/$svc:${TAG} namgyu967/$svc:latest
97-
docker push namgyu967/$svc:latest
98-
done
93+
# for svc in "${TARGETS[@]}"; do
94+
# docker build -t namgyu967/$svc:${TAG} -f $svc/Dockerfile .
95+
# docker push namgyu967/$svc:${TAG}
96+
# docker tag namgyu967/$svc:${TAG} namgyu967/$svc:latest
97+
# docker push namgyu967/$svc:latest
98+
# done
9999
echo "TARGETS=${TARGETS[*]}" >> $GITHUB_ENV
100100
- name: EC2에 Blue-Green 및 서비스 배포
101101
uses: appleboy/ssh-action@master
@@ -105,10 +105,12 @@ jobs:
105105
key: ${{ secrets.EC2_SSH_KEY }}
106106
port: 22
107107
protocol: tcp
108+
timeout: 30s
109+
command_timeout: 10m
108110
sync: true
109-
debug: true
110111
capture_stdout: true
111112
curl_insecure: false
113+
112114
envs: |
113115
TAG=${{ env.TAG }}
114116
SERVICES=${{ env.SERVICES }}
@@ -117,7 +119,11 @@ jobs:
117119
set -e
118120
cd ~/timebank
119121
source .env-tag
122+
123+
# 0) nginx 보장
120124
docker-compose up -d nginx
125+
126+
# 1) Blue-Green gateway
121127
if docker-compose ps | grep -q gateway-blue; then
122128
NEW=green; OLD=blue
123129
else
@@ -127,21 +133,28 @@ jobs:
127133
docker-compose up -d gateway-$NEW
128134
sed -i "s/server gateway-$OLD:8080;/server gateway-$NEW:8080;/" nginx-conf/gw.conf
129135
docker exec nginx nginx -s reload
130-
if [ "${CHANGED}" = "ALL" ] || [ -z "${CHANGED}" ]; then
131-
IFS=' ' read -r -a targets <<< "${SERVICES}"
136+
137+
# 2) deploy 대상 계산
138+
if [ "$CHANGED" = "ALL" ] || [ -z "$CHANGED" ]; then
139+
IFS=' ' read -r -a targets <<< "$SERVICES"
132140
else
133-
IFS=' ' read -r -a targets <<< "${CHANGED}"
141+
IFS=' ' read -r -a targets <<< "$CHANGED"
134142
fi
143+
135144
echo "=== DEBUG:Final deploy targets ==="
136-
for svc in "${targets[@]}"; do
145+
for svc in "${targets[*]}"; do
137146
echo " - $svc"
138147
done
148+
149+
# 3) 나머지 서비스 순차 배포
139150
for svc in "${targets[*]}"; do
140151
[ "$svc" = "gateway-service" ] && continue
141152
echo "Deploying $svc..."
142153
docker-compose pull $svc
143154
docker-compose up -d $svc
144155
done
156+
157+
145158
- name: 헬스체크 및 결과 수집
146159
id: health
147160
shell: bash

0 commit comments

Comments
 (0)