Skip to content

Commit cff6a65

Browse files
[feat] update the main.yml workflow to have also latest tag
1 parent 4ec399b commit cff6a65

1 file changed

Lines changed: 20 additions & 6 deletions

File tree

.github/workflows/main.yml

Lines changed: 20 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -136,21 +136,33 @@ jobs:
136136
id: meta
137137
run: |
138138
echo "short_sha=${GITHUB_SHA::7}" >> "$GITHUB_OUTPUT"
139-
echo "date=$(date +'%Y%m%d')" >> "$GITHUB_OUTPUT"
140139
141140
- name: Build Docker image
142141
id: build-image
143142
env:
144143
ECR_REGISTRY: ${{ steps.login-ecr.outputs.registry }}
145144
run: |
146-
IMAGE_TAG=${{ steps.meta.outputs.short_sha }}
147-
ECR_IMAGE=$ECR_REGISTRY/${{ secrets.ECR_REPOSITORY_NAME }}:$IMAGE_TAG
148-
docker build -t $ECR_IMAGE .
149-
echo "ECR_IMAGE=$ECR_IMAGE" >> $GITHUB_ENV
145+
# Create multiple tags following best practices
146+
IMAGE_TAG_SHA=${{ steps.meta.outputs.short_sha }}
147+
148+
ECR_IMAGE_SHA=$ECR_REGISTRY/${{ secrets.ECR_REPOSITORY_NAME }}:$IMAGE_TAG_SHA
149+
ECR_IMAGE_LATEST=$ECR_REGISTRY/${{ secrets.ECR_REPOSITORY_NAME }}:latest
150+
151+
# Build with multiple tags
152+
docker build \
153+
-t $ECR_IMAGE_SHA \
154+
-t $ECR_IMAGE_LATEST .
155+
156+
# Export for use in deployment (use SHA for precise tracking)
157+
echo "ECR_IMAGE=$ECR_IMAGE_SHA" >> $GITHUB_ENV
150158
151159
- name: Push image to ECR
152160
run: |
153-
docker push $ECR_IMAGE
161+
# Push all tags to ECR
162+
docker push $ECR_IMAGE_SHA
163+
docker push $ECR_IMAGE_LATEST
164+
165+
echo "✅ Pushed image with tags: $ECR_IMAGE_SHA and $ECR_IMAGE_LATEST to ECR"
154166
155167
- name: Deploy to Amazon ECS
156168
run: |
@@ -159,3 +171,5 @@ jobs:
159171
--service "${{ secrets.ECS_SERVICE_NAME }}" \
160172
--force-new-deployment \
161173
--region ${{ secrets.AWS_REGION }}
174+
175+
echo "✅ Deployed service ${{ secrets.ECS_SERVICE_NAME }} to ECS cluster ${{ secrets.ECS_CLUSTER_NAME }}"

0 commit comments

Comments
 (0)