From da0fb3dc36ca5efc028940e8d56bc0997d0e0591 Mon Sep 17 00:00:00 2001 From: Sameer Naik Date: Sun, 16 Aug 2015 12:28:38 +0530 Subject: [PATCH] entrypoint.sh: moved user mapping code to a function --- entrypoint.sh | 24 +++++++++++++----------- 1 file changed, 13 insertions(+), 11 deletions(-) diff --git a/entrypoint.sh b/entrypoint.sh index 2cae815..30d8f85 100755 --- a/entrypoint.sh +++ b/entrypoint.sh @@ -24,6 +24,18 @@ REPLICATION_PORT=${REPLICATION_PORT:-5432} # set this env variable to "require" to enable encryption and "verify-full" for verification. PSQL_SSLMODE=${PSQL_SSLMODE:-disable} +map_postgres_uid() { + USERMAP_ORIG_UID=$(id -u ${PG_USER}) + USERMAP_ORIG_GID=$(id -g ${PG_USER}) + USERMAP_GID=${USERMAP_GID:-${USERMAP_UID:-$USERMAP_ORIG_GID}} + USERMAP_UID=${USERMAP_UID:-$USERMAP_ORIG_UID} + if [[ ${USERMAP_UID} != ${USERMAP_ORIG_UID} ]] || [[ ${USERMAP_GID} != ${USERMAP_ORIG_GID} ]]; then + echo "Adapting uid and gid for ${PG_USER}:${PG_USER} to $USERMAP_UID:$USERMAP_GID" + groupmod -g ${USERMAP_GID} ${PG_USER} + sed -i -e "s/:${USERMAP_ORIG_UID}:${USERMAP_GID}:/:${USERMAP_UID}:${USERMAP_GID}:/" /etc/passwd + fi +} + create_data_dir() { mkdir -p ${PG_HOME} chmod -R 0700 ${PG_HOME} @@ -43,17 +55,7 @@ create_run_dir() { chown ${PG_USER}:${PG_USER} ${PG_RUNDIR} } -## Adapt uid and gid for ${PG_USER}:${PG_USER} -USERMAP_ORIG_UID=$(id -u ${PG_USER}) -USERMAP_ORIG_GID=$(id -g ${PG_USER}) -USERMAP_GID=${USERMAP_GID:-${USERMAP_UID:-$USERMAP_ORIG_GID}} -USERMAP_UID=${USERMAP_UID:-$USERMAP_ORIG_UID} -if [[ ${USERMAP_UID} != ${USERMAP_ORIG_UID} ]] || [[ ${USERMAP_GID} != ${USERMAP_ORIG_GID} ]]; then - echo "Adapting uid and gid for ${PG_USER}:${PG_USER} to $USERMAP_UID:$USERMAP_GID" - groupmod -g ${USERMAP_GID} ${PG_USER} - sed -i -e "s/:${USERMAP_ORIG_UID}:${USERMAP_GID}:/:${USERMAP_UID}:${USERMAP_GID}:/" /etc/passwd -fi - +map_postgres_uid create_data_dir create_log_dir create_run_dir