1- # Panubo build and push to Quay.io and ECR Public
1+ # Source: https://github.com/panubo/reference-github-actions/blob/main/docker-images/build-push.yml
2+ #
3+ # Description: Panubo build and push to Quay.io and ECR Public
24# This GH Action is intended for public docker images that package upstream applications/services (ie not for projects of Panubo's).
35# For repos that build multiple repos use the multi-build-push.yml workflow.
46#
911# Automated testing is triggered by `make _ci_test`, if no test is required the Makefile target should just run `true`.
1012# Before tests are run a Docker build is performed, the resulting image has a tag of "test"
1113# BATS is installed since it is commonly required by the tests.
14+ #
15+ # LICENSE: MIT License, Copyright (c) 2021-2025 Volt Grid Pty Ltd t/a Panubo
1216
1317name : build and push on main and tags
1418
3337 runs-on : ubuntu-latest
3438 steps :
3539 - name : Checkout
36- uses : actions/checkout@v3
40+ uses : actions/checkout@v5
3741
3842 - name : Get repo name
3943 id : image_name
4246
4347 - name : Docker meta
4448 id : meta
45- uses : docker/metadata-action@v4
49+ uses : docker/metadata-action@v5
4650 with :
4751 # list of Docker images to use as base name for tags
4852 images : |
@@ -59,28 +63,28 @@ jobs:
5963 # type=sha
6064
6165 - name : Set up QEMU
62- uses : docker/setup-qemu-action@v2
66+ uses : docker/setup-qemu-action@v3
6367
6468 - name : Set up Docker Buildx
6569 id : buildx
66- uses : docker/setup-buildx-action@v2
70+ uses : docker/setup-buildx-action@v3
6771
6872 # The values provided to these two AWS steps are always the same for Panubo owned repos
6973 - name : Configure AWS Credentials
70- uses : aws-actions/configure-aws-credentials@v1-node16
74+ uses : aws-actions/configure-aws-credentials@v4
7175 with :
7276 role-to-assume : ${{ env.GITHUB_ROLE_ARN }}
7377 aws-region : us-east-1
7478
7579 - name : Login to ECR
7680 if : github.event_name != 'pull_request'
77- uses : docker/login-action@v2
81+ uses : docker/login-action@v3
7882 with :
7983 registry : public.ecr.aws
8084
8185 - name : Login to Quay.io
8286 if : github.event_name != 'pull_request'
83- uses : docker/login-action@v2
87+ uses : docker/login-action@v3
8488 with :
8589 registry : quay.io
8690 username : ${{ secrets.PANUBUILD_QUAYIO_USERNAME }}
9296 bats-version : 1.7.0
9397
9498 - name : Build and export to Docker
95- uses : docker/build-push-action@v4
99+ uses : docker/build-push-action@v6
96100 with :
97101 builder : ${{ steps.buildx.outputs.name }}
98102 cache-from : type=gha
@@ -104,7 +108,7 @@ jobs:
104108 make _ci_test
105109
106110 - name : Build and Push
107- uses : docker/build-push-action@v3
111+ uses : docker/build-push-action@v6
108112 with :
109113 builder : ${{ steps.buildx.outputs.name }}
110114 push : ${{ github.event_name != 'pull_request' }}
0 commit comments