diff --git a/.misc/deploy.sh b/.misc/deploy.sh new file mode 100755 index 0000000..acc6d8e --- /dev/null +++ b/.misc/deploy.sh @@ -0,0 +1,29 @@ +#!/usr/bin/env bash + +# Automatic deployer script +# This script is meant to be run on solar.coala.io! + +WORKDIR=/opt/solar +NGINX_COMPOSE_DIR=$WORKDIR/nginx + +cd $WORKDIR + +echo "Pulling changes ..." +git pull + +CHANGED_INSTANCES=$(git diff-tree --no-commit-id --name-only -r HEAD | \ + cut -d/ -f1 | uniq) + +for instance in $CHANGE_INSTANCES; do + if [ -d $instance && -f "$instance/docker-compose.yml" ]; then + cd $WORKDIR/$instance + echo "Updating $instance ..." + docker-compose up --force-recreate -d + if [ $? -ne 0 ]; then + echo "An error has occured while updating $instance!" + exit 1 + fi + fi +done + +echo "Successfully Deployed! Have a nice day!"