Philipp,
My build runs for about ten minutes and then I get the following error during the export.
2021-01-15T15:39:05.4205121Z #32 exporting cache 2021-01-15T15:39:05.4206496Z #32 sha256:2700d4ef94dee473593c5c614b55b2dedcca7893909811a8f2b48291a1f581e4 2021-01-15T15:39:05.4207322Z #32 preparing build cache for export 2021-01-15T15:40:37.6531312Z #32 preparing build cache for export 92.2s done 2021-01-15T15:40:37.6532282Z #32 writing layer sha256:15ad4c058791b2553c6ac51a06d58da729216367debede67e23bfb1887a6afe9 2021-01-15T15:40:39.4543043Z #32 writing layer sha256:15ad4c058791b2553c6ac51a06d58da729216367debede67e23bfb1887a6afe9 1.8s done ... 2021-01-15T15:41:59.4811151Z #32 writing config sha256:b0fe7df00fcf5dd735567d810bf193e80433cb00659ffc1e8b09aa97f18ccd14 2021-01-15T15:42:00.2316716Z #32 writing config sha256:b0fe7df00fcf5dd735567d810bf193e80433cb00659ffc1e8b09aa97f18ccd14 0.8s done 2021-01-15T15:42:00.2318570Z #32 writing manifest sha256:d2b65e39c62a5ac4acc922292dd268a186e8286b74456287b7c0fbe457402efa 2021-01-15T15:42:00.6394612Z #32 writing manifest sha256:d2b65e39c62a5ac4acc922292dd268a186e8286b74456287b7c0fbe457402efa 0.5s done 2021-01-15T15:42:00.6397257Z #32 ERROR: error writing manifest blob: failed commit on ref "sha256:d2b65e39c62a5ac4acc922292dd268a186e8286b74456287b7c0fbe457402efa": unexpected status: 400 Bad Request 2021-01-15T15:42:00.6399515Z ------ 2021-01-15T15:42:00.6401048Z > importing cache manifest from ############.dkr.ecr.us-east-1.amazonaws.com/foo:task-cache-github-docker-build-buildcache: 2021-01-15T15:42:00.6402102Z ------ 2021-01-15T15:42:00.6402665Z ------ 2021-01-15T15:42:00.6403216Z > exporting cache: 2021-01-15T15:42:00.6403855Z ------ 2021-01-15T15:42:00.6405992Z error: failed to solve: rpc error: code = Unknown desc = error writing manifest blob: failed commit on ref "sha256:d2b65e39c62a5ac4acc922292dd268a186e8286b74456287b7c0fbe457402efa": unexpected status: 400 Bad Request 2021-01-15T15:42:09.9011793Z ##[error]Process completed with exit code 1.
I'm using the following for the build:
build: name: moby/buildkit Build w/ registry cache runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - name: Docker Login run: aws ecr get-login --no-include-email - name: Build run: | export CURRENT_BRANCH=$(git rev-parse --abbrev-ref HEAD) export BRANCH_SLUG=$(echo $CURRENT_BRANCH | sed -r 's/\//-/g') export DOCKER_COMMIT_HASH_TAG=${DOCKER_REGISTRY}/foo:${{ github.sha }} docker run \ --rm \ --privileged \ -v `pwd`:/tmp/work \ -v $HOME/.docker:/root/.docker \ --entrypoint buildctl-daemonless.sh \ moby/buildkit:master \ build \ --frontend dockerfile.v0 \ --local context=/tmp/work \ --local dockerfile=/tmp/work \ --output type=image,name=${DOCKER_COMMIT_HASH_TAG},push=true \ --export-cache mode=max,type=registry,ref=${DOCKER_REGISTRY}/foo:${BRANCH_SLUG}-buildcache,push=true \ --import-cache type=registry,ref=${DOCKER_REGISTRY}/foo:${BRANCH_SLUG}-buildcache
Any ideas on what is wrong? I should mention that the registry I'm using is AWS ECR. "############" means it was redacted.
It's looking like I'm running into AWS ECR not supporting cache manifest lists.
Switching to using Github's registry for the cache manifest and then pushing the final build images to AWS ECR worked.
Are you sure you want to hide this comment? It will become hidden in your post, but will still be visible via the comment's permalink.
Hide child comments as well
Confirm
For further actions, you may consider blocking this person and/or reporting abuse
We're a place where coders share, stay up-to-date and grow their careers.
Philipp,
My build runs for about ten minutes and then I get the following error during the export.
I'm using the following for the build:
Any ideas on what is wrong? I should mention that the registry I'm using is AWS ECR. "############" means it was redacted.
It's looking like I'm running into AWS ECR not supporting cache manifest lists.
Switching to using Github's registry for the cache manifest and then pushing the final build images to AWS ECR worked.