77 - dev
88 - demo
99 - hotfix
10+ - feature/psl-conregchanges
1011 pull_request :
1112 types :
1213 - opened
1819 - dev
1920 - demo
2021 - hotfix
21- - feature/psl-conregchanges
22- workflow_dispatch :
22+ workflow_dispatch :
2323
2424jobs :
2525 build-and-push :
@@ -33,18 +33,20 @@ jobs:
3333 uses : docker/setup-buildx-action@v1
3434
3535 - name : Log in to Azure Container Registry
36- if : ${{ ( github.ref_name == 'main' || github.ref_name == 'dev' || github.ref_name == 'demo' || github.ref_name == 'hotfix' || github.ref_name == 'feature/psl-conregchanges') }}
36+ if : ${{ github.ref_name == 'main' || github.ref_name == 'dev' || github.ref_name == 'demo' || github.ref_name == 'hotfix' || github.ref_name == 'feature/psl-conregchanges' }}
3737 uses : azure/docker-login@v2
3838 with :
3939 login-server : ${{ secrets.ACR_LOGIN_SERVER }}
4040 username : ${{ secrets.ACR_USERNAME }}
4141 password : ${{ secrets.ACR_PASSWORD }}
4242
43- - name : Set Docker image tag
43+ - name : Get current date
44+ id : date
45+ run : echo "date=$(date +'%Y-%m-%d')" >> $GITHUB_OUTPUT
46+
47+ - name : Determine Tag Name Based on Branch
48+ id : determine_tag
4449 run : |
45- DATE_TAG=$(date +'%Y-%m-%d')
46- RUN_ID=${{ github.run_number }}
47-
4850 if [[ "${{ github.ref }}" == "refs/heads/main" ]]; then
4951 echo "TAG=latest" >> $GITHUB_ENV
5052 elif [[ "${{ github.ref }}" == "refs/heads/dev" ]]; then
@@ -58,12 +60,17 @@ jobs:
5860 else
5961 echo "TAG=pullrequest-ignore" >> $GITHUB_ENV
6062 fi
61-
62- echo "HISTORICAL_TAG=${TAG}_${DATE_TAG}_${RUN_ID}" >> $GITHUB_ENV
63-
64-
63+
64+ - name : Set Historical Tag
65+ run : |
66+ DATE_TAG=$(date +'%Y-%m-%d')
67+ RUN_ID=${{ github.run_number }}
68+ # Create historical tag using TAG, DATE_TAG, and RUN_ID
69+ echo "HISTORICAL_TAG=${{ env.TAG }}_${DATE_TAG}_${RUN_ID}" >> $GITHUB_ENV
70+
6571 - name : Build and push Docker images optionally
6672 run : |
73+ # Backend Image Build and Push
6774 cd src/backend
6875 docker build -t ${{ secrets.ACR_LOGIN_SERVER }}/macaebackend:${{ env.TAG }} -f Dockerfile . && \
6976 docker tag ${{ secrets.ACR_LOGIN_SERVER }}/macaebackend:${{ env.TAG }} ${{ secrets.ACR_LOGIN_SERVER }}/macaebackend:${{ env.HISTORICAL_TAG }} && \
7582 else
7683 echo "Skipping Docker push for backend with tag : ${{ env.TAG }}"
7784 fi
85+
86+ # Frontend Image Build and Push
7887 cd ../frontend
7988 docker build -t ${{ secrets.ACR_LOGIN_SERVER }}/macaefrontend:${{ env.TAG }} -f Dockerfile . && \
8089 docker tag ${{ secrets.ACR_LOGIN_SERVER }}/macaefrontend:${{ env.TAG }} ${{ secrets.ACR_LOGIN_SERVER }}/macaefrontend:${{ env.HISTORICAL_TAG }} && \
8695 else
8796 echo "Skipping Docker push for frontend with tag : ${{ env.TAG }}"
8897 fi
89-
90-
0 commit comments