diff --git a/abra.sh b/abra.sh index 76461a6..2c0906c 100644 --- a/abra.sh +++ b/abra.sh @@ -1,4 +1,4 @@ -export ENTRYPOINT_CONF_VERSION=v8 +export ENTRYPOINT_CONF_VERSION=v9 abra_backup_app() { _abra_backup_dir "app:/home/hackmd/app/public/uploads/" diff --git a/entrypoint.sh.tmpl b/entrypoint.sh.tmpl index bcf8e07..b6fc9cf 100644 --- a/entrypoint.sh.tmpl +++ b/entrypoint.sh.tmpl @@ -1,36 +1,38 @@ #!/usr/bin/env bash file_env() { - # 3wc: Load $VAR_FILE into $VAR - useful for secrets. See - # https://medium.com/@adrian.gheorghe.dev/using-docker-secrets-in-your-environment-variables-7a0609659aab - local var="$1" - local fileVar="${var}_FILE" - local def="${2:-}" + # 3wc: Load $VAR_FILE into $VAR - useful for secrets. See + # https://medium.com/@adrian.gheorghe.dev/using-docker-secrets-in-your-environment-variables-7a0609659aab + local var="$1" + local fileVar="${var}_FILE" + local def="${2:-}" - if [ "${!var:-}" ] && [ "${!fileVar:-}" ]; then - echo >&2 "error: both $var and $fileVar are set (but are exclusive)" - exit 1 - fi - local val="$def" - if [ "${!var:-}" ]; then - val="${!var}" - elif [ "${!fileVar:-}" ]; then - val="$(< "${!fileVar}")" - fi - export "$var"="$val" - unset "$fileVar" + if [ "${!var:-}" ] && [ "${!fileVar:-}" ]; then + echo >&2 "error: both $var and $fileVar are set (but are exclusive)" + exit 1 + fi + local val="$def" + if [ "${!var:-}" ]; then + val="${!var}" + elif [ "${!fileVar:-}" ]; then + val="$(< "${!fileVar}")" + fi + export "$var"="$val" + unset "$fileVar" } load_vars() { - file_env "CMD_DB_PASSWORD" - file_env "CMD_OAUTH2_CLIENT_SECRET" + file_env "CMD_DB_PASSWORD" + file_env "CMD_OAUTH2_CLIENT_SECRET" } main() { - set -eu + set -eu - load_vars - mkdir "/hedgedoc/.npm" && chown -R 10000:65534 "/hedgedoc/.npm" && chmod "u+rwx" "/hedgedoc/.npm" + load_vars + mkdir -p "/hedgedoc/.npm" && \ + chown -R 10000:65534 "/hedgedoc/.npm" && \ + chmod "u+rwx" "/hedgedoc/.npm" } main @@ -39,10 +41,10 @@ export CMD_DB_URL=postgres://$CMD_DB_USER:$CMD_DB_PASSWORD@$CMD_DB_HOST:5432/$CM # 3wc: `source /docker-entrypoint2.sh -e` to load CMD_DB_URL for CLI scripts if [ ! "${1-}" == "-e" ]; then - # 3wc: upstream ENTRYPOINT - # https://github.com/hedgedoc/container/blob/master/alpine/Dockerfile - mkdir -p "/hedgedoc/.npm" && chown -R 10000:65534 "/hedgedoc/.npm" - /usr/local/bin/docker-entrypoint.sh npm start + # 3wc: upstream ENTRYPOINT + # https://github.com/hedgedoc/container/blob/master/alpine/Dockerfile + mkdir -p "/hedgedoc/.npm" && chown -R 10000:65534 "/hedgedoc/.npm" + /usr/local/bin/docker-entrypoint.sh npm start fi set +eu