Skip to content

Instantly share code, notes, and snippets.

@vfsoraki
Created December 26, 2019 18:13
Show Gist options
  • Save vfsoraki/9eb08209b7291384620f8d541ab91e47 to your computer and use it in GitHub Desktop.
Save vfsoraki/9eb08209b7291384620f8d541ab91e47 to your computer and use it in GitHub Desktop.
Simple deploy script for `mix release`
#!/bin/bash
set -e
SERVER=someserver
DEPLOY_PATH=/some/path
START_SCRIPT=${DEPLOY_PATH}/bin/deploy_name
RELEASE_NAME=master
RELEASE_TAR=deploy_name-${RELEASE_NAME}.tar.gz
export MIX_ENV=prod
echo 'Making release'
mix release --overwrite --version ${RELEASE_NAME} >/dev/null 2>&1
echo 'Copying release'
scp _build/${MIX_ENV}/${RELEASE_TAR} ${SERVER}:${DEPLOY_PATH}
echo 'Starting release'
ssh ${SERVER} "cd ${DEPLOY_PATH} && ${START_SCRIPT} stop && tar zxf ${RELEASE_TAR} && ${START_SCRIPT} daemon" >/dev/null 2>&1
echo 'Done'
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment