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

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

Creare un ambiente di sviluppo PHP SYMFONY MYSQL DOCKER

Preferisco Docker a Vagrant, più leggero. Ognuno naturalmente ha le sue preferenze.
Docker lo trovo più facile e veloce da configurare.
Non conosci Docker, vai sul sito e scoprirai un tool fantastico per "virtualizzare" le macchine, anche se non è il termine corretto.
Docker crea un contenitore all'interno del tu S.O. senza però virtualizzare l'infrastruttura hardware.
A me piace sviluppare con Symfony: W Symfony2!

[update: ho trovato questa serie di post nuovi per lo sviluppo con symfony su docker
https://blog.vandenbrand.org/2016/02/03/developing-symfony-applications-with-docker-series-part-i-getting-started/
]

Setup Google Tag Manager con PrestaShop per l'e-commerce avanzato

Google Tag Manage e E-commerce Avanzato all’interno della documentazione ufficiale è descritto sia il processo che il codice di implementazione per il monitoraggio avanzato dell’e-commerce
In breve il codice da inserire deve essere un array tipo dataLayer che contiene una serie di informazioni per il monitoraggio di:
impressioni di prodotto e di categoriadettaglio di prodottocheckoutacquisto Sono presenti anche i meccanismi per il monitoraggio delle promozioni, per l’annullamento ordine e per l’aggiunta dinamica del prodotto in carrello
Nel caso del modulo BwAnalytics sono monitorati i primi 4.
Google Tag Manager L’attivazione dell’ecommerce avanzato si effettua sulla vista di Google Analytics e si impostano i nomi degli step del processo di checout mappati all’interno del codice
Limpostazione di Google Tag Manager per l’e-commerce avanzato richiede la greazione di 3 tag:
impressioni e dattagli categoria e prodottocheckout acquisto pagine prestashop coinvolte Su prestashop le pagine di…