77# Allow sensitive settings to be defined in a file
88# in order to support Docker secrets
99if [ -n " ${POSTGRES_PASSWORD_FILE} " ]; then
10+ if [ ! -r " $POSTGRES_PASSWORD_FILE " ]; then
11+ echo " Error: Password file '$POSTGRES_PASSWORD_FILE ' not found or not readable" >&2
12+ exit 1
13+ fi
1014 POSTGRES_PASSWORD=$( cat " $POSTGRES_PASSWORD_FILE " )
1115 export POSTGRES_PASSWORD
1216fi
1317
1418if [ -n " ${REDIS_PASSWORD_FILE} " ]; then
19+ if [ ! -r " $REDIS_PASSWORD_FILE " ]; then
20+ echo " Error: Password file '$REDIS_PASSWORD_FILE ' not found or not readable" >&2
21+ exit 1
22+ fi
1523 REDIS_PASSWORD=$( cat " $REDIS_PASSWORD_FILE " )
1624 export REDIS_PASSWORD
1725fi
@@ -22,16 +30,28 @@ if [ -z "$CLIENT_MAX_BODY_SIZE" ]; then
2230fi
2331
2432if [ -n " ${WEBLATE_ADMIN_PASSWORD_FILE} " ]; then
33+ if [ ! -r " $WEBLATE_ADMIN_PASSWORD_FILE " ]; then
34+ echo " Error: Password file '$WEBLATE_ADMIN_PASSWORD_FILE ' not found or not readable" >&2
35+ exit 1
36+ fi
2537 WEBLATE_ADMIN_PASSWORD=$( cat " $WEBLATE_ADMIN_PASSWORD_FILE " )
2638 export WEBLATE_ADMIN_PASSWORD
2739fi
2840
2941if [ -n " ${WEBLATE_EMAIL_HOST_PASSWORD_FILE} " ]; then
42+ if [ ! -r " $WEBLATE_EMAIL_HOST_PASSWORD_FILE " ]; then
43+ echo " Error: Password file '$WEBLATE_EMAIL_HOST_PASSWORD_FILE ' not found or not readable" >&2
44+ exit 1
45+ fi
3046 WEBLATE_EMAIL_HOST_PASSWORD=$( cat " $WEBLATE_EMAIL_HOST_PASSWORD_FILE " )
3147 export WEBLATE_EMAIL_HOST_PASSWORD
3248fi
3349
3450if [ -n " ${WEBLATE_AUTH_LDAP_BIND_PASSWORD_FILE} " ]; then
51+ if [ ! -r " $WEBLATE_AUTH_LDAP_BIND_PASSWORD_FILE " ]; then
52+ echo " Error: Password file '$WEBLATE_AUTH_LDAP_BIND_PASSWORD_FILE ' not found or not readable" >&2
53+ exit 1
54+ fi
3555 WEBLATE_AUTH_LDAP_BIND_PASSWORD=$( cat " $WEBLATE_AUTH_LDAP_BIND_PASSWORD_FILE " )
3656 export WEBLATE_AUTH_LDAP_BIND_PASSWORD
3757fi
@@ -248,7 +268,10 @@ esac
248268
249269if [ $VERSION_CHECK -eq 1 ]; then
250270 # Fetch server version
251- PGVERSION=$( psql -h " $POSTGRES_HOST " -p " $POSTGRES_PORT " -d " ${POSTGRES_DB:- $POSTGRES_DATABASE } " -U " $POSTGRES_USER " -t -A -c ' SHOW server_version_num;' )
271+ PGVERSION=$( psql -h " $POSTGRES_HOST " -p " $POSTGRES_PORT " -d " ${POSTGRES_DB:- $POSTGRES_DATABASE } " -U " $POSTGRES_USER " -t -A -c ' SHOW server_version_num;' ) || {
272+ >&2 echo " Failed to connect to PostgreSQL to determine server version"
273+ exit 1
274+ }
252275
253276 unset PGPASSWORD
254277
@@ -384,7 +407,13 @@ set_real_ip_from ::/0;
384407 # Calculate number of processes, at least 2, at most 4, depending on CPU cores
385408 if [ -z " $WEBLATE_WORKERS " ]; then
386409 PROCESSORS=$( nproc)
387- WEBLATE_WORKERS=$(( PROCESSORS < 2 ? 2 : PROCESSORS > 4 ? 4 : PROCESSORS))
410+ if [ " $PROCESSORS " -lt 2 ]; then
411+ WEBLATE_WORKERS=2
412+ elif [ " $PROCESSORS " -gt 4 ]; then
413+ WEBLATE_WORKERS=4
414+ else
415+ WEBLATE_WORKERS=" $PROCESSORS "
416+ fi
388417 echo " Auto-scaled to $WEBLATE_WORKERS processes, adjust by setting WEBLATE_WORKERS"
389418 fi
390419
0 commit comments