azure: docker: fix ARM builds by replacing gosu(1)

Our nightly builds are currently failing due to our ARM-based jobs.
These jobs crash immediately when entering the Docker container with a
exception thrown by Go's language runtime. As we're able to successfully
builds the Docker images in previous steps, it's unlikely to be a bug in
Docker itself. Instead, this exception is thrown by gosu(1), which is a
Go-based utility to drop privileges and run by our entrypoint.

Fix the issue by dropping gosu(1) in favor of sudo(1).
This commit is contained in:
Patrick Steinhardt
2020-02-18 15:20:43 +01:00
parent 76b49caf6a
commit 01a8340662
3 changed files with 4 additions and 4 deletions

View File

@@ -7,7 +7,6 @@ RUN apt-get update && \
curl \
gcc \
git \
gosu \
libcurl4-openssl-dev \
libpcre3-dev \
libssh2-1-dev \
@@ -19,6 +18,7 @@ RUN apt-get update && \
openssl \
pkgconf \
python \
sudo \
valgrind \
&& \
rm -rf /var/lib/apt/lists/*

View File

@@ -1,4 +1,4 @@
#!/bin/bash -e
useradd --shell /bin/bash libgit2
chown -R $(id -u libgit2) /home/libgit2
exec gosu libgit2 "$@"
chown --recursive libgit2:libgit2 /home/libgit2
exec sudo --preserve-env --user=libgit2 "$@"

View File

@@ -8,7 +8,6 @@ RUN apt-get update && \
curl \
gcc \
git \
gosu \
krb5-user \
libcurl4-gnutls-dev \
libgcrypt20-dev \
@@ -23,6 +22,7 @@ RUN apt-get update && \
openssl \
pkgconf \
python \
sudo \
valgrind \
&& \
rm -rf /var/lib/apt/lists/*