@@ -4,6 +4,7 @@ permissions:
44 contents : read
55 packages : write
66 id-token : write
7+ attestations : write
78
89on :
910 workflow_call :
5859 image_tags=$image_tags,$ref_without_tag:v4-beta
5960 fi
6061
62+ # when pushing the mutable main tag, also push an immutable-by-convention
63+ # full-commit-sha tag so a commit can be resolved to a specific digest
64+ if [[ "${STEPS_GET_TAG_OUTPUTS_TAG}" == "main" ]]; then
65+ image_tags=$image_tags,$ref_without_tag:${GITHUB_SHA}
66+ fi
67+
6168 echo "image_tags=${image_tags}" >> "$GITHUB_OUTPUT"
6269 env :
6370 STEPS_GET_TAG_OUTPUTS_TAG : ${{ steps.get_tag.outputs.tag }}
7481 echo "BUILD_GIT_SHA=${GITHUB_SHA}"
7582 echo "BUILD_GIT_REF_NAME=${GITHUB_REF_NAME}"
7683 echo "BUILD_TIMESTAMP_SECONDS=$(date +%s)"
84+ echo "BUILD_TIMESTAMP_RFC3339=$(date -u +%Y-%m-%dT%H:%M:%SZ)"
7785 } >> "$GITHUB_OUTPUT"
7886 env :
7987 STEPS_GET_TAG_OUTPUTS_TAG : ${{ steps.get_tag.outputs.tag }}
8795 password : ${{ secrets.GITHUB_TOKEN }}
8896
8997 - name : 🐳 Build image and push to GitHub Container Registry
98+ id : build_push
9099 uses : depot/build-push-action@5f3b3c2e5a00f0093de47f657aeaefcedff27d18 # v1.17.0
91100 with :
92101 file : ./docker/Dockerfile
@@ -98,8 +107,16 @@ jobs:
98107 BUILD_GIT_SHA=${{ steps.set_build_info.outputs.BUILD_GIT_SHA }}
99108 BUILD_GIT_REF_NAME=${{ steps.set_build_info.outputs.BUILD_GIT_REF_NAME }}
100109 BUILD_TIMESTAMP_SECONDS=${{ steps.set_build_info.outputs.BUILD_TIMESTAMP_SECONDS }}
110+ BUILD_TIMESTAMP_RFC3339=${{ steps.set_build_info.outputs.BUILD_TIMESTAMP_RFC3339 }}
101111 SENTRY_RELEASE=${{ steps.set_build_info.outputs.BUILD_GIT_SHA }}
102112 SENTRY_ORG=triggerdev
103113 SENTRY_PROJECT=trigger-cloud
104114 secrets : |
105115 sentry_auth_token=${{ secrets.SENTRY_AUTH_TOKEN }}
116+
117+ - name : 🪪 Attest build provenance
118+ uses : actions/attest-build-provenance@a2bbfa25375fe432b6a289bc6b6cd05ecd0c4c32 # v4.1.0
119+ with :
120+ subject-name : ghcr.io/triggerdotdev/trigger.dev
121+ subject-digest : ${{ steps.build_push.outputs.digest }}
122+ push-to-registry : true
0 commit comments