@@ -37,36 +37,29 @@ jobs:
3737 with :
3838 registries : ${{ secrets.ECR_REGISTRIES }}
3939
40- - name : Set environment variables
40+ - name : Set environment variable for current date
4141 run : |
4242 echo "DATE=$(date +'%Y%m%dT%H%M%S')" >> $GITHUB_ENV
4343
4444 - name : Copy config file
4545 run : cp theme/_config.yml.example theme/config.yml
46-
47- - name : Build Docker image
48- run : docker build -t ${{ env.APP_NAME }} .
4946
50- - name : Tag and push latest to ECR
51- if : github.ref == 'refs/heads/base'
52- run : |
53- docker tag ${{ env.APP_NAME }} "${{ secrets.AWS_ACCOUNT_ID }}".dkr.ecr."${{ secrets.AWS_REGION }}".amazonaws.com/"${{ env.APP_NAME }}":latest
54- docker push "${{ secrets.AWS_ACCOUNT_ID }}".dkr.ecr."${{ secrets.AWS_REGION }}".amazonaws.com/"${{ env.APP_NAME }}":latest
55- - name : Tag and push dev to ECR
47+ - name : Build and push Docker images with dev and versioned tags
5648 if : github.ref == 'refs/heads/development'
5749 run : |
50+ docker build -t ${{ env.APP_NAME }} --target build .
5851 docker tag ${{ env.APP_NAME }} "${{ secrets.AWS_ACCOUNT_ID }}".dkr.ecr."${{ secrets.AWS_REGION }}".amazonaws.com/"${{ env.APP_NAME }}":dev
5952 docker push "${{ secrets.AWS_ACCOUNT_ID }}".dkr.ecr."${{ secrets.AWS_REGION }}".amazonaws.com/"${{ env.APP_NAME }}":dev
60- - name : Tag and push versioned image to ECR
61- if : github.ref == 'refs/heads/development'
62- run : |
6353 docker tag ${{ env.APP_NAME }} "${{ secrets.AWS_ACCOUNT_ID }}".dkr.ecr."${{ secrets.AWS_REGION }}".amazonaws.com/"${{ env.APP_NAME }}":"${{ env.DATE }}"-"${{ github.sha }}"
6454 docker push "${{ secrets.AWS_ACCOUNT_ID }}".dkr.ecr."${{ secrets.AWS_REGION }}".amazonaws.com/"${{ env.APP_NAME }}":"${{ env.DATE }}"-"${{ github.sha }}"
65- - name : Tag image for production (base branch)
55+
56+ - name : Add prod and latest tags to images
6657 if : github.ref == 'refs/heads/base'
6758 run : |
6859 MANIFEST=$(aws ecr batch-get-image --registry-id ${{ secrets.AWS_ACCOUNT_ID }} --repository-name ${{ env.APP_NAME }} --image-ids imageTag=dev --output json | jq -c --join-output '.images[0].imageManifest')
6960 aws ecr put-image --registry-id ${{ secrets.AWS_ACCOUNT_ID }} --repository-name ${{ env.APP_NAME }} --image-tag prod --image-manifest "$MANIFEST"
61+ aws ecr put-image --registry-id ${{ secrets.AWS_ACCOUNT_ID }} --repository-name ${{ env.APP_NAME }} --image-tag latest --image-manifest "$MANIFEST"
62+
7063 - name : Deploy lambda
7164 if : github.ref == 'refs/heads/base'
7265 run : aws lambda update-function-code
0 commit comments