From 96ff32fb2fe23537e9391d4c3757770c3dd15847 Mon Sep 17 00:00:00 2001 From: Jeremy Lin Date: Tue, 24 Jan 2023 12:28:33 -0800 Subject: [PATCH] Remove `arm32v6`-specific tag This section of code seems to be breaking the Docker release workflow as of a few days ago, though it's unclear why. This tag only existed to work around an issue with Docker pulling the wrong image for ARMv6 platforms; that issue was resolved in Docker 20.10.0, which has been out for a few years now, so it seems like a reasonable time to drop this tag. --- hooks/push | 39 --------------------------------------- 1 file changed, 39 deletions(-) diff --git a/hooks/push b/hooks/push index de8d24e8..75d3d039 100755 --- a/hooks/push +++ b/hooks/push @@ -108,42 +108,3 @@ docker buildx build \ "${tag_args[@]}" \ --push \ - < ./docker/Dockerfile.buildx - -# Add an extra arch-specific tag for `arm32v6`; Docker can't seem to properly -# auto-select that image on ARMv6 platforms like Raspberry Pi 1 and Zero -# (https://github.com/moby/moby/issues/41017). -# -# Note that we use `arm32v6` instead of `armv6` to be consistent with the -# existing vaultwarden tags, which adhere to the naming conventions of the -# Docker per-architecture repos (e.g., https://hub.docker.com/u/arm32v6). -# Unfortunately, these per-arch repo names aren't always consistent with the -# corresponding platform (OS/arch/variant) IDs, particularly in the case of -# 32-bit ARM arches (e.g., `linux/arm/v6` is used, not `linux/arm32/v6`). -# -# TODO: It looks like this issue should be fixed starting in Docker 20.10.0, -# so this step can be removed once fixed versions are in wider distribution. -# -# Tags: -# -# testing => testing-arm32v6 -# testing-alpine => -# x.y.z => x.y.z-arm32v6, latest-arm32v6 -# x.y.z-alpine => -# -if [[ "${DOCKER_TAG}" != *alpine ]]; then - image="${DOCKER_REPO}":"${DOCKER_TAG}" - - # Fetch the multi-arch manifest list and find the digest of the armv6 image. - filter='.manifests|.[]|select(.platform.architecture=="arm" and .platform.variant=="v6")|.digest' - digest="$(docker manifest inspect "${image}" | jq -r "${filter}")" - - # Pull the armv6 image by digest, retag it, and repush it. - docker pull "${DOCKER_REPO}"@"${digest}" - docker tag "${DOCKER_REPO}"@"${digest}" "${image}"-arm32v6 - docker push "${image}"-arm32v6 - - if [[ "${DOCKER_TAG}" =~ ^[0-9]+\.[0-9]+\.[0-9]+ ]]; then - docker tag "${image}"-arm32v6 "${DOCKER_REPO}:latest"-arm32v6 - docker push "${DOCKER_REPO}:latest"-arm32v6 - fi -fi