Skip to content

Instantly share code, notes, and snippets.

@khoatran
Last active November 3, 2018 20:21
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save khoatran/f6e634d5a5d519de6b2afa11f684ceb0 to your computer and use it in GitHub Desktop.
Save khoatran/f6e634d5a5d519de6b2afa11f684ceb0 to your computer and use it in GitHub Desktop.
Bamboo deployment script
export DEPLOYMENT_FOLDER=/deployment-folder
export RELEASE_ROOT_FOLDER=$DEPLOYMENT_FOLDER/releases
export RELEASE_FOLDER=$DEPLOYMENT_FOLDER/releases/intermediate
cd $DEPLOYMENT_FOLDER/build
tar -xvf artifact.tar
rm -rf artifact.tar
cd $DEPLOYMENT_FOLDER
shopt -s dotglob
# Unzip and copy all files in artifact into the release folder
mkdir $RELEASE_FOLDER
cp -Rf build/* $RELEASE_FOLDER
cd $RELEASE_FOLDER
rm -rf storage
rm -rf .htaccess
rm -rf config/database.php
rm -rf config/app.php
# Create symlinks for shared folder / files
ln -s $DEPLOYMENT_FOLDER/shared/.htaccess .htaccess
ln -s $DEPLOYMENT_FOLDER/shared/storage storage
ln -s $DEPLOYMENT_FOLDER/shared/config/database.php config/database.php
ln -s $DEPLOYMENT_FOLDER/shared/config/app.php config/app.php
# Clear application cache
php artisan cache:clear
# Run migration (if any)
php artisan october:up
cd $RELEASE_ROOT_FOLDER
# Remove previous folder
rm -rf previous
# Backup current build
mv current previous
# Switch the intermediate folder to the curent build
mv intermediate current
# restart / reload fpm
sudo service php-fpm reload
sudo service php56-php-fpm reload
mkdir deployment-folder
cd deployment-folder
mkdir build releases shared
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment