diff --git a/entrypoint b/entrypoint index 640424c..a7d779f 100644 --- a/entrypoint +++ b/entrypoint @@ -4,6 +4,17 @@ set -e ssl_dir="/opt/ssl" php_dir="/opt/ldap_user_manager" +env_file_replace() { + for env_file in $(env|grep _FILE=); do + read -a env <<< "$(echo "$env_file" | sed 's/\(.*\)_FILE=\(.*\)/\1 \2/')" + if [ -s "${env[1]}" ]; then + echo Setting "${env[0]}" from "${env[1]}" + export "${env[0]}"="$(cat "${env[1]}")" + else echo "${env[1]} does not exist or is empty. Leaving ${env[0]} unset" + fi + done +} + if [ ! "$SERVER_HOSTNAME" ]; then export SERVER_HOSTNAME="ldapusermanager.org"; fi if [ ! "$SERVER_PATH" ]; then export SERVER_PATH="/"; @@ -72,7 +83,7 @@ else echo "Generating openssl configuration" - cat <$confout + cat <$confout subjectAltName = DNS:${SERVER_HOSTNAME},IP:127.0.0.1 extendedKeyUsage = serverAuth EoCertConf @@ -145,12 +156,16 @@ fi cat /etc/apache2/sites-enabled/lum.conf +######################## +#If _FILE is set, read and export env_var from the referenced file's contents +env_file_replace + ######################## #Run Apache # first arg is `-f` or `--some-option` if [ "${1#-}" != "$1" ]; then - set -- apache2-foreground "$@" + set -- apache2-foreground "$@" fi exec "$@"