48 lines
989 B
Bash
48 lines
989 B
Bash
export CORE_ENTRYPOINT_CONF_VERSION=v5
|
|
export MAILMAN_EXTRA_CFG_VERSION=v1
|
|
export NGINX_CONF_VERSION=v1
|
|
export SETTINGS_LOCAL_VERSION=v2
|
|
export WEB_ENTRYPOINT_CONF_VERSION=v1
|
|
|
|
|
|
file_env() {
|
|
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
|
|
|
|
declare -x -g "$var"="$val"
|
|
unset "$fileVar"
|
|
}
|
|
|
|
environment() {
|
|
file_env "DATABASE_PASSWORD"
|
|
file_env "HYPERKITTY_API_KEY"
|
|
file_env "MAILMAN_REST_PASSWORD"
|
|
file_env "SECRET_KEY"
|
|
|
|
declare -x -g "DATABASE_URL"="postgres://${DATABASE_USER}:${DATABASE_PASSWORD}@${DATABASE_HOST}/${DATABASE_NAME}"
|
|
}
|
|
|
|
shell() {
|
|
## Run a shell with proper environment
|
|
environment
|
|
bash $@
|
|
}
|
|
|
|
manage() {
|
|
environment
|
|
python3 manage.py $@
|
|
}
|