mirror of
https://github.com/GSA/notifications-api.git
synced 2025-12-16 10:12:32 -05:00
34 lines
667 B
Bash
Executable File
34 lines
667 B
Bash
Executable File
#!/usr/bin/env bash
|
|
|
|
set -eo pipefail; [[ "$TRACE" ]] && set -x
|
|
|
|
if [[ "$(id -u)" -ne 0 ]]; then
|
|
echo 'docker-entrypoint requires root' >&2
|
|
exit 1
|
|
fi
|
|
|
|
if [ -z "$UID" ] || [ "$UID" = "0" ]; then
|
|
echo "UID must be specified as a positive integer"
|
|
exit 1
|
|
fi
|
|
|
|
if [ -z "$GID" ] || [ "$GID" = "0" ]; then
|
|
echo "GID must be specified as positive integer"
|
|
exit 1
|
|
fi
|
|
|
|
USER=$(id -un $UID 2>/dev/null || echo "hostuser")
|
|
GROUP=$(getent group $GID | cut -d: -f1 || echo "hostgroup")
|
|
|
|
if [ "$USER" = "hostuser" ]; then
|
|
useradd -u $UID -s /bin/bash -m $USER
|
|
fi
|
|
|
|
if [ "$GROUP" = "hostgroup" ]; then
|
|
groupadd -g $GID $GROUP
|
|
fi
|
|
|
|
usermod -g $GROUP $USER
|
|
|
|
exec "$@"
|