Top Banner
16

Riccardo Tempesta - Strumenti di automazione in Magento 2

Jan 08, 2017

Download

Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Riccardo Tempesta - Strumenti di automazione in Magento 2
Page 2: Riccardo Tempesta - Strumenti di automazione in Magento 2

CONTINUOUS INTEGRATION & DEVELOPMENT IN MAGENTO 2

CHE COSA SIGNIFICA E A COSA SERVE?

ü Sviluppo costanteü Gestione dei conflittiü Gestione del versioningü Gestione dei team di sviluppoü Test unitü Reportistica

Page 3: Riccardo Tempesta - Strumenti di automazione in Magento 2

CONTINUOUS INTEGRATION & DEVELOPMENT IN MAGENTO 2

CHE COSA SIGNIFICA E A COSA SERVE?ü Sempre più progetti Magento vengono sviluppati sotto forma di rolling

release.ü I progetti richiedono team di lavoro composti da molti professionisti,

spesso distribuiti su diverse sedi.ü Sono necessari strumenti di mission control per i Project Manager.ü E’ presente un alto rischio di bug di regressione.ü C’è necessità di evitare conflitti di versione con più task concorrenti.

Page 4: Riccardo Tempesta - Strumenti di automazione in Magento 2

CONTINUOUS INTEGRATION & DEVELOPMENT IN MAGENTO 2

SCENARIO TIPO

Il cliente chiede di lavorare una funzione con pianificazione a lungo termine, ma chiede anche la flessibilità di intervento per piccoli task. Chiede inoltre di essere sempre aggiornato sullo stato di avanzamento del progetto.

Il team di sviluppo deve essere in grado di intervenire nei piccoli task senza andare in conflitto con i processi a lungo termine.

Page 5: Riccardo Tempesta - Strumenti di automazione in Magento 2

CONTINUOUS INTEGRATION & DEVELOPMENT IN MAGENTO 2

STRUMENTI NECESSARIü Strumenti di coordinamento del teamü Strumenti di versioningü Procedure di automazione di deployü Strumenti di reportisticaü Test unitü Alert automaticiü Strumenti diagnostici

Page 6: Riccardo Tempesta - Strumenti di automazione in Magento 2

CONTINUOUS INTEGRATION & DEVELOPMENT IN MAGENTO 2

TECNOLOGIE (OVVERO: I MAGNIFICI 5)

ü GIT | Versioningü GITLab | Strumenti CI/CD + Report PMü Ansible | Deployü Vagrant | Sviluppo localeü Test Unit Magento 2 | Verifica funzionamento

Page 7: Riccardo Tempesta - Strumenti di automazione in Magento 2

CONTINUOUS INTEGRATION & DEVELOPMENT IN MAGENTO 2

BEST PRACTICES GIT

ü 3 branch principaliü DEV | versione sviluppo su base comuneü QA | Quality Assesmentü Master | copia di produzione

Page 8: Riccardo Tempesta - Strumenti di automazione in Magento 2

CONTINUOUS INTEGRATION & DEVELOPMENT IN MAGENTO 2

BEST PRACTICES GIT

ü Gestione dei taskü Branch separati per ogni unità logicaü Branch sempre derivati da masterü Passaggio forzato in QA prima del rilascio in master.

Page 9: Riccardo Tempesta - Strumenti di automazione in Magento 2

CONTINUOUS INTEGRATION & DEVELOPMENT IN MAGENTO 2

BEST PRACTICES DEPLOY

ü Pubblicazione in QA o masterü Creare merge con commitü Merge request su GITLabü Code review se previstaü Deploy

Page 10: Riccardo Tempesta - Strumenti di automazione in Magento 2

CONTINUOUS INTEGRATION & DEVELOPMENT IN MAGENTO 2

BEST PRACTICES DEPLOY

ü Verifica del deployü Collegare test unit alla procedura di deployü Utilizzo delle funzioni CI di GITLab: web-hook, .gitlab-ci.yml

Page 11: Riccardo Tempesta - Strumenti di automazione in Magento 2

CONTINUOUS INTEGRATION & DEVELOPMENT IN MAGENTO 2

INTEGRITA’ DEL CODICE

ü Codice sotto versioningü Possibilità di verifica

ESEMPI

ü SUPEE-5344ü Code injection

Page 12: Riccardo Tempesta - Strumenti di automazione in Magento 2

CONTINUOUS INTEGRATION & DEVELOPMENT IN MAGENTO 2

MISSION CONTROL

Con GITLab, il project manager e il lead developer potranno rapidamente:ü Verificare eventuali conflittiü Verificare bug di regressioneü Avere un report delle modifiche

Page 13: Riccardo Tempesta - Strumenti di automazione in Magento 2
Page 14: Riccardo Tempesta - Strumenti di automazione in Magento 2

CONTINUOUS INTEGRATION & DEVELOPMENT IN MAGENTO 2

BUG DIAGNOSE

Funzioni di GIT bisect collegate alle test unit per verificare il momento esatto dell'introduzionedi un bug.Modello di funzionamento OK/KOmolto semplice.

Page 15: Riccardo Tempesta - Strumenti di automazione in Magento 2

CASE STUDY | PORTALI AREA D

Page 16: Riccardo Tempesta - Strumenti di automazione in Magento 2

GRAZIEPER L’ATTENZIONE