#!/bin/bash #myname=`basename $0 .sh` myname=`basename $0` myname=${myname%%.*} # Pour Mac OS recent (10.10, Yosemite), la syntaxe du SED est differente # Il faut donc faire une copie de ce fichier et transformer les instructions sed a l'interieur # Pour cela, il suffit d'executer ces 2 lignes : # cp ce_script.sh ce_script_macosx.sh # sed -e "s/ -i / -i '' /" -i '' ce_script_macosx.sh if [ ! -f ../../config/app.php ] ; then echo "Vous devez executer ce script depuis le dossier database/update/" exit 1 fi # Get login, pass, dbname, and hostname username=$(grep "/\*d\*/'username'" ../../config/app.php | cut -d"'" -f4) password=$(grep "/\*d\*/'password'" ../../config/app.php | cut -d"'" -f4) database=$(grep "/\*d\*/'database'" ../../config/app.php | cut -d"'" -f4) host=$(grep "/\*d\*/'host'" ../../config/app.php | cut -d"'" -f4) #cp -p ./script_sql/db-update-2016-07-01-irap.sql ./script_sql/db-update-2016-07-01-irap-build.sql cp -p ./script_sql/$myname.sql ./script_sql/$myname-build.sql # Execute sql update script sed -e "s/database/$database/" -i ./script_sql/$myname-build.sql mysql --user=$username --password=$password -h $host < ./script_sql/$myname-build.sql # Delete cakephp cache (-f avoids warning if no file) sudo rm -f ../../tmp/cache/models/* sudo rm -f ../../tmp/cache/persistent/* # Faire ca aussi si ca suffit pas... #sudo chmod -R 777 ../../tmp #sudo chmod -R 777 ../../vendor #sudo chmod -R 777 ../../webroot