SlideShare a Scribd company logo
1 of 33
Download to read offline
Docker, your best ally to migrate
& upgrading your Drupal
Alejandro Gómez - @agomezmoron
#DrupalDevDays 2017
First of all! A selfie with you!
#DrupalDevDays / @drupaldevdays @agomezmoron
About me
#DrupalDevDays / @drupaldevdays @agomezmoron
agomezmoron.info.yml
name: Alejandro Gómez
description: “QA & Tech lover”
package: #DrupalDevDays
works_on:
- company: { name: @ladrupalera by @emergya, role: QA & Team lead }
- company: { name: @EPSUPO, role: QA teacher }
type: Non-stop learner
core: DDD.2017
community: @SevillaQA organizer
Roadmap
● Introduction
● Is updating important?
● What do we need?
● The update approach
● How can I automate it?
#DrupalDevDays / @drupaldevdays @agomezmoron
Roadmap
● Introduction
● Is updating important?
● What do we need?
● The update approach
● How can I automate it?
#DrupalDevDays / @drupaldevdays @agomezmoron
● Learning about how to keep our system updated safety.
● Learning some useful procedures & tools :).
Introduction
#DrupalDevDays / @drupaldevdays @agomezmoron
Roadmap
● Introduction
● Is updating important?
● What do we need?
● The update approach
● How can I automate it?
#DrupalDevDays / @drupaldevdays @agomezmoron
@agomezmoron#DrupalDevDays 2017
● Security
● Fixed bugs
● Stability
Is updating important?
Roadmap
● Introduction
● Is updating important?
● What do we need?
● The update approach
● How can I automate it?
#DrupalDevDays / @drupaldevdays @agomezmoron
What do we need?
Testing tools
#DrupalDevDays / @drupaldevdays @agomezmoron
● It rocks...but can you imagine doing the process by hand?
● You should keep the core, modules, etc updated.
● What about automating the process?
What do we need?
#DrupalDevDays / @drupaldevdays @agomezmoron
Roadmap
● Introduction
● Is it important updating?
● What do we need?
● The update approach
● How can I automate it?
#DrupalDevDays / @drupaldevdays @agomezmoron
The update approach
#DrupalDevDays / @drupaldevdays @agomezmoron
1. Check core updates (security) & apply them.
2. Check contrib modules updates & apply them.
● drush up --security-only -n
○ drush pm-updatecode --security-only -y
○ drush updatedb -y
● drush upc --no-core -n
○ drush upc --no-core -y
The update approach
Core
Contrib
#DrupalDevDays / @drupaldevdays @agomezmoron
● composer update drupal/core --with-dependencies
● composer update
The update approach
Core
Contrib
#DrupalDevDays / @drupaldevdays @agomezmoron
The update approach
#DrupalDevDays / @drupaldevdays @agomezmoron
For each update, deploy a container,
apply it and run all the regression tests.
Validation
Pull Request
20170202_update
The update approach
#DrupalDevDays / @drupaldevdays @agomezmoron
PR_security_updated
20170202_security_update_code
20170202_security_update_db
The update approach
#DrupalDevDays / @drupaldevdays @agomezmoron
PR_security_updated
20170202_core_update_code
The update approach
#DrupalDevDays / @drupaldevdays @agomezmoron
PR_contrib_updated
20170202_contrib_update
Roadmap
● Introduction
● Is updating important?
● What do we need?
● The update approach
● How can I automate it?
#DrupalDevDays / @drupaldevdays @agomezmoron
@agomezmoron
How can I automate it?
Testing tools
#DrupalDevDays / @drupaldevdays
One Jenkins to rule them all!
How can I manage my dockers?
● Managing your docker images can be easy.
● What about the containers?
● What about the network bridgings, volumes...?
#DrupalDevDays / @drupaldevdays @agomezmoron
How can I manage my dockers?
#DrupalDevDays / @drupaldevdays @agomezmoron
How can I manage my dockers?
# Option 1
#DrupalDevDays / @drupaldevdays @agomezmoron
How can I manage my dockers?
# Option 2
#DrupalDevDays / @drupaldevdays @agomezmoron
How can I manage my dockers?
#DrupalDevDays / @drupaldevdays @agomezmoron
docker run -d -p 9000:9000 --privileged -v
/var/run/docker.sock:/var/run/docker.sock
portainer/portainer --name myportainer
Conclusions
#DrupalDevDays / @drupaldevdays @agomezmoron
Conclusions
#DrupalDevDays / @drupaldevdays @agomezmoron
● Updates are important but they can break your system.
● A continuous core update should be applied in our code
and all the tests should be running.
Conclusions
#DrupalDevDays / @drupaldevdays @agomezmoron
#DrupalDevDays / @drupaldevdays @agomezmoron
Thanks to...
#DrupalDevDays / @drupaldevdays @agomezmoron
Thanks to...
#DrupalDevDays / @drupaldevdays @agomezmoron
Thanks to...
Thanks!
#DrupalDevDays / @drupaldevdays @agomezmoron

More Related Content

What's hot

Yuriy Golikov, Wrike: Team of teams how to organize effective development of...
Yuriy Golikov, Wrike: Team of teams  how to organize effective development of...Yuriy Golikov, Wrike: Team of teams  how to organize effective development of...
Yuriy Golikov, Wrike: Team of teams how to organize effective development of...
Anton Anokhin
 

What's hot (20)

Building an automated css testing workflow
Building an automated css testing workflowBuilding an automated css testing workflow
Building an automated css testing workflow
 
Best practices in pair programming
Best practices in pair programmingBest practices in pair programming
Best practices in pair programming
 
Introduction of CMS Technology to the People of Tanay, Rizal Philippines
Introduction of CMS Technology to the People of Tanay, Rizal PhilippinesIntroduction of CMS Technology to the People of Tanay, Rizal Philippines
Introduction of CMS Technology to the People of Tanay, Rizal Philippines
 
Iris fullstack developer
Iris fullstack developerIris fullstack developer
Iris fullstack developer
 
Frontend Development vs Backend Development | Detailed Comparison
Frontend Development vs Backend Development | Detailed ComparisonFrontend Development vs Backend Development | Detailed Comparison
Frontend Development vs Backend Development | Detailed Comparison
 
Drupal 8 Sitebuilding with Paragraphs, Display Suite & Config Management - Dr...
Drupal 8 Sitebuilding with Paragraphs, Display Suite & Config Management - Dr...Drupal 8 Sitebuilding with Paragraphs, Display Suite & Config Management - Dr...
Drupal 8 Sitebuilding with Paragraphs, Display Suite & Config Management - Dr...
 
Power of mu plugins
Power of mu pluginsPower of mu plugins
Power of mu plugins
 
Android Hands On Training
Android Hands On TrainingAndroid Hands On Training
Android Hands On Training
 
TDD with AngularJS
TDD with AngularJSTDD with AngularJS
TDD with AngularJS
 
(some) Drupal Theming by Ryan Price
(some) Drupal Theming by Ryan Price(some) Drupal Theming by Ryan Price
(some) Drupal Theming by Ryan Price
 
Get ready for lightning ready!
Get ready for lightning ready!Get ready for lightning ready!
Get ready for lightning ready!
 
Yuriy Golikov, Wrike: Team of teams how to organize effective development of...
Yuriy Golikov, Wrike: Team of teams  how to organize effective development of...Yuriy Golikov, Wrike: Team of teams  how to organize effective development of...
Yuriy Golikov, Wrike: Team of teams how to organize effective development of...
 
DrupalGov 2017: Testing any day: guide to end to end test driven Drupal projects
DrupalGov 2017: Testing any day: guide to end to end test driven Drupal projectsDrupalGov 2017: Testing any day: guide to end to end test driven Drupal projects
DrupalGov 2017: Testing any day: guide to end to end test driven Drupal projects
 
Resume - Thomas McKyer
Resume - Thomas McKyerResume - Thomas McKyer
Resume - Thomas McKyer
 
Anti anti patterns
Anti anti patternsAnti anti patterns
Anti anti patterns
 
Joomla JLayout
Joomla JLayout Joomla JLayout
Joomla JLayout
 
Crowdlinker Engineering (year in review 2019)
Crowdlinker Engineering (year in review 2019)Crowdlinker Engineering (year in review 2019)
Crowdlinker Engineering (year in review 2019)
 
JLayout for extension developers
JLayout for extension developersJLayout for extension developers
JLayout for extension developers
 
Constantly Contributing Pretty Patches FLCD
Constantly Contributing Pretty Patches FLCDConstantly Contributing Pretty Patches FLCD
Constantly Contributing Pretty Patches FLCD
 
Mikey Ariel - My personal tech-writing agile manifesto
Mikey Ariel - My personal tech-writing agile manifestoMikey Ariel - My personal tech-writing agile manifesto
Mikey Ariel - My personal tech-writing agile manifesto
 

Viewers also liked

Introducing the UI Patterns module: use atomic UI components everywhere in Dr...
Introducing the UI Patterns module: use atomic UI components everywhere in Dr...Introducing the UI Patterns module: use atomic UI components everywhere in Dr...
Introducing the UI Patterns module: use atomic UI components everywhere in Dr...
Nuvole
 
Evan Schultz - Angular Summit - 2016
Evan Schultz - Angular Summit - 2016Evan Schultz - Angular Summit - 2016
Evan Schultz - Angular Summit - 2016
Evan Schultz
 

Viewers also liked (20)

Efficiently theming a multi-site Drupal 8 portal - Drupal Dev Days Seville 2017
Efficiently theming a multi-site Drupal 8 portal - Drupal Dev Days Seville 2017Efficiently theming a multi-site Drupal 8 portal - Drupal Dev Days Seville 2017
Efficiently theming a multi-site Drupal 8 portal - Drupal Dev Days Seville 2017
 
Introducing the UI Patterns module: use atomic UI components everywhere in Dr...
Introducing the UI Patterns module: use atomic UI components everywhere in Dr...Introducing the UI Patterns module: use atomic UI components everywhere in Dr...
Introducing the UI Patterns module: use atomic UI components everywhere in Dr...
 
¿Cómo aplicar una estrategia de Marketing efectiva basada en Drupal?
¿Cómo aplicar una estrategia de Marketing efectiva basada en Drupal?¿Cómo aplicar una estrategia de Marketing efectiva basada en Drupal?
¿Cómo aplicar una estrategia de Marketing efectiva basada en Drupal?
 
Drupal vs Wordpress
Drupal vs WordpressDrupal vs Wordpress
Drupal vs Wordpress
 
QA on drupal projects
QA on drupal projectsQA on drupal projects
QA on drupal projects
 
XML Sitemap Drupal Module
XML Sitemap Drupal ModuleXML Sitemap Drupal Module
XML Sitemap Drupal Module
 
Advanced Configuration Management with Config Split et al.
Advanced Configuration Management with Config Split et al.Advanced Configuration Management with Config Split et al.
Advanced Configuration Management with Config Split et al.
 
Drupal 8.3.0: the features are ready, are you?
Drupal 8.3.0: the features are ready, are you?Drupal 8.3.0: the features are ready, are you?
Drupal 8.3.0: the features are ready, are you?
 
Gdg ionic 2
Gdg ionic 2Gdg ionic 2
Gdg ionic 2
 
Evan Schultz - Angular Summit - 2016
Evan Schultz - Angular Summit - 2016Evan Schultz - Angular Summit - 2016
Evan Schultz - Angular Summit - 2016
 
Mobile apps with Ionic 2
Mobile apps with Ionic 2Mobile apps with Ionic 2
Mobile apps with Ionic 2
 
Information is Power
Information is PowerInformation is Power
Information is Power
 
A chatbot from scratch
A chatbot from scratchA chatbot from scratch
A chatbot from scratch
 
Angular 2 - Better or worse
Angular 2 - Better or worseAngular 2 - Better or worse
Angular 2 - Better or worse
 
Angular 2 Campus Madrid Septiembre 2016
Angular 2 Campus Madrid Septiembre 2016Angular 2 Campus Madrid Septiembre 2016
Angular 2 Campus Madrid Septiembre 2016
 
Angular 2 Essential Training
Angular 2 Essential Training Angular 2 Essential Training
Angular 2 Essential Training
 
Security for Human Beings
Security for Human BeingsSecurity for Human Beings
Security for Human Beings
 
Ionic 2: Mobile apps with the Web
Ionic 2: Mobile apps with the WebIonic 2: Mobile apps with the Web
Ionic 2: Mobile apps with the Web
 
Ionic 2 - Introduction
Ionic 2 - IntroductionIonic 2 - Introduction
Ionic 2 - Introduction
 
Ionic 2: The Power of TypeScript
Ionic 2:  The Power of TypeScriptIonic 2:  The Power of TypeScript
Ionic 2: The Power of TypeScript
 

Similar to Docker, your best ally to migrate & upgrading your Drupal - Drupal Dev Days Seville 2017

_ Drupal and the Art of Scrum _
_ Drupal and the Art of Scrum __ Drupal and the Art of Scrum _
_ Drupal and the Art of Scrum _
Ricardo Amaro
 
DrupalCampSFL OpenPublic Overview
DrupalCampSFL OpenPublic OverviewDrupalCampSFL OpenPublic Overview
DrupalCampSFL OpenPublic Overview
John Studdard
 
WebGeek AppNimbus (Nikko Bautista)
WebGeek AppNimbus (Nikko Bautista)WebGeek AppNimbus (Nikko Bautista)
WebGeek AppNimbus (Nikko Bautista)
WebGeek Philippines
 

Similar to Docker, your best ally to migrate & upgrading your Drupal - Drupal Dev Days Seville 2017 (20)

Help! I inherited a Drupal Site! - DrupalCamp Atlanta 2016
Help! I inherited a Drupal Site! - DrupalCamp Atlanta 2016Help! I inherited a Drupal Site! - DrupalCamp Atlanta 2016
Help! I inherited a Drupal Site! - DrupalCamp Atlanta 2016
 
How to Migrate Drupal 6 to Drupal 8?
How to Migrate Drupal 6 to Drupal 8?How to Migrate Drupal 6 to Drupal 8?
How to Migrate Drupal 6 to Drupal 8?
 
Conference Migrate to Drupal 8 by Leon Cros at Drupal Developer Days 2015 in ...
Conference Migrate to Drupal 8 by Leon Cros at Drupal Developer Days 2015 in ...Conference Migrate to Drupal 8 by Leon Cros at Drupal Developer Days 2015 in ...
Conference Migrate to Drupal 8 by Leon Cros at Drupal Developer Days 2015 in ...
 
Drupal migrations in 2018 - presentation at DrupalCon in Nashville
Drupal migrations in 2018 - presentation at DrupalCon in NashvilleDrupal migrations in 2018 - presentation at DrupalCon in Nashville
Drupal migrations in 2018 - presentation at DrupalCon in Nashville
 
Drupal 6 to Drupal 8 Migration
Drupal 6 to Drupal 8 MigrationDrupal 6 to Drupal 8 Migration
Drupal 6 to Drupal 8 Migration
 
Choosing Drupal as your Content Management Framework
Choosing Drupal as your Content Management FrameworkChoosing Drupal as your Content Management Framework
Choosing Drupal as your Content Management Framework
 
[Srijan Wednesday Webinars] Simplifying Migration to Drupal 8
[Srijan Wednesday Webinars] Simplifying Migration to Drupal 8[Srijan Wednesday Webinars] Simplifying Migration to Drupal 8
[Srijan Wednesday Webinars] Simplifying Migration to Drupal 8
 
DevOps is Scaling Agile too
DevOps is Scaling Agile tooDevOps is Scaling Agile too
DevOps is Scaling Agile too
 
Introducing Drupal and Drupal.Org Community in PUP QC, PH
Introducing Drupal and Drupal.Org Community in PUP QC, PHIntroducing Drupal and Drupal.Org Community in PUP QC, PH
Introducing Drupal and Drupal.Org Community in PUP QC, PH
 
Best Practices for Moving to Drupal 9
Best Practices for Moving to Drupal 9Best Practices for Moving to Drupal 9
Best Practices for Moving to Drupal 9
 
DevOpsGroup Cloud Adoption Frameworks - agile south coast
DevOpsGroup Cloud Adoption Frameworks - agile south coastDevOpsGroup Cloud Adoption Frameworks - agile south coast
DevOpsGroup Cloud Adoption Frameworks - agile south coast
 
Best Practices for Moving to Drupal 9
Best Practices for Moving to Drupal 9Best Practices for Moving to Drupal 9
Best Practices for Moving to Drupal 9
 
Drupal south 2014 - bootstrap vs foundation deathmatch - v.1.1
Drupal south 2014 - bootstrap vs foundation deathmatch - v.1.1Drupal south 2014 - bootstrap vs foundation deathmatch - v.1.1
Drupal south 2014 - bootstrap vs foundation deathmatch - v.1.1
 
Srijan's Drupal Migration Practice - an Introduction
Srijan's Drupal Migration Practice - an IntroductionSrijan's Drupal Migration Practice - an Introduction
Srijan's Drupal Migration Practice - an Introduction
 
[drupalday2017] - Cosa significa convertire un modulo da D7 a D8
[drupalday2017] - Cosa significa convertire un modulo da D7 a D8[drupalday2017] - Cosa significa convertire un modulo da D7 a D8
[drupalday2017] - Cosa significa convertire un modulo da D7 a D8
 
COSA SIGNIFICA CONVERTIRE UN MODULO DA D7 A D8
COSA SIGNIFICA CONVERTIRE UN MODULO DA D7 A D8COSA SIGNIFICA CONVERTIRE UN MODULO DA D7 A D8
COSA SIGNIFICA CONVERTIRE UN MODULO DA D7 A D8
 
_ Drupal and the Art of Scrum _
_ Drupal and the Art of Scrum __ Drupal and the Art of Scrum _
_ Drupal and the Art of Scrum _
 
DrupalCampSFL OpenPublic Overview
DrupalCampSFL OpenPublic OverviewDrupalCampSFL OpenPublic Overview
DrupalCampSFL OpenPublic Overview
 
WebGeek AppNimbus (Nikko Bautista)
WebGeek AppNimbus (Nikko Bautista)WebGeek AppNimbus (Nikko Bautista)
WebGeek AppNimbus (Nikko Bautista)
 
Website factory with domain Access: why and how& - Kiêt Trân & David Ferlay
Website factory with domain Access: why and how& - Kiêt Trân & David FerlayWebsite factory with domain Access: why and how& - Kiêt Trân & David Ferlay
Website factory with domain Access: why and how& - Kiêt Trân & David Ferlay
 

More from La Drupalera

More from La Drupalera (11)

QA en SEO: Amigos con derecho a roce - Drupalcamp 2019
QA en SEO: Amigos con derecho a roce - Drupalcamp 2019QA en SEO: Amigos con derecho a roce - Drupalcamp 2019
QA en SEO: Amigos con derecho a roce - Drupalcamp 2019
 
Consejos y trucos para cualificar una oportunidad Drupal
Consejos y trucos para cualificar una oportunidad DrupalConsejos y trucos para cualificar una oportunidad Drupal
Consejos y trucos para cualificar una oportunidad Drupal
 
Designer vs Front-end - DrupalCampES 2018 Alicante
Designer vs Front-end - DrupalCampES 2018 AlicanteDesigner vs Front-end - DrupalCampES 2018 Alicante
Designer vs Front-end - DrupalCampES 2018 Alicante
 
¡Ojo al dato!: Cómo evitar microinfartos a la gente de marketing - DrupalCamp...
¡Ojo al dato!: Cómo evitar microinfartos a la gente de marketing - DrupalCamp...¡Ojo al dato!: Cómo evitar microinfartos a la gente de marketing - DrupalCamp...
¡Ojo al dato!: Cómo evitar microinfartos a la gente de marketing - DrupalCamp...
 
PSD to HTML (Drupal) - Drupal Day Spain 2017 Cáceres
PSD to HTML (Drupal) - Drupal Day Spain 2017 CáceresPSD to HTML (Drupal) - Drupal Day Spain 2017 Cáceres
PSD to HTML (Drupal) - Drupal Day Spain 2017 Cáceres
 
Tips para posicionarte como desarrollador Drupal - Drupal Day Spain 2017 Cáceres
Tips para posicionarte como desarrollador Drupal - Drupal Day Spain 2017 CáceresTips para posicionarte como desarrollador Drupal - Drupal Day Spain 2017 Cáceres
Tips para posicionarte como desarrollador Drupal - Drupal Day Spain 2017 Cáceres
 
Tu drupal está listo… ¿lo sabe Google? - DrupalCamp 2017
Tu drupal está listo… ¿lo sabe Google? - DrupalCamp 2017Tu drupal está listo… ¿lo sabe Google? - DrupalCamp 2017
Tu drupal está listo… ¿lo sabe Google? - DrupalCamp 2017
 
¡This is drupal! - Global Training Days
¡This is drupal! - Global Training Days¡This is drupal! - Global Training Days
¡This is drupal! - Global Training Days
 
Marketing, Comunidad, Empleo y Negocio Internacional basado en Drupal
Marketing, Comunidad, Empleo y Negocio Internacional basado en DrupalMarketing, Comunidad, Empleo y Negocio Internacional basado en Drupal
Marketing, Comunidad, Empleo y Negocio Internacional basado en Drupal
 
Caso de éxito Drupal - Procomún - DrupalCamp Spain 2016
Caso de éxito Drupal - Procomún - DrupalCamp Spain 2016Caso de éxito Drupal - Procomún - DrupalCamp Spain 2016
Caso de éxito Drupal - Procomún - DrupalCamp Spain 2016
 
Desplegando código con Phing, PHPunit, Coder y Jenkins
Desplegando código con Phing, PHPunit, Coder y JenkinsDesplegando código con Phing, PHPunit, Coder y Jenkins
Desplegando código con Phing, PHPunit, Coder y Jenkins
 

Recently uploaded

Hyatt driving innovation and exceptional customer experiences with FIDO passw...
Hyatt driving innovation and exceptional customer experiences with FIDO passw...Hyatt driving innovation and exceptional customer experiences with FIDO passw...
Hyatt driving innovation and exceptional customer experiences with FIDO passw...
FIDO Alliance
 
CORS (Kitworks Team Study 양다윗 발표자료 240510)
CORS (Kitworks Team Study 양다윗 발표자료 240510)CORS (Kitworks Team Study 양다윗 발표자료 240510)
CORS (Kitworks Team Study 양다윗 발표자료 240510)
Wonjun Hwang
 
Microsoft BitLocker Bypass Attack Method.pdf
Microsoft BitLocker Bypass Attack Method.pdfMicrosoft BitLocker Bypass Attack Method.pdf
Microsoft BitLocker Bypass Attack Method.pdf
Overkill Security
 
“Iamnobody89757” Understanding the Mysterious of Digital Identity.pdf
“Iamnobody89757” Understanding the Mysterious of Digital Identity.pdf“Iamnobody89757” Understanding the Mysterious of Digital Identity.pdf
“Iamnobody89757” Understanding the Mysterious of Digital Identity.pdf
Muhammad Subhan
 

Recently uploaded (20)

AI mind or machine power point presentation
AI mind or machine power point presentationAI mind or machine power point presentation
AI mind or machine power point presentation
 
Hyatt driving innovation and exceptional customer experiences with FIDO passw...
Hyatt driving innovation and exceptional customer experiences with FIDO passw...Hyatt driving innovation and exceptional customer experiences with FIDO passw...
Hyatt driving innovation and exceptional customer experiences with FIDO passw...
 
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
 
CORS (Kitworks Team Study 양다윗 발표자료 240510)
CORS (Kitworks Team Study 양다윗 발표자료 240510)CORS (Kitworks Team Study 양다윗 발표자료 240510)
CORS (Kitworks Team Study 양다윗 발표자료 240510)
 
Working together SRE & Platform Engineering
Working together SRE & Platform EngineeringWorking together SRE & Platform Engineering
Working together SRE & Platform Engineering
 
2024 May Patch Tuesday
2024 May Patch Tuesday2024 May Patch Tuesday
2024 May Patch Tuesday
 
الأمن السيبراني - ما لا يسع للمستخدم جهله
الأمن السيبراني - ما لا يسع للمستخدم جهلهالأمن السيبراني - ما لا يسع للمستخدم جهله
الأمن السيبراني - ما لا يسع للمستخدم جهله
 
The Ultimate Prompt Engineering Guide for Generative AI: Get the Most Out of ...
The Ultimate Prompt Engineering Guide for Generative AI: Get the Most Out of ...The Ultimate Prompt Engineering Guide for Generative AI: Get the Most Out of ...
The Ultimate Prompt Engineering Guide for Generative AI: Get the Most Out of ...
 
Microsoft BitLocker Bypass Attack Method.pdf
Microsoft BitLocker Bypass Attack Method.pdfMicrosoft BitLocker Bypass Attack Method.pdf
Microsoft BitLocker Bypass Attack Method.pdf
 
Overview of Hyperledger Foundation
Overview of Hyperledger FoundationOverview of Hyperledger Foundation
Overview of Hyperledger Foundation
 
JohnPollard-hybrid-app-RailsConf2024.pptx
JohnPollard-hybrid-app-RailsConf2024.pptxJohnPollard-hybrid-app-RailsConf2024.pptx
JohnPollard-hybrid-app-RailsConf2024.pptx
 
Introduction to FIDO Authentication and Passkeys.pptx
Introduction to FIDO Authentication and Passkeys.pptxIntroduction to FIDO Authentication and Passkeys.pptx
Introduction to FIDO Authentication and Passkeys.pptx
 
Top 10 CodeIgniter Development Companies
Top 10 CodeIgniter Development CompaniesTop 10 CodeIgniter Development Companies
Top 10 CodeIgniter Development Companies
 
“Iamnobody89757” Understanding the Mysterious of Digital Identity.pdf
“Iamnobody89757” Understanding the Mysterious of Digital Identity.pdf“Iamnobody89757” Understanding the Mysterious of Digital Identity.pdf
“Iamnobody89757” Understanding the Mysterious of Digital Identity.pdf
 
Generative AI Use Cases and Applications.pdf
Generative AI Use Cases and Applications.pdfGenerative AI Use Cases and Applications.pdf
Generative AI Use Cases and Applications.pdf
 
How we scaled to 80K users by doing nothing!.pdf
How we scaled to 80K users by doing nothing!.pdfHow we scaled to 80K users by doing nothing!.pdf
How we scaled to 80K users by doing nothing!.pdf
 
Vector Search @ sw2con for slideshare.pptx
Vector Search @ sw2con for slideshare.pptxVector Search @ sw2con for slideshare.pptx
Vector Search @ sw2con for slideshare.pptx
 
Intro to Passkeys and the State of Passwordless.pptx
Intro to Passkeys and the State of Passwordless.pptxIntro to Passkeys and the State of Passwordless.pptx
Intro to Passkeys and the State of Passwordless.pptx
 
Continuing Bonds Through AI: A Hermeneutic Reflection on Thanabots
Continuing Bonds Through AI: A Hermeneutic Reflection on ThanabotsContinuing Bonds Through AI: A Hermeneutic Reflection on Thanabots
Continuing Bonds Through AI: A Hermeneutic Reflection on Thanabots
 
Simplifying Mobile A11y Presentation.pptx
Simplifying Mobile A11y Presentation.pptxSimplifying Mobile A11y Presentation.pptx
Simplifying Mobile A11y Presentation.pptx
 

Docker, your best ally to migrate & upgrading your Drupal - Drupal Dev Days Seville 2017

  • 1. Docker, your best ally to migrate & upgrading your Drupal Alejandro Gómez - @agomezmoron #DrupalDevDays 2017
  • 2. First of all! A selfie with you! #DrupalDevDays / @drupaldevdays @agomezmoron
  • 3. About me #DrupalDevDays / @drupaldevdays @agomezmoron agomezmoron.info.yml name: Alejandro Gómez description: “QA & Tech lover” package: #DrupalDevDays works_on: - company: { name: @ladrupalera by @emergya, role: QA & Team lead } - company: { name: @EPSUPO, role: QA teacher } type: Non-stop learner core: DDD.2017 community: @SevillaQA organizer
  • 4. Roadmap ● Introduction ● Is updating important? ● What do we need? ● The update approach ● How can I automate it? #DrupalDevDays / @drupaldevdays @agomezmoron
  • 5. Roadmap ● Introduction ● Is updating important? ● What do we need? ● The update approach ● How can I automate it? #DrupalDevDays / @drupaldevdays @agomezmoron
  • 6. ● Learning about how to keep our system updated safety. ● Learning some useful procedures & tools :). Introduction #DrupalDevDays / @drupaldevdays @agomezmoron
  • 7. Roadmap ● Introduction ● Is updating important? ● What do we need? ● The update approach ● How can I automate it? #DrupalDevDays / @drupaldevdays @agomezmoron
  • 8. @agomezmoron#DrupalDevDays 2017 ● Security ● Fixed bugs ● Stability Is updating important?
  • 9. Roadmap ● Introduction ● Is updating important? ● What do we need? ● The update approach ● How can I automate it? #DrupalDevDays / @drupaldevdays @agomezmoron
  • 10. What do we need? Testing tools #DrupalDevDays / @drupaldevdays @agomezmoron
  • 11. ● It rocks...but can you imagine doing the process by hand? ● You should keep the core, modules, etc updated. ● What about automating the process? What do we need? #DrupalDevDays / @drupaldevdays @agomezmoron
  • 12. Roadmap ● Introduction ● Is it important updating? ● What do we need? ● The update approach ● How can I automate it? #DrupalDevDays / @drupaldevdays @agomezmoron
  • 13. The update approach #DrupalDevDays / @drupaldevdays @agomezmoron 1. Check core updates (security) & apply them. 2. Check contrib modules updates & apply them.
  • 14. ● drush up --security-only -n ○ drush pm-updatecode --security-only -y ○ drush updatedb -y ● drush upc --no-core -n ○ drush upc --no-core -y The update approach Core Contrib #DrupalDevDays / @drupaldevdays @agomezmoron
  • 15. ● composer update drupal/core --with-dependencies ● composer update The update approach Core Contrib #DrupalDevDays / @drupaldevdays @agomezmoron
  • 16. The update approach #DrupalDevDays / @drupaldevdays @agomezmoron For each update, deploy a container, apply it and run all the regression tests. Validation Pull Request 20170202_update
  • 17. The update approach #DrupalDevDays / @drupaldevdays @agomezmoron PR_security_updated 20170202_security_update_code 20170202_security_update_db
  • 18. The update approach #DrupalDevDays / @drupaldevdays @agomezmoron PR_security_updated 20170202_core_update_code
  • 19. The update approach #DrupalDevDays / @drupaldevdays @agomezmoron PR_contrib_updated 20170202_contrib_update
  • 20. Roadmap ● Introduction ● Is updating important? ● What do we need? ● The update approach ● How can I automate it? #DrupalDevDays / @drupaldevdays @agomezmoron
  • 21. @agomezmoron How can I automate it? Testing tools #DrupalDevDays / @drupaldevdays One Jenkins to rule them all!
  • 22. How can I manage my dockers? ● Managing your docker images can be easy. ● What about the containers? ● What about the network bridgings, volumes...? #DrupalDevDays / @drupaldevdays @agomezmoron
  • 23. How can I manage my dockers? #DrupalDevDays / @drupaldevdays @agomezmoron
  • 24. How can I manage my dockers? # Option 1 #DrupalDevDays / @drupaldevdays @agomezmoron
  • 25. How can I manage my dockers? # Option 2 #DrupalDevDays / @drupaldevdays @agomezmoron
  • 26. How can I manage my dockers? #DrupalDevDays / @drupaldevdays @agomezmoron docker run -d -p 9000:9000 --privileged -v /var/run/docker.sock:/var/run/docker.sock portainer/portainer --name myportainer
  • 28. Conclusions #DrupalDevDays / @drupaldevdays @agomezmoron ● Updates are important but they can break your system. ● A continuous core update should be applied in our code and all the tests should be running.
  • 30. #DrupalDevDays / @drupaldevdays @agomezmoron Thanks to...
  • 31. #DrupalDevDays / @drupaldevdays @agomezmoron Thanks to...
  • 32. #DrupalDevDays / @drupaldevdays @agomezmoron Thanks to...