@@ -756,7 +756,7 @@ commands =
756
756
docker: BUILD_IMAGE=$DOCKER_PUSH_REPOSITORY$BUILD_IMAGE_STEM-$docker_target; \
757
757
docker: BUILD_TAG={env:DOCKER_TAG:$(git describe --dirty --always)}; \
758
758
docker: TAG_ARGS=$(for tag in $BUILD_TAG {env:EXTRA_DOCKER_TAGS:}; do echo --tag $BUILD_IMAGE:$tag; done); \
759
- docker: DOCKER_BUILDKIT={env:DOCKER_BUILDKIT:0} \
759
+ docker: DOCKER_BUILDKIT={env:DOCKER_BUILDKIT:0}; \
760
760
docker: docker build . -f {envdir}/Dockerfile \
761
761
docker: --target $docker_target \
762
762
docker: $TAG_ARGS \
@@ -769,12 +769,16 @@ commands =
769
769
docker: --build-arg TARGETS_OPTIONAL="{env:TARGETS_OPTIONAL:ptest}" \
770
770
docker: {env:EXTRA_DOCKER_BUILD_ARGS:}; status=$?; \
771
771
docker: if [ $status != 0 ]; then \
772
- docker: BUILD_TAG="$BUILD_TAG-failed"; docker commit $(docker ps -l -q) $BUILD_IMAGE:$BUILD_TAG; PUSH_TAGS=$BUILD_IMAGE:$BUILD_TAG; \
772
+ docker: if [ $DOCKER_BUILDKIT = 0 ]; then \
773
+ docker: BUILD_TAG="$BUILD_TAG-failed"; docker commit $(docker ps -l -q) $BUILD_IMAGE:$BUILD_TAG; PUSH_TAGS=$BUILD_IMAGE:$BUILD_TAG; \
774
+ docker: else \
775
+ docker: unset BUILD_TAG; unset PUSH_TAGS; echo "DOCKER_BUILDKIT=1, so we cannot commit and tag the failed image"; \
776
+ docker: fi; \
773
777
docker: else \
774
778
docker: PUSH_TAGS=$(echo $BUILD_IMAGE:$BUILD_TAG; for tag in {env:EXTRA_DOCKER_TAGS:}; do echo "$BUILD_IMAGE:$tag"; done); \
775
779
docker: fi; \
776
780
docker: echo $BUILD_IMAGE:$BUILD_TAG >> {envdir}/Dockertags; \
777
- docker: if [ x"{env:DOCKER_PUSH_REPOSITORY:}" != x ]; then \
781
+ docker: if [ x"{env:DOCKER_PUSH_REPOSITORY:}" != x -a x"$PUSH_TAGS" != x ]; then \
778
782
docker: echo Pushing $PUSH_TAGS; \
779
783
docker: for tag in $PUSH_TAGS; do \
780
784
docker: docker push $tag || echo "(ignoring errors)"; \
0 commit comments