diff --git a/scripts/website_push.sh b/scripts/website_push.sh index 1371eebb6b..dbd070d659 100755 --- a/scripts/website_push.sh +++ b/scripts/website_push.sh @@ -1,17 +1,38 @@ #!/bin/bash +# Set the tmpdir +if [ -z "$TMPDIR" ]; then + TMPDIR="/tmp" +fi + +# Create a temporary build dir and make sure we clean it up. For +# debugging, comment out the trap line. +DEPLOY=`mktemp -d $TMPDIR/consul-www-XXXXXX` +trap "rm -rf $DEPLOY" INT TERM EXIT + # Get the parent directory of where this script is. SOURCE="${BASH_SOURCE[0]}" while [ -h "$SOURCE" ] ; do SOURCE="$(readlink "$SOURCE")"; done DIR="$( cd -P "$( dirname "$SOURCE" )/.." && pwd )" +# Copy into tmpdir +cp -R $DIR/website/ $DEPLOY/ + # Change into that directory -cd $DIR +pushd $DEPLOY &>/dev/null + +# Ignore some stuff +touch .gitignore +echo ".sass-cache" >> .gitignore +echo "build" >> .gitignore + +# Add everything +git init -q . +git add . +git commit -q -m "Deploy by $USER" -# Add the git remote if it doesn't exist -git remote | grep heroku || { - git remote add heroku git@heroku.com:consul-www.git -} +git remote add heroku git@heroku.com:consul-www.git +git push -f heroku master -# Push the subtree (force) -git push heroku `git subtree split --prefix website master`:master --force +# Go back to our root +popd &>/dev/null