From 25f98250cb1817ff44f31981d01fa2ee345ace49 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9gis=20Behmo?= Date: Mon, 16 Dec 2019 09:33:02 +0100 Subject: [PATCH] Fix running dev openedx image with sudo When running with `sudo`, the USERID image ARG is 0. The docker entrypoint needed to take this case into account. See: https://discuss.overhang.io/t/openedx-is-not-the-name-of-a-known-user/224/5 --- CHANGELOG.md | 1 + .../build/openedx-dev/bin/docker-entrypoint.sh | 18 ++++++++++++------ 2 files changed, 13 insertions(+), 6 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index b5eb926..2bb0823 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,7 @@ Note: Breaking changes between versions are indicated by "💥". ## Unreleased +- [Bugfix] Fix running dev image with `sudo` - [Improvement] Add `cms/lms-env-features` patches (#276) - [Feature] Add plugin subcommands - 💥[Improvement] Move ``-r/--root`` option to parent command level diff --git a/tutor/templates/build/openedx-dev/bin/docker-entrypoint.sh b/tutor/templates/build/openedx-dev/bin/docker-entrypoint.sh index 2378682..5c5831c 100644 --- a/tutor/templates/build/openedx-dev/bin/docker-entrypoint.sh +++ b/tutor/templates/build/openedx-dev/bin/docker-entrypoint.sh @@ -1,10 +1,16 @@ #!/bin/sh -e export DJANGO_SETTINGS_MODULE=$SERVICE_VARIANT.envs.$SETTINGS -# Change file permissions of mounted volumes -echo "Setting file permissions..." -find /openedx -not -path "/openedx/edx-platform/*" -not -user openedx -exec chown openedx:openedx {} \+ -echo "File permissions set." +if id -u openedx > /dev/null 2>&1; then + # Change file permissions of mounted volumes + echo "Setting file permissions for user openedx..." + find /openedx -not -path "/openedx/edx-platform/*" -not -user openedx -exec chown openedx:openedx {} \+ + echo "File permissions set." + + # Run CMD as user openedx + exec chroot --userspec="$openedx:openedx" --skip-chdir / env HOME=/openedx "$@" +else + echo "Running openedx-dev as root user" + exec "$@" +fi -# Run CMD as user openedx -exec chroot --userspec="$openedx:openedx" --skip-chdir / env HOME=/openedx "$@" \ No newline at end of file