X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=entrypoint.sh;h=48df1e6fb0371736b1de622b61021c212a8e71f5;hb=71d929a55a50b4b5fa1bc6524b74f6fd5dab814c;hp=dd55cdbb5ed05827ed389ca5a266bfd48bf651a9;hpb=25b6367aa14a6aefa842f70dc208fdb3e11f6e06;p=github%2Fbastienwirtz%2Fhomer.git diff --git a/entrypoint.sh b/entrypoint.sh index dd55cdb..48df1e6 100644 --- a/entrypoint.sh +++ b/entrypoint.sh @@ -1,15 +1,18 @@ #!/bin/sh -# Ensure default assets are present. -while true; do echo n; done | cp -Ri /www/default-assets/* /www/assets/ &> /dev/null +PERMISSION_ERROR="Check assets directory permissions & docker user or skip default assets install by setting the INIT_ASSETS env var to 0" -# Ensure compatibility with previous version (config.yml was in the root directory) -if [ -f "/www/config.yml" ]; then - yes n | cp -i /www/config.yml /www/assets/ &> /dev/null -fi +# Default assets & exemple configuration installation if possible. +if [[ "${INIT_ASSETS}" == "1" ]] && [[ ! -f "/www/assets/config.yml" ]]; then + echo "No configuration found, installing default config & assets" + if [[ ! -w "/www/assets/" ]]; then echo "Assets directory not writable. $PERMISSION_ERROR" && exit 1; fi + + while true; do echo n; done | cp -Ri /www/default-assets/* /www/assets/ &> /dev/null + if [[ $? -ne 0 ]]; then echo "Fail to copy default assets. $PERMISSION_ERROR" && exit 1; fi -# Install default config if no one is available. -yes n | cp -i /www/default-assets/config.yml.dist /www/assets/config.yml &> /dev/null + yes n | cp -i /www/default-assets/config.yml.dist /www/assets/config.yml &> /dev/null + if [[ $? -ne 0 ]]; then echo "Fail to copy default config file. $PERMISSION_ERROR" && exit 1; fi +fi -chown -R $UID:$GID /www/assets/* -exec su-exec $USER:$GROUP darkhttpd /www/ --no-listing --port "$PORT" +echo "Starting webserver" +lighttpd -D -f /lighttpd.conf