29 lines
843 B
Bash
29 lines
843 B
Bash
#!/bin/sh
|
|
|
|
set -e
|
|
|
|
load_secret() {
|
|
env_var="$1"
|
|
secret_file="$2"
|
|
|
|
if [ -f "$secret_file" ]; then
|
|
value=$(cat "$secret_file")
|
|
if [ -z "$value" ]; then
|
|
echo >&2 "error: $secret_file is empty"
|
|
exit 1
|
|
fi
|
|
export "$env_var"="$value"
|
|
else
|
|
echo >&2 "[info] didn't set $env_var because $secret_file does not exist. If you don't use the secret or it is no secret at all you can safely ignore this message."
|
|
fi
|
|
}
|
|
|
|
# load every env-var that ends on _FILE
|
|
for var in $(env | grep "_FILE="); do
|
|
key=$(echo "$var" | sed 's/_FILE=.*//')
|
|
value=$(echo "$var" | sed 's/.*_FILE=//')
|
|
load_secret "$key" "$value"
|
|
done
|
|
|
|
# upstream has no entrypoint https://github.com/directus/directus/blob/main/Dockerfile
|
|
node cli.js bootstrap && pm2-runtime start ecosystem.config.cjs |