From 8524164366bbcc5cf8c5a442d543b210b4c33dc3 Mon Sep 17 00:00:00 2001 From: reddevilmidzy Date: Thu, 17 Oct 2024 15:06:05 +0900 Subject: [PATCH] =?UTF-8?q?chore:=20=EC=8A=A4=ED=81=AC=EB=A6=BD=ED=8A=B8?= =?UTF-8?q?=20=EB=B3=80=EA=B2=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/be_cd-test.yml | 28 +++++++++++----------------- 1 file changed, 11 insertions(+), 17 deletions(-) diff --git a/.github/workflows/be_cd-test.yml b/.github/workflows/be_cd-test.yml index 67b2d1c6..b876a9ae 100644 --- a/.github/workflows/be_cd-test.yml +++ b/.github/workflows/be_cd-test.yml @@ -109,24 +109,18 @@ jobs: # 실행중인 서버 확인 - name: Determine Active and Inactive Ports (Blue/Green) id: determine-ports - run: | - ports=(8080 8081) - ip="127.0.0.1" - for port in "${ports[@]}"; do - RESPONSE=$(curl -s http://$ip:$port/api/actuator/health) - IS_ACTIVE=$(echo ${RESPONSE} | grep 'UP' | wc -l) - if [ $IS_ACTIVE -eq 1 -a $port -eq "8080" ]; then - echo "BLUE_PORT=8080" >> $GITHUB_ENV - echo "GREEN_PORT=8081" >> $GITHUB_ENV - elif [ $IS_ACTIVE -eq 1 -a $port -eq "8081" ]; then - echo "BLUE_PORT=8081" >> $GITHUB_ENV - echo "GREEN_PORT=8080" >> $GITHUB_ENV - fi - done + run: | + chmod +x ./deploy.sh # 스크립트에 실행 권한 부여 + OUTPUT=$(./deploy.sh) # 스크립트 실행 후 결과를 변수에 저장 + # 실행중인 서버 확인 + + source ./deploy.sh + echo "BLUE_PORT=$BLUE_PORT" >> $GITHUB_ENV + echo "GREEN_PORT=$GREEN_PORT" >> $GITHUB_ENV - name: Start the new (green/blue) environment run: | - sudo docker-compose --env-file ${{ secrets.DOCKER_COMPOSE_YAML_PATH }}/.be_app-env -f ${{ secrets.DOCKER_COMPOSE_YAML_PATH }}/be_app-docker-compose.yml -p ${{ env.GREEN_PORT }} up -d + sudo docker-compose --env-file ${{ secrets.DOCKER_COMPOSE_YAML_PATH }}/.be_app-env -f ${{ secrets.DOCKER_COMPOSE_YAML_PATH }}/be_app-docker-compose.yml -p $GREEN_PORT up -d - name: Wait for new environment to be healthy run: | @@ -134,8 +128,8 @@ jobs: - name: Switch traffic to new environment run: | - sudo docker-compose --env-file ${{ secrets.DOCKER_COMPOSE_YAML_PATH }}/.be_app-env -f ${{ secrets.DOCKER_COMPOSE_YAML_PATH }}/be_app-docker-compose.yml -p ${{ env.GREEN_PORT }} up -d --scale springboot-app=1 + sudo docker-compose --env-file ${{ secrets.DOCKER_COMPOSE_YAML_PATH }}/.be_app-env -f ${{ secrets.DOCKER_COMPOSE_YAML_PATH }}/be_app-docker-compose.yml -p $GREEN_PORT up -d --scale springboot-app=1 - name: Stop and remove the old environment run: | - sudo docker-compose --env-file ${{ secrets.DOCKER_COMPOSE_YAML_PATH }}/.be_app-env -f ${{ secrets.DOCKER_COMPOSE_YAML_PATH }}/be_app-docker-compose.yml -p ${{ env.BLUE_PORT }} down + sudo docker-compose --env-file ${{ secrets.DOCKER_COMPOSE_YAML_PATH }}/.be_app-env -f ${{ secrets.DOCKER_COMPOSE_YAML_PATH }}/be_app-docker-compose.yml -p $BLUE_PORT down