@@ -108,11 +108,13 @@ jobs:
108108 # ─── Step 6: Deploy on EC2 ────────────────────────────────────
109109 - name : Deploy on EC2
110110 uses : appleboy/ssh-action@v1.0.3
111+ env :
112+ SLACK_WEBHOOK_URL : ${{ secrets.SLACK_WEBHOOK_URL }}
111113 with :
112114 host : ${{ secrets.EC2_HOST }}
113115 username : ec2-user
114116 key : ${{ secrets.EC2_SSH_KEY }}
115- envs : IMAGE_TAG,ECR_REGISTRY
117+ envs : IMAGE_TAG,ECR_REGISTRY,SLACK_WEBHOOK_URL
116118 script : |
117119 CURRENT=$(docker inspect task-manager-app \
118120 --format='{{index .Config.Image}}' 2>/dev/null || echo "none")
@@ -123,6 +125,7 @@ jobs:
123125
124126 cd /home/ec2-user/task-manager
125127 echo "APP_IMAGE=$ECR_REGISTRY/task-manager-api:$IMAGE_TAG" > .env
128+ echo "SLACK_WEBHOOK_URL=$SLACK_WEBHOOK_URL" >> .env
126129
127130 docker pull $ECR_REGISTRY/task-manager-api:$IMAGE_TAG
128131 docker-compose --env-file .env up -d
@@ -132,10 +135,13 @@ jobs:
132135 # ─── Step 7: Health check + automatic rollback ────────────────
133136 - name : Health Check and Rollback if Failed
134137 uses : appleboy/ssh-action@v1.0.3
138+ env :
139+ SLACK_WEBHOOK_URL : ${{ secrets.SLACK_WEBHOOK_URL }}
135140 with :
136141 host : ${{ secrets.EC2_HOST }}
137142 username : ec2-user
138143 key : ${{ secrets.EC2_SSH_KEY }}
144+ envs : SLACK_WEBHOOK_URL
139145 script : |
140146 STATUS=$(curl -s -o /dev/null -w "%{http_code}" http://localhost:3000/health)
141147
@@ -146,6 +152,7 @@ jobs:
146152 if [ "$PREVIOUS_IMAGE" != "none" ]; then
147153 cd /home/ec2-user/task-manager
148154 echo "APP_IMAGE=$PREVIOUS_IMAGE" > .env
155+ echo "SLACK_WEBHOOK_URL=$SLACK_WEBHOOK_URL" >> .env
149156 docker-compose --env-file .env up -d
150157 echo "ROLLBACK COMPLETE"
151158 fi
0 commit comments