summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMateusz Pilat <m.pilat@partner.samsung.com>2019-04-17 12:19:10 +0200
committerMateusz Pilat <m.pilat@partner.samsung.com>2019-04-18 07:44:48 +0200
commit86071d2aba0ff35e7bee19ad6fedf93ae4546521 (patch)
tree8c60d831bb8366524a05be5b6a1295220d8d9e6d
parent45fa0030abb4c013722f68c1ef23d53ba1d1620e (diff)
Add fix for Molecule Docker
Molecule Docker was not running when built by the root user Issue-ID: OOM-1808 Change-Id: I27c3ecb6d5670ac1c447acba688b25e10d5a5a4d Signed-off-by: Mateusz Pilat <m.pilat@partner.samsung.com>
-rw-r--r--ansible/test/molecule-docker/Dockerfile10
-rwxr-xr-xansible/test/molecule-docker/build.sh2
2 files changed, 8 insertions, 4 deletions
diff --git a/ansible/test/molecule-docker/Dockerfile b/ansible/test/molecule-docker/Dockerfile
index e4207f2e..61817317 100644
--- a/ansible/test/molecule-docker/Dockerfile
+++ b/ansible/test/molecule-docker/Dockerfile
@@ -3,6 +3,7 @@ FROM quay.io/ansible/molecule:2.20
ARG USER_ID
ARG GROUP_ID
ARG DOCKER_GROUP_ID
+ARG DOCKER_USER
# When user/group provided, create user to have matching ids (for the host user)
# to avoid this docker writing files as root owned
@@ -10,11 +11,12 @@ RUN if [ ${USER_ID:-0} -ne 0 ] && [ ${GROUP_ID:-0} -ne 0 ]; then \
# shadow needed for addgroup
# sshpass needed for accessing docker_host (localhost) with ssh and without password prompt
apk --no-cache add shadow sshpass && \
- addgroup -g ${GROUP_ID} molecule && \
- adduser -D -u ${USER_ID} -G molecule molecule && \
+ addgroup -g ${GROUP_ID} ${DOCKER_USER} && \
+ adduser -D -u ${USER_ID} -G ${DOCKER_USER} ${DOCKER_USER} && \
# Add user to same docker group as in docker_host to be able to use docker driver as sudo
groupadd docker-host -g ${DOCKER_GROUP_ID} && \
- usermod -aG ${DOCKER_GROUP_ID} molecule \
+ usermod -aG ${DOCKER_GROUP_ID} ${DOCKER_USER} \
;fi
-USER molecule
+USER ${DOCKER_USER}
+
diff --git a/ansible/test/molecule-docker/build.sh b/ansible/test/molecule-docker/build.sh
index 0b65f2a7..b613e466 100755
--- a/ansible/test/molecule-docker/build.sh
+++ b/ansible/test/molecule-docker/build.sh
@@ -20,6 +20,7 @@
SCRIPT_DIR=$(dirname "${0}")
LOCAL_PATH=$(readlink -f "$SCRIPT_DIR")
+if [ $(id -u ${USER}) -eq "0" ]; then DOCKER_USER="root"; else DOCKER_USER="molecule"; fi
set -e
@@ -27,6 +28,7 @@ docker build \
--build-arg USER_ID=$(id -u ${USER}) \
--build-arg GROUP_ID=$(id -g ${USER}) \
--build-arg DOCKER_GROUP_ID=$(getent group docker | cut -f 3 -d ':') \
+ --build-arg DOCKER_USER=${DOCKER_USER} \
-t molecule-dev:2.20.0 \
${LOCAL_PATH}