#!/bin/sh git_dir=$PWD while [ ! -d .git ]; do git_dir=$(dirname "${git_dir}") done cd "${git_dir}" || exit if [ ! -f ./docker/bootstrap/bootstrap.env ]; then printf "bootstrap.env missing! Please run the bootstrap_certificates script.\n" exit 1 fi . ./docker/bootstrap/bootstrap.env while :; do printf "DBMS (postgres|mariadb): " && read -r dbms [ $(echo "${dbms}" | grep -E 'postgres|mariadb') ] && break done printf "Social database name: " && read -r db [ "${dbms}" = 'mariadb' ] && printf "Database user: " && read -r user printf "Database password: " && read -r password printf "Sitename: " && read -r sitename printf "Admin nickname: " && read -r admin_nick printf "Admin password: " && read -r admin_password while :; do printf "Site profile (public|private|community|single_user): " && read -r profile [ $(echo "${profile}" | grep -E 'public|private|community|single_user') ] && break done mkdir -p ./docker/db if [ "${dbms}" = 'mariadb' ]; then printf "DB root password: " && read -r db_root_password cat > ./docker/db/db.env <<EOF DBMS=${dbms} MYSQL_ROOT_PASSWORD=${db_root_password} EOF database_url="DATABASE_URL=mysql://${user}:${password}@db:3306/${db}" else cat > ./docker/db/db.env <<EOF DBMS=${dbms} POSTGRES_USER=postgres POSTGRES_PASSWORD=${password} EOF user='postgres' database_url="DATABASE_URL=postgresql://${user}:${password}@db:5432/${db}" fi echo "${database_url}" >> .env.local printf "Mailer dsn: " && read -r mailer_dsn mkdir -p ./docker/social cat > ./docker/social/social.env <<EOF SOCIAL_DBMS="${dbms}" SOCIAL_DB="${db}" SOCIAL_USER="${user}" SOCIAL_PASSWORD="${password}" SOCIAL_DOMAIN="${domain}" SOCIAL_SITENAME="${sitename}" SOCIAL_ADMIN_NICK="${admin_nick}" SOCIAL_ADMIN_PASSWORD="${admin_password}" SOCIAL_ADMIN_EMAIL="${email}" SOCIAL_SITE_PROFILE="${profile}" MAILER_DSN="${mailer_dsn}" EOF