From ebc2fa7d928169da1ad1053049e56ac2ca00fa17 Mon Sep 17 00:00:00 2001 From: Jan Kiszka Date: Tue, 17 Jul 2018 21:56:12 +0200 Subject: [PATCH] Docker: Consolidate common parts of docker-entrypoint The GOSU variable now controls whether we run straight (as root) or via gosu as "builder". Signed-off-by: Jan Kiszka --- docker-entrypoint | 21 +++++++++------------ 1 file changed, 9 insertions(+), 12 deletions(-) diff --git a/docker-entrypoint b/docker-entrypoint index 3c89771..3046325 100755 --- a/docker-entrypoint +++ b/docker-entrypoint @@ -17,22 +17,19 @@ if [ $USER_ID == 0 ]; then # We shall run everything as root mkdir -p /builder - cd /builder - if [ -n "$1" ]; then - exec "$@" - else - exec bash - fi + GOSU="" else if ! id $USER_ID >/dev/null 2>&1; then # Create a non-root user that will perform the actual build useradd --uid $USER_ID --create-home --home-dir /builder builder fi - cd /builder - if [ -n "$1" ]; then - exec gosu builder "$@" - else - exec gosu builder bash - fi + GOSU="gosu builder" +fi + +cd /builder +if [ -n "$1" ]; then + exec $GOSU "$@" +else + exec $GOSU bash fi