Skip to content

Commit 62a1c2f

Browse files
authored
fix: supautils was missing checksum step after download (#1033)
* fix: supautils was missing checksum step after download * fix: there are debs per architecture, and we run builds on both * fix: just use the vars directly * fix: get the arch abr right * fix: match vars names correctly * fix: remove extra backslash * fix: since ADD happens in a different layer we can try this * fix: rm sha256: * fix: Docker will not multi ADD so scripting the step * fix: needs curl at this layer * fix: use checksum direct * fix: try stripping prefix and colon * fix: cleanup
1 parent 1e96755 commit 62a1c2f

File tree

2 files changed

+29
-3
lines changed

2 files changed

+29
-3
lines changed

Dockerfile

Lines changed: 27 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -824,8 +824,33 @@ RUN checkinstall -D --install=no --fstrans=no --backup=no --pakdir=/tmp --nodoc
824824
FROM base as supautils
825825
# Download package archive
826826
ARG supautils_release
827-
ADD "https://github.com/supabase/supautils/releases/download/v${supautils_release}/supautils-v${supautils_release}-pg${postgresql_major}-${TARGETARCH}-linux-gnu.deb" \
828-
/tmp/supautils.deb
827+
# Define checksums for different architectures
828+
ARG supautils_release_arm64_deb_checksum
829+
ARG supautils_release_amd64_deb_checksum
830+
831+
RUN apt-get update && apt-get install -y curl && rm -rf /var/lib/apt/lists/*
832+
833+
# Set up a script to download the correct package
834+
RUN echo '#!/bin/sh' > /tmp/download_supautils.sh && \
835+
echo 'set -e' >> /tmp/download_supautils.sh && \
836+
echo 'if [ "$TARGETARCH" = "amd64" ]; then' >> /tmp/download_supautils.sh && \
837+
echo ' CHECKSUM="${supautils_release_amd64_deb_checksum}"' >> /tmp/download_supautils.sh && \
838+
echo ' ARCH="amd64"' >> /tmp/download_supautils.sh && \
839+
echo 'elif [ "$TARGETARCH" = "arm64" ]; then' >> /tmp/download_supautils.sh && \
840+
echo ' CHECKSUM="${supautils_release_arm64_deb_checksum}"' >> /tmp/download_supautils.sh && \
841+
echo ' ARCH="arm64"' >> /tmp/download_supautils.sh && \
842+
echo 'else' >> /tmp/download_supautils.sh && \
843+
echo ' echo "Unsupported architecture: $TARGETARCH" >&2' >> /tmp/download_supautils.sh && \
844+
echo ' exit 1' >> /tmp/download_supautils.sh && \
845+
echo 'fi' >> /tmp/download_supautils.sh && \
846+
echo 'CHECKSUM=$(echo $CHECKSUM | sed "s/^sha256://")' >> /tmp/download_supautils.sh && \
847+
echo 'curl -fsSL -o /tmp/supautils.deb \\' >> /tmp/download_supautils.sh && \
848+
echo ' "https://github.com/supabase/supautils/releases/download/v${supautils_release}/supautils-v${supautils_release}-pg${postgresql_major}-$ARCH-linux-gnu.deb"' >> /tmp/download_supautils.sh && \
849+
echo 'echo "$CHECKSUM /tmp/supautils.deb" | sha256sum -c -' >> /tmp/download_supautils.sh && \
850+
chmod +x /tmp/download_supautils.sh
851+
852+
# Run the script to download and verify the package
853+
RUN /tmp/download_supautils.sh && rm /tmp/download_supautils.sh
829854

830855
####################
831856
# setup-wal-g.yml

ansible/vars.yml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -85,7 +85,8 @@ wal2json_release: "2_5"
8585
wal2json_release_checksum: sha256:b516653575541cf221b99cf3f8be9b6821f6dbcfc125675c85f35090f824f00e
8686

8787
supautils_release: "2.2.1"
88-
supautils_release_checksum: sha256:1a2d2b8fe604d38921ed9cf3a0d56dd142a274035d0dca17ad21cdc81ddd9569
88+
supautils_release_arm64_deb_checksum: sha256:1a2d2b8fe604d38921ed9cf3a0d56dd142a274035d0dca17ad21cdc81ddd9569
89+
supautils_release_amd64_deb_checksum: sha256:4674fac146976dc179f5871271830718112f5eaa853bc461df9e303c8df2e1ab
8990
supautils_release_tar_checksum: sha256:f1f33371390322ac830645b8b0b8e249cb8ca10b19fdeae917f383014ed01b5d
9091

9192
pljava_release: master

0 commit comments

Comments
 (0)