forked from GNUsocial/gnu-social
		
	
		
			
				
	
	
		
			77 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			77 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
| #!/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
 |