@@ -145,14 +145,14 @@ jobs:
145145 scan_artifact_name : docker-build-trivy-scan-report
146146 sbom_artifact_name : docker-build-cyclonedx-sbom
147147 steps :
148- - uses : actions/checkout@v6
148+ - uses : actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
149149 - name : Set up Docker Buildx
150- uses : docker/setup-buildx-action@v3
150+ uses : docker/setup-buildx-action@8d2750c68a42422c14e847fe6c8ac0403b4cbd6f # v3
151151 - name : Set up QEMU
152- uses : docker/setup-qemu-action@v3
152+ uses : docker/setup-qemu-action@c7c53464625b32c7a7e944ae62b3e17d2b600130 # v3
153153 # Auth
154154 # # AWS
155- - uses : aws-actions/configure-aws-credentials@v6
155+ - uses : aws-actions/configure-aws-credentials@8df5847569e6427dd6c4fb1cf565c83acfa8afa7 # v6
156156 if : inputs.DOCKER_PUSH && inputs.AWS_REGION != ''
157157 with :
158158 role-to-assume : ${{ secrets.AWS_IAM_ROLE }}
@@ -161,26 +161,26 @@ jobs:
161161 - name : Login to Amazon ECR
162162 if : inputs.DOCKER_PUSH && inputs.AWS_REGION != ''
163163 id : ecr
164- uses : aws-actions/amazon-ecr-login@v2
164+ uses : aws-actions/amazon-ecr-login@183a1442edf41672e66566b7fc560e297a290896 # v2
165165 # # GHCR
166166 - name : Login to GitHub Container Registry
167167 if : inputs.DOCKER_PUSH && inputs.REGISTRY == 'ghcr.io' && inputs.AWS_REGION == ''
168- uses : docker/login-action@v3
168+ uses : docker/login-action@c94ce9fb468520275223c153574b00df6fe4bcc9 # v3
169169 with :
170170 registry : ghcr.io
171171 username : ${{ inputs.USERNAME != '' && inputs.USERNAME || github.actor }}
172172 password : ${{ secrets.TOKEN }}
173173 # # Other
174174 - name : Login to registry (using username and token)
175175 if : inputs.DOCKER_PUSH && inputs.REGISTRY != '' && inputs.REGISTRY != 'ghcr.io' && inputs.USERNAME != ''
176- uses : docker/login-action@v3
176+ uses : docker/login-action@c94ce9fb468520275223c153574b00df6fe4bcc9 # v3
177177 with :
178178 registry : ${{ inputs.REGISTRY }}
179179 username : ${{ inputs.USERNAME }}
180180 password : ${{ secrets.TOKEN }}
181181 - name : Prepare Docker meta
182182 id : meta
183- uses : docker/metadata-action@v6
183+ uses : docker/metadata-action@030e881283bb7a6894de51c315a6bfe6a94e05cf # v6
184184 with :
185185 images : ${{ inputs.AWS_REGION != '' && steps.ecr.outputs.registry || inputs.REGISTRY }}/${{ inputs.IMAGE != '' && inputs.IMAGE || github.repository }}
186186 flavor : |
@@ -215,7 +215,7 @@ jobs:
215215 ${{ inputs.CUSTOM_TAGS }}
216216 - name : Build and push
217217 id : build_push
218- uses : docker/build-push-action@v6
218+ uses : docker/build-push-action@10e90e3645eae34f1e60eeb005ba3a3d33f178e8 # v6
219219 with :
220220 platforms : ${{ inputs.DOCKER_PLATFORMS }}
221221 context : ${{ inputs.DOCKER_CONTEXT }}
@@ -233,7 +233,7 @@ jobs:
233233 - name : Run Trivy vulnerability scanner
234234 id : security_scan
235235 if : ${{ inputs.SECURITY_SCAN_ENABLED && inputs.DOCKER_PUSH }}
236- uses : aquasecurity/trivy-action@57a97c7e7821a5776cebc9bb87c984fa69cba8f1
236+ uses : aquasecurity/trivy-action@57a97c7e7821a5776cebc9bb87c984fa69cba8f1 # v0.35.0
237237 env :
238238 TRIVY_EXIT_ON_EOL : " 1"
239239 with :
@@ -246,7 +246,7 @@ jobs:
246246 severity : " ${{ inputs.SECURITY_SCAN_SEVERITY }}"
247247 - name : Generate SBOM (CycloneDX)
248248 if : ${{ always() && inputs.SBOM_ENABLED && inputs.DOCKER_PUSH }}
249- uses : aquasecurity/trivy-action@57a97c7e7821a5776cebc9bb87c984fa69cba8f1
249+ uses : aquasecurity/trivy-action@57a97c7e7821a5776cebc9bb87c984fa69cba8f1 # v0.35.0
250250 with :
251251 image-ref : " ${{ fromJSON(steps.meta.outputs.json).tags[0] }}"
252252 hide-progress : true
@@ -269,13 +269,13 @@ jobs:
269269 fi
270270 - name : Upload scan report artifact
271271 if : ${{ always() && inputs.SECURITY_SCAN_ENABLED && inputs.DOCKER_PUSH && hashFiles('scan-report.txt') != '' }}
272- uses : actions/upload-artifact@v7
272+ uses : actions/upload-artifact@bbbca2ddaa5d8feaa63e36b76fdaad77386f024f # v7
273273 with :
274274 name : docker-build-trivy-scan-report
275275 path : scan-report.txt
276276 - name : Upload SBOM artifact
277277 if : ${{ always() && inputs.SBOM_ENABLED && inputs.DOCKER_PUSH && hashFiles('sbom.json') != '' }}
278- uses : actions/upload-artifact@v7
278+ uses : actions/upload-artifact@bbbca2ddaa5d8feaa63e36b76fdaad77386f024f # v7
279279 with :
280280 name : docker-build-cyclonedx-sbom
281281 path : sbom.json
@@ -296,7 +296,7 @@ jobs:
296296 - name : Send Slack notification
297297 if : ${{ always() && steps.check_slack_webhook.outputs.has_webhook == 'true' && (job.status != 'success' || inputs.SLACK_NOTIFY_ON_SUCCESS) }}
298298 continue-on-error : true
299- uses : slackapi/slack-github-action@fd998911a4a39ce77c6ae6221df1f58471594105
299+ uses : slackapi/slack-github-action@91efab103c0de0a537f72a35f6b8cda0ee76bf0a # v2
300300 with :
301301 webhook : ${{ secrets.SLACK_WEBHOOK }}
302302 webhook-type : incoming-webhook
0 commit comments