overleaf/server-ce/init_scripts/00_regen_sharelatex_secrets.sh
Jakob Ackermann 3170a27fb5 [init] bail out in case the db access fails (#123)
* [init] bail out in case the db access fails

Signed-off-by: Jakob Ackermann <das7pad@outlook.com>

* [misc] bail out in case any command in an init_script failed

NOTE: sh does not support `-o pipefail`.

Signed-off-by: Jakob Ackermann <das7pad@outlook.com>
2020-02-13 13:33:55 +01:00

20 lines
751 B
Bash
Executable file

#!/bin/bash
set -e -o pipefail
# generate secrets and defines them as environment variables
# https://github.com/phusion/baseimage-docker#centrally-defining-your-own-environment-variables
WEB_API_PASSWORD_FILE=/etc/container_environment/WEB_API_PASSWORD
CRYPTO_RANDOM_FILE=/etc/container_environment/CRYPTO_RANDOM
if [ ! -f "$WEB_API_PASSWORD_FILE" ] || [ ! -f "$CRYPTO_RANDOM_FILE" ]; then
echo "generating random secrets"
SECRET=$(dd if=/dev/urandom bs=1 count=32 2>/dev/null | base64 -w 0 | rev | cut -b 2- | rev | tr -d '\n+/')
echo ${SECRET} > ${WEB_API_PASSWORD_FILE}
SECRET=$(dd if=/dev/urandom bs=1 count=32 2>/dev/null | base64 -w 0 | rev | cut -b 2- | rev | tr -d '\n+/')
echo ${SECRET} > ${CRYPTO_RANDOM_FILE}
fi