-
Notifications
You must be signed in to change notification settings - Fork 584
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Digest output missing for buildx #906
Comments
Would need logs from your workflow and/or link to your repo to help you out. |
I'm having the same problem! |
solved by passing in this should be documented, because both |
Currently having the same issue. In my case, we can't use
Basically a copy-paste of what is documented, except I have added tags, and use AWS ECR as a registry.
Will work on getting this repo public to make it easier to share logs. |
Looking again at your workflow this is expected. When using the Depending on your use case you can either use the I have updated our workflow in #928 to check this behavior. Here is a summary when digest and imageid is available following your setup:
|
Hello! Original author here. 👋 I can confirm that adding |
Hello - it's me again!
with |
You need to call the action twice as shown in https://docs.docker.com/build/ci/github-actions/test-before-push/ if this is to test your image before pushing it. Otherwise no sure why you would like to load and push. |
In case it helps anyone: My runners were on Amazon Linux 2 (also tried Amazon Linux 2023), which are stuck on Docker Server 20.x. I updated my runners to Ubuntu 22.04, which comes with Docker Server 24.x. The digest is returned correctly now. |
Be aware, that docker.io in version 24.x, which comes with Ubuntu 22.04.1+ is actually missing buildx up until at least 2023-09-07. |
This comment was marked as off-topic.
This comment was marked as off-topic.
Will look to document this case
Since Buildx 0.13 multi exporters can be used but we need to handle that correctly in the exporter response. Atm only the first response is returned, see docker/buildx#2181 |
Posting here in case someone else has this edge case.... I ran into this problem as well and traced the problem to the Amazon Linux docker package. When running docker info the following output is returned
Buildx is definitely installed with this package and I believe it is 0.13.x as the provenance param works with the cli on the server. This is a current open issue on the Amazon Linux 2023 repo. When using this action on an Amazon Linux VM hosted runner this invalid version prevents the provenance flag from being passed to the cli and therefore no digest is generated. Manually setting provenance:true does not fix it and generates a warning in attestations stating that provenance is not allow for versions under 0.10.x The current options are to not use this action and write the CLI command or switch to Ubuntu. I ended up terminating all our runners and recreating them on Ubuntu. This is sonewhat edge case however it will affect attempting to use Amazon Linux as a runner when using the multi runner script referenced in the docker docs. it would be nice to have an option in the action to manually append cli arguments or bypass version checks to force through cli args as workarounds for this or future similar cases. |
* feat: update version store to contain multiple versions * Update Azure/azure-cli package version to 2.62.0 * fix: wrong versions file name * fix: remove duplicate azure-cli version * Update Azure/azure-cli package version to 2.62.0 * Update hashicorp/terraform package version to 1.9.3 * chore: temporary remove latest tag * chore: remove duplicate versions again * Update Azure/azure-cli package version to 2.62.0 * Update hashicorp/terraform package version to 1.9.3 * add json formatter for vscode * fix: remove duplicate versions * feat: add check to only add new version to versions.json * Update hashicorp/terraform package version to 1.9.4 * Update Azure/azure-cli package version to 2.63.0 * fix: remove message of unknown repository * Update Azure/azure-cli package version to 2.63.0 * chore: remove deprecated ::set-output to set github output * fix: do not push build provenance attestations on pull requests build since they only run for validation purposes * fix: escape matrix json suitable for github outputs * add ending new line to versions.json * disable artifact attestation on pull request since no images get's exported. See docker/build-push-action#906 --------- Co-authored-by: GitHub Action <action@github.com>
Troubleshooting
Before submitting a bug report please read the Troubleshooting doc. ✅
Behaviour
I have a Github actions workflow that previously has been using
build-push-action@v4
withoutsetup-buildx-action
and relying onoutputs.digest
from thebuild-push-action
(to know which Docker image to deploy). When addingthe digest is no longer output from
build-push-action@v4
and instead empty.Steps to reproduce this issue
Unfortunately what I am working on is closed source so I can't share this.
setup-buildx-action@v2
.build-push-action@v4
. In my case I am also pushing the image & have GHA caching enabled (not sure that's relevant here, though). Give the stepid: dockerbuild
.echo Digest: ${{ steps.dockerbuild.outputs.digest }}
.Expected behaviour
The echo output should contain the digest, not an empty string.
Actual behaviour
The output is
Digest:
with no digest.Configuration
Logs
Not available.
The text was updated successfully, but these errors were encountered: