Skip to content

Instantly share code, notes, and snippets.

@moradi-morteza
Last active March 20, 2021 12:12
Show Gist options
  • Save moradi-morteza/04d9d6d6039a8ee6c173cb8ac94f06ff to your computer and use it in GitHub Desktop.
Save moradi-morteza/04d9d6d6039a8ee6c173cb8ac94f06ff to your computer and use it in GitHub Desktop.
[bash larave]
#!/bin/sh
PROJECT_NAME="asas-server"
# run this script inside public_html folder.
# 1- clone asas-server from github [ssh key must exist]
rm -rf ${PROJECT_NAME}
git clone git@github.com:mabnagroup/${PROJECT_NAME}.git
if [ $? -eq 0 ]; then
echo -e "\n Clone Successfully Done.\n"
else
echo -e "\n Clone Failed.\n"
return 1
fi
# 2- go to project
cd $PROJECT_NAME
# 3- install composer
composer install
if [ $? -eq 0 ]; then
echo -e "\n Composer Installed Successfully.\n"
else
echo -e "\n Composer Install Failed.\n"
return 1
fi
# 4- install npm
npm install
if [ $? -eq 0 ]; then
echo -e "\n Npm Installed Successfully.\n"
else
echo -e "\n Npm Install Failed.\n"
return 1
fi
# 5- create .env
cp .env.example .env
# 6- generate key
php artisan key:generate
# 7- change status .env to release mode
echo "Enter APP_DEBUG [false or true - type false for release mode] :"
read APP_DEBUG
php artisan env:set APP_DEBUG ${APP_DEBUG}
echo "APP_DEBUG set to ${APP_DEBUG}."
echo "Enter Your Target User Name [like develop]:"
read USERTARGET
echo "Target User Name set : ${USERTARGET}"
# 8- save base url from user
APP_URL=http://${USERTARGET}.asasaf.com/
php artisan env:set APP_URL $APP_URL
echo "APP_URL set to ${APP_URL}."
# 9- save database name
DB_DATABASE=${USERTARGET}_db
php artisan env:set DB_DATABASE $DB_DATABASE
echo "DB_DATABASE set to ${DB_DATABASE}."
# 10- save passpwrd database from user
DB_USERNAME=${USERTARGET}_db
php artisan env:set DB_USERNAME ${DB_USERNAME}
echo "DB_USERNAME set to ${DB_USERNAME}."
# 11- get save passpwrd database from user
DB_PASSWORD=sale2012
php artisan env:set DB_PASSWORD ${DB_PASSWORD}
echo "DB_PASSWORD set to ${DB_PASSWORD}."
# 12- up applicaiton
php artisan app:up
# 13- npm release
npm run prod
# 14- change folder permission
chmod -R 777 public
chmod -R 775 storage bootstrap/cache
# 15- for speed up
composer dumpautoload -o
php artisan route:clear
php artisan route:cache
php artisan config:clear
php artisan config:cache
php artisan optimize
# 16- back from folder
cd ..
chown -R $USERTARGET:$USERTARGET ${PROJECT_NAME}
echo -e "\n Project Successfully Runed.\n"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment