#!/bin/bash export ENTRYPOINT_VERSION=v2 export INIT_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 export "$var"="$val" unset "$fileVar" } setup_db() { file_env "DB_PASSWORD" file_env "CRYPTO_KEY" file_env "SECRET_KEY" file_env "LDAP_BIND_PASSWORD" echo "Creating tables..." flask database create-tables && flask db stamp if [ $? -ne 0 ]; then echo -e "\033[0;31m\nDatabase failed to initialize please open an issue at https://git.coopcloud.tech/coop-cloud/liberaforms/issues\n" return 1 fi echo "Database setup complete. <3" }