forked from PostgREST/postgrest-heroku
-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathenv-to-config
54 lines (48 loc) · 1.05 KB
/
env-to-config
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
#!/bin/bash
CONF_PATH="$2"
#available config options
config_settings=(
db-uri
db-schema
db-anon-role
db-pool
db-pool-timeout
db-extra-search-path
server-host
server-port
server-unix-socket
server-unix-socket-mode
openapi-server-proxy-uri
server-proxy-uri
jwt-secret
jwt-aud
secret-is-base64
max-rows
pre-request
role-claim-key
raw-media-types
)
for conf in "${config_settings[@]}"; do
var=`echo ${conf^^} | tr - _`
val="${!var:-}"
if [ "$val" ]; then
if [[ $val =~ [^0-9] ]]; then
# non-numbers must be quoted
echo "non numbers"
echo "${conf}=\"${val}\""
echo "${conf}=\"${val}\"" >> $CONF_PATH
elif [[ $conf == "db-schema" ]]; then
echo "schema match"
echo "${conf}=\"${val}\""
echo "${conf}=\"${val}\"" >> $CONF_PATH
else
echo "else"
echo "${conf}=${val}"
echo "${conf}=${val}" >> $CONF_PATH
fi
fi
done
# Bind to correct host and port for Heroku
echo "server-host=\"0.0.0.0\"" >> $CONF_PATH
echo "server-port=${PORT}" >> $CONF_PATH
exec "$@"