From 8baf50d98e98db7148a34e0f78ff6c3051103602 Mon Sep 17 00:00:00 2001 From: tcely Date: Tue, 3 Jun 2025 13:09:56 -0400 Subject: [PATCH 1/2] Check for unresolved Python shared libraries --- Dockerfile | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index da1e84c5..61324a9d 100644 --- a/Dockerfile +++ b/Dockerfile @@ -459,8 +459,16 @@ RUN --mount=type=tmpfs,target=/cache \ && \ apt-get -y autopurge && \ apt-get -y autoclean && \ + LD_LIBRARY_PATH=/usr/local/lib/python3/dist-packages/pillow.libs:/usr/local/lib/python3/dist-packages/psycopg_binary.libs \ + find /usr/local/lib/python3/dist-packages/ \ + -name '*.so*' -print \ + -exec du -h '{}' ';' \ + -exec ldd '{}' ';' \ + >| /cache/python-shared-objects 2>&1 && \ rm -v -f /var/cache/debconf/*.dat-old && \ - rm -v -rf /tmp/* + rm -v -rf /tmp/* ; \ + grep >/dev/null -Fe ' => not found' /cache/python-shared-objects && \ + cat -v /cache/python-shared-objects || : # Copy root COPY config/root / From 75aa06d495ab6cfb73a28d74a4fdcf609721aab2 Mon Sep 17 00:00:00 2001 From: tcely Date: Tue, 3 Jun 2025 13:34:25 -0400 Subject: [PATCH 2/2] Stop the build when a shared object is unresolved --- Dockerfile | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/Dockerfile b/Dockerfile index 61324a9d..353a54ae 100644 --- a/Dockerfile +++ b/Dockerfile @@ -467,8 +467,13 @@ RUN --mount=type=tmpfs,target=/cache \ >| /cache/python-shared-objects 2>&1 && \ rm -v -f /var/cache/debconf/*.dat-old && \ rm -v -rf /tmp/* ; \ - grep >/dev/null -Fe ' => not found' /cache/python-shared-objects && \ - cat -v /cache/python-shared-objects || : + if grep >/dev/null -Fe ' => not found' /cache/python-shared-objects ; \ + then \ + cat -v /cache/python-shared-objects ; \ + printf -- 1>&2 '%s\n' \ + ERROR: ' An unresolved shared object was found.' ; \ + exit 1 ; \ + fi # Copy root COPY config/root /