#!/bin/bash SELF=`which $0` VAGRANT_SSH_PORT=${VAGRANT_SSH_PORT:-"2222"} PUBLIC_KEY=${PUBLIC_KEY:-"$HOME/.ssh/id_rsa.pub"} FORWARDED_PORT=${FORWARDED_PORT:-":8080"} indent() { sed "s/^/ /"; } if [[ ! $(cat ~/.ssh/config 2>/dev/null | grep dokku.me) ]]; then echo "-----> Configuring SSH to use $VAGRANT_SSH_PORT for dokku.me..." touch ~/.ssh/config echo "Host dokku.me" >> ~/.ssh/config echo " Port $VAGRANT_SSH_PORT" >> ~/.ssh/config fi echo "-----> Ensuring Vagrant is running..." cd "$(dirname $SELF)/.." && vagrant up | indent cd "$(dirname $SELF)" echo "-----> Installing SSH public keys..." cat $PUBLIC_KEY | ssh -o "StrictHostKeyChecking=no" -i ~/.vagrant.d/insecure_private_key vagrant@dokku.me "sudo gitreceive upload-key test" cat $PUBLIC_KEY | ssh -o "StrictHostKeyChecking=no" -i ~/.vagrant.d/insecure_private_key vagrant@dokku.me "sudo sshcommand acl-add dokku test" for app_path in apps/*; do app=$(basename $app_path) echo "-----> Running test deploy of $app..." ./test_deploy $app_path dokku.me $FORWARDED_PORT done