Passa ai contenuti principali

Prestashop: deploy automatico


Per i nostri clienti abbiamo messo in piedi il deploy automatico del sistema da locale al server remoto.
Il deploy automatico permette di semplificare la messa in produzione dell'e-commerce in quanto lavorando in locale si ha maggiore velocità di risposta e soprattutto si ha la possibilità di effettuare prove e test velocemente.
Per il deploy dei files abbiamo utilizzato rsync escludendo le direcory che non servono come la cache e etc...
Per il deploy del db abbiamo effettuato il dump del db, spostato su server il dump e ricostruito completamente il db.
Inoltre abbiamo anche effettuato l'aggiornamento della tabella ps_configuration con il dominio corretto e non più relativo al server locale.
Questo è lo script bash che abbiamo creato:

#!/bin/bash

# adattare queste tre variabili
ssh_user='<dominio.it etc...>'
server='<host remoto>'
dir='<directory fisica nell'host remoto. es: /var/www/vhosts/xxxxx/httpdocs/>'
ssh_port='<porta rsync>'

dblocale_pw="<password>"
dblocale_nome="<nome db>"

dbremoto_nome="<nome db>"
dbremoto_user="<nome user>"
dbremoto_pw="<password>"


#dump del db locale
mysqldump --add-drop-table -h localhost -u root -p$dblocale_pw $dblocale_nome > sql/dblocalhostdump.sql


/usr/bin/rsync -azC --force --delete --progress --exclude-from=config/rsync_exclude.txt -e "ssh -p$ssh_port" . $ssh_user@$server:$dir

ssh $ssh_user@$server -p$ssh_port "cd httpdocs; mysql -h $server $dbremoto_nome -u $dbremoto_user -p$dbremoto_pw < sql/dblocalhostdump.sql; rm -R sql;"

mysql -h $server -u $dbremoto_user -p$dbremoto_pw $dbremoto_nome <<EOFMYSQL
update ps_configuration set value = '$dominio' where name = 'PS_SHOP_DOMAIN' or name = 'PS_SHOP_DOMAIN_SSL';
EOFMYSQL

Commenti

  1. Installing prestashop to your shopping cart is very easy you just need to follow your hosting service instructions and you are good to. prestashop themes are indeed the best template you can ever use.

    RispondiElimina

Posta un commento

Post popolari in questo blog

install language on osTicket

this simple guide aims you to install and configure your language on osTicket i written this guide based on forum post http://osticket.com/forum/discussion/76252/installing-language-pack

Ubuntu: La propria installazione di python è danneggiata. Correggere il collegamento simbolico «/usr/bin/python».

Questa è un problema, soprattutto se si vuole aggiornare la distribuzione.+ Dì la verità: hai pacioccato con le versioni di python vero? Volevi usare la 3.5 e non 2.7 e così hai aggiunto alternatives o manipolato il symlink. No? io si. Così in fase di aggiornamento mi sono bloccato. Allora per risolverlo ecco la soluzione: elimina tuttle le eventuali alternative : sudo update-alternatives –remove-all python crea il symlink alla 2.7 sudo ln -s /usr/bin/python3.5 /usr/bin/python aggiorna i permessi: sudo chmod 7777 /usr/bin/python Ora funziona tutto. La soluzione l’ho scovata qui: https://askubuntu.com/questions/448926/do-release-upgrade-python-install-is-corrupted