Mercurial > public > ssdt-docker
diff pilot/setup.sh @ 145:75aa7005b544
DEP-12: move comopse files to 'pilot' location
author | smith@nwoca.org |
---|---|
date | Mon, 10 Jul 2017 18:13:18 +0100 |
parents | compose3/preview/setup.sh@72f15ffc9ad2 |
children | d20c6ff9a821 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/pilot/setup.sh Mon Jul 10 18:13:18 2017 +0100 @@ -0,0 +1,113 @@ +#!/bin/bash +# Sets up a new district project based on SSDT default configuration in the current working directory. +# +# Usage: +# +# /data/preview/sampletown $ /ssdt/compose2/preview/setup.sh [usas,usps...] +# +# +# +# Will create a docker-compose.yml and .env file with default settings. +# +# +source "$(dirname "${BASH_SOURCE[0]}")/../scripts/.functions.sh" + +md5calc() { + md5sum ${1} ; +} + +md5verify() { + md5sum -c --status ${1} ; +} + +base=$(dirname "${BASH_SOURCE[0]}") +default_name=$(basename $PWD) + +args="$1$2" + +usas="" +usps="" + +if [ "$args" == "" ] || [ -z "${args##*usas*}" ] +then + usas=1 +fi + +if [ "$args" == "" ] || [ -z "${args##*usps*}" ] +then + usps=1 +fi + +echo "Preparing '$(basename $PWD)' with default USxS configuration" + +touch .env +source .env + +if [ "$COMPOSE_PROJECT_NAME" == "" ] +then + read -e -p "Enter project name: <${default_name}> " answer + project_name=${answer:-$default_name} + echo "COMPOSE_PROJECT_NAME=${project_name}" >> .env + echo "set project name in .env file" + source .env +fi + +if [ ! -e "docker-compose.yml" ] +then + create="OK" +elif [ -e ".docker-compose.md5" ]; then + md5verify ./.docker-compose.md5 && create="OK" +fi + +if [ "$create" == "OK" ] +then + echo "version: \"3.1\"" > ./docker-compose.yml + echo "services:" >> ./docker-compose.yml + + [ ! "$usas" == "" ] && cat $base/usas-services.yml >> ./docker-compose.yml + + [ ! "$usps" == "" ] && cat $base/usps-services.yml >> ./docker-compose.yml + + echo "volumes:" >> ./docker-compose.yml + + [ ! "$usas" == "" ] && echo " usasdata:" >> ./docker-compose.yml + [ ! "$usps" == "" ] && echo " uspsdata:" >> ./docker-compose.yml + + echo "" >> ./docker-compose.yml + + md5calc ./docker-compose.yml > .docker-compose.md5 + + echo "created docker-compose.yml" + +else + echo " + + Error! docker-compose.yml file has been modified or checksum missing. Can auto-apply update(s). + Move customizations to docker-compose.override.yml then delete the docker-compose.yml +" +fi + +if [ "$USAS_APPLICATIONID" == "" ] +then + read -e -p "Generate USAS and USPS integration config? <Y/n> " answer + case $answer in + y | Y | yes | YES ) answer="y";; + n | N | no | NO ) answer="n";; + *) answer="y" + esac + if [ "$answer" == "y" ] + then + usas_id=${COMPOSE_PROJECT_NAME}-usas + usas_key=$(openssl rand -hex 32) + usps_id=${COMPOSE_PROJECT_NAME}-usps + usps_key=$(openssl rand -hex 32) + echo "USAS_APPLICATIONID=${usas_id}" >> .env + echo "USAS_APIKEY=$usas_key" >> .env + echo "USPS_APPLICATIONID=${usps_id}" >> .env + echo "USPS_APIKEY=$usps_key" >> .env + echo "Created integration API keys. Enable integration modules after applications start" + fi +fi + +echo "Review or create a docker-compose.override.yml for custom settings." +