SlideShare une entreprise Scribd logo
1  sur  11
DIY CONTINIOUS INTEGRATION
Johnnie@promethost.com
Twitter: @johnniefox
Drupal Camp Cebu 2014
November 16, 2014
About Me
CTO Promet Source
Recovering Developer
Project Manager/Strategist
Scrum Master
Drupal/PHP/IOS/C#
husband • geek •
photographer •
traveler •
motorcyclist •
kayaker •
woodworker•
Why?
Distributed Teams – Working across countries
Many People on on Project
Want to work faster
QA takes forever
I don’t like surprises in Production
Why should I care
WHAT IS IT
Revision Control
Build Automation
Automate Deployment
Self-Testing Build
Testing in a Clone of
Production
Code Consolidation
Frequent Commits
Fast Builds
Build Availability
Test Result Availability
WHAT IS IT
• Vagrant
• Drupal Cookbook
• Installing PHPUnit
• Jenkins
• Using drush to synchronize and deploy sites
• Headless Selenium
• Behat
• Behat extension for Drupal
• PhantomJS
WHAT IS IT
• DEMONSTRATION
WHAT IS IT
Revision Control
Build Automation
Automate Deployment
Self-Testing Build
Testing in a Clone of
Production
Code Consolidation
Frequent Commits
Fast Builds
Build Availability
Test Result Availability
THE END
• Don't be shy. Drop me a line and ask me questions now, today,
tomorrow, or a month from now.
• Johnnie Fox
• johnnie@prometsource.com
• Twitter: @johnniefox
For Reference
• Vagrant -http://www.vagrantup.com/
• Drupal Cookbook - https://github.com/promet/drupal_cookbook
• Installing PHPUnit - http://phpunit.de/manual/3.7/en/installation.html
• Jenkins - http://jenkins-ci.org/
• https://github.com/promet/drupal7-framework Promet D7
• Using drush to synchronize and deploy sites - https://drupal.org/node/670460
• Headless Selenium -https://github.com/generalredneck/headless-selenium
• Behat -http://behat.org/
• Behat extension for Drupal -https://drupal.org/project/drupalextension
• PhantomJS - http://phantomjs.org/
Questions?
www.prometsource.com
johnnie@promethost.com
Twitter: @johnniefox
@PROMETSOURCE

Contenu connexe

Tendances

Testing your app with Selenium on Travis CI
Testing your app with Selenium on Travis CITesting your app with Selenium on Travis CI
Testing your app with Selenium on Travis CI
Yusuke Ando
 

Tendances (20)

Ruby On Rails Presentation
Ruby On Rails PresentationRuby On Rails Presentation
Ruby On Rails Presentation
 
Step away from that knife!
Step away from that knife!Step away from that knife!
Step away from that knife!
 
Introduction to continuous delivery
Introduction to continuous deliveryIntroduction to continuous delivery
Introduction to continuous delivery
 
The bugfix confirmation loop - PyConFI 2013
The bugfix confirmation loop - PyConFI 2013The bugfix confirmation loop - PyConFI 2013
The bugfix confirmation loop - PyConFI 2013
 
DevOpsDaysRiga 2018: Neil Crawford - Trunk based development, continuous depl...
DevOpsDaysRiga 2018: Neil Crawford - Trunk based development, continuous depl...DevOpsDaysRiga 2018: Neil Crawford - Trunk based development, continuous depl...
DevOpsDaysRiga 2018: Neil Crawford - Trunk based development, continuous depl...
 
A Introduction to the World of Node, Javascript & Selenium
A Introduction to the World of Node, Javascript & SeleniumA Introduction to the World of Node, Javascript & Selenium
A Introduction to the World of Node, Javascript & Selenium
 
Trunk based development
Trunk based developmentTrunk based development
Trunk based development
 
Continuous Integration JUG Hannover
Continuous Integration JUG HannoverContinuous Integration JUG Hannover
Continuous Integration JUG Hannover
 
Saving Time and Money with Vagrant
Saving Time and Money with VagrantSaving Time and Money with Vagrant
Saving Time and Money with Vagrant
 
Full stack-web-design
Full stack-web-designFull stack-web-design
Full stack-web-design
 
Task runners + theming automating your workflow
Task runners + theming  automating your workflowTask runners + theming  automating your workflow
Task runners + theming automating your workflow
 
Continuous Integration and Continuous Deployment in Enterprise scenario
Continuous Integration and Continuous Deployment in Enterprise scenarioContinuous Integration and Continuous Deployment in Enterprise scenario
Continuous Integration and Continuous Deployment in Enterprise scenario
 
Continuous Integration, the minimum viable product
Continuous Integration, the minimum viable productContinuous Integration, the minimum viable product
Continuous Integration, the minimum viable product
 
Aiming for automatic updates - Drupal Dev Days Lisbon 2018
Aiming for automatic updates - Drupal Dev Days Lisbon 2018Aiming for automatic updates - Drupal Dev Days Lisbon 2018
Aiming for automatic updates - Drupal Dev Days Lisbon 2018
 
Continuous integration
Continuous integrationContinuous integration
Continuous integration
 
PyCon Ukraine 2014
PyCon Ukraine 2014PyCon Ukraine 2014
PyCon Ukraine 2014
 
Testing your app with Selenium on Travis CI
Testing your app with Selenium on Travis CITesting your app with Selenium on Travis CI
Testing your app with Selenium on Travis CI
 
That worked before
That worked beforeThat worked before
That worked before
 
Magento Continuous Integration & Continuous Delivery @MM17HR
Magento Continuous Integration & Continuous Delivery @MM17HRMagento Continuous Integration & Continuous Delivery @MM17HR
Magento Continuous Integration & Continuous Delivery @MM17HR
 
EVOLVE'13 | Keynote | Richard Brown
EVOLVE'13 | Keynote | Richard BrownEVOLVE'13 | Keynote | Richard Brown
EVOLVE'13 | Keynote | Richard Brown
 

En vedette

Continuous Integration (Jenkins/Hudson)
Continuous Integration (Jenkins/Hudson)Continuous Integration (Jenkins/Hudson)
Continuous Integration (Jenkins/Hudson)
Dennys Hsieh
 

En vedette (7)

Continious integration pipeline
Continious integration pipelineContinious integration pipeline
Continious integration pipeline
 
Continuous Integration and PHP
Continuous Integration and PHPContinuous Integration and PHP
Continuous Integration and PHP
 
Continuous Integration 101
Continuous Integration 101Continuous Integration 101
Continuous Integration 101
 
Continuous Integration
Continuous IntegrationContinuous Integration
Continuous Integration
 
困境與轉型:一個小型開發團隊的 DevOps 學習之旅
困境與轉型:一個小型開發團隊的 DevOps 學習之旅困境與轉型:一個小型開發團隊的 DevOps 學習之旅
困境與轉型:一個小型開發團隊的 DevOps 學習之旅
 
Continuous Integration (Jenkins/Hudson)
Continuous Integration (Jenkins/Hudson)Continuous Integration (Jenkins/Hudson)
Continuous Integration (Jenkins/Hudson)
 
SAPUI5/OpenUI5 - Continuous Integration
SAPUI5/OpenUI5 - Continuous IntegrationSAPUI5/OpenUI5 - Continuous Integration
SAPUI5/OpenUI5 - Continuous Integration
 

Similaire à Diy cont integration_dc_cebu

Continuous Integration In A PHP World
Continuous Integration In A PHP WorldContinuous Integration In A PHP World
Continuous Integration In A PHP World
Idaf_1er
 
Automating Web Application Deployment
Automating Web Application DeploymentAutomating Web Application Deployment
Automating Web Application Deployment
Mathew Byrne
 

Similaire à Diy cont integration_dc_cebu (20)

Production ready word press
Production ready word pressProduction ready word press
Production ready word press
 
Continuous Integration In A PHP World
Continuous Integration In A PHP WorldContinuous Integration In A PHP World
Continuous Integration In A PHP World
 
wp cli- don’t fear the command line
wp cli- don’t fear the command linewp cli- don’t fear the command line
wp cli- don’t fear the command line
 
Smarter deployments with octopus deploy
Smarter deployments with octopus deploySmarter deployments with octopus deploy
Smarter deployments with octopus deploy
 
Continuous Integration with Open Source Tools - PHPUgFfm 2014-11-20
Continuous Integration with Open Source Tools - PHPUgFfm 2014-11-20Continuous Integration with Open Source Tools - PHPUgFfm 2014-11-20
Continuous Integration with Open Source Tools - PHPUgFfm 2014-11-20
 
Wilko Nienhaus - continuous delivery release the right thing, done right, at ...
Wilko Nienhaus - continuous delivery release the right thing, done right, at ...Wilko Nienhaus - continuous delivery release the right thing, done right, at ...
Wilko Nienhaus - continuous delivery release the right thing, done right, at ...
 
Dos & Donts when making Technology choices
Dos & Donts when making Technology choicesDos & Donts when making Technology choices
Dos & Donts when making Technology choices
 
TYPO3 Camp Stuttgart 2015 - Continuous Delivery with Open Source Tools
TYPO3 Camp Stuttgart 2015 - Continuous Delivery with Open Source ToolsTYPO3 Camp Stuttgart 2015 - Continuous Delivery with Open Source Tools
TYPO3 Camp Stuttgart 2015 - Continuous Delivery with Open Source Tools
 
Manchester ITExpo Talk: DevOps large and small - Cambridge Satchel
Manchester ITExpo Talk:  DevOps large and small - Cambridge SatchelManchester ITExpo Talk:  DevOps large and small - Cambridge Satchel
Manchester ITExpo Talk: DevOps large and small - Cambridge Satchel
 
Continuous delivery applied (RJUG)
Continuous delivery applied (RJUG)Continuous delivery applied (RJUG)
Continuous delivery applied (RJUG)
 
Unicom DevCon - CI/CD for Asp.net core apps using Docker
Unicom DevCon - CI/CD for Asp.net core apps using DockerUnicom DevCon - CI/CD for Asp.net core apps using Docker
Unicom DevCon - CI/CD for Asp.net core apps using Docker
 
Wp cli- intro and basics
Wp cli- intro and basicsWp cli- intro and basics
Wp cli- intro and basics
 
Automated Testing at The Speed of Headless by Alissa Lydon and Samantha Coffman
Automated Testing at The Speed of Headless by Alissa Lydon and Samantha CoffmanAutomated Testing at The Speed of Headless by Alissa Lydon and Samantha Coffman
Automated Testing at The Speed of Headless by Alissa Lydon and Samantha Coffman
 
Standardizing and Managing Your Infrastructure - MOSC 2011
Standardizing and Managing Your Infrastructure - MOSC 2011Standardizing and Managing Your Infrastructure - MOSC 2011
Standardizing and Managing Your Infrastructure - MOSC 2011
 
Automated Visual Regression Testing by Dave Sadlon
Automated Visual Regression Testing by Dave SadlonAutomated Visual Regression Testing by Dave Sadlon
Automated Visual Regression Testing by Dave Sadlon
 
Continuous Delivery Using Jenkins
Continuous Delivery Using JenkinsContinuous Delivery Using Jenkins
Continuous Delivery Using Jenkins
 
Web Application Testing with Selenium
Web Application Testing with Selenium Web Application Testing with Selenium
Web Application Testing with Selenium
 
Continuous Integration, Build Pipelines and Continuous Deployment
Continuous Integration, Build Pipelines and Continuous DeploymentContinuous Integration, Build Pipelines and Continuous Deployment
Continuous Integration, Build Pipelines and Continuous Deployment
 
Laravel CI / CD in Azure Web Apps - Global Azure Bootcamp Jakarta
Laravel CI / CD in Azure Web Apps -  Global Azure Bootcamp JakartaLaravel CI / CD in Azure Web Apps -  Global Azure Bootcamp Jakarta
Laravel CI / CD in Azure Web Apps - Global Azure Bootcamp Jakarta
 
Automating Web Application Deployment
Automating Web Application DeploymentAutomating Web Application Deployment
Automating Web Application Deployment
 

Plus de Johnnie Fox

Plus de Johnnie Fox (6)

2015 drupalcampcebu estimation_jrf
2015 drupalcampcebu estimation_jrf2015 drupalcampcebu estimation_jrf
2015 drupalcampcebu estimation_jrf
 
Drupal cebu promet_estimation
Drupal cebu promet_estimationDrupal cebu promet_estimation
Drupal cebu promet_estimation
 
Becoming a Drupal Technical Project Manager
Becoming a Drupal Technical Project ManagerBecoming a Drupal Technical Project Manager
Becoming a Drupal Technical Project Manager
 
Project Estimation:Survival Guide
Project Estimation:Survival GuideProject Estimation:Survival Guide
Project Estimation:Survival Guide
 
Brief Intro to Drupal
Brief Intro to DrupalBrief Intro to Drupal
Brief Intro to Drupal
 
Project estimation: When the design is bigger than the back of a napkin
Project estimation: When the design is bigger than the back of a napkinProject estimation: When the design is bigger than the back of a napkin
Project estimation: When the design is bigger than the back of a napkin
 

Dernier

Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 

Dernier (20)

EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Cyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdfCyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdf
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdf
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 

Diy cont integration_dc_cebu

  • 1. DIY CONTINIOUS INTEGRATION Johnnie@promethost.com Twitter: @johnniefox Drupal Camp Cebu 2014 November 16, 2014
  • 2. About Me CTO Promet Source Recovering Developer Project Manager/Strategist Scrum Master Drupal/PHP/IOS/C# husband • geek • photographer • traveler • motorcyclist • kayaker • woodworker•
  • 3. Why? Distributed Teams – Working across countries Many People on on Project Want to work faster QA takes forever I don’t like surprises in Production
  • 5. WHAT IS IT Revision Control Build Automation Automate Deployment Self-Testing Build Testing in a Clone of Production Code Consolidation Frequent Commits Fast Builds Build Availability Test Result Availability
  • 6. WHAT IS IT • Vagrant • Drupal Cookbook • Installing PHPUnit • Jenkins • Using drush to synchronize and deploy sites • Headless Selenium • Behat • Behat extension for Drupal • PhantomJS
  • 7. WHAT IS IT • DEMONSTRATION
  • 8. WHAT IS IT Revision Control Build Automation Automate Deployment Self-Testing Build Testing in a Clone of Production Code Consolidation Frequent Commits Fast Builds Build Availability Test Result Availability
  • 9. THE END • Don't be shy. Drop me a line and ask me questions now, today, tomorrow, or a month from now. • Johnnie Fox • johnnie@prometsource.com • Twitter: @johnniefox
  • 10. For Reference • Vagrant -http://www.vagrantup.com/ • Drupal Cookbook - https://github.com/promet/drupal_cookbook • Installing PHPUnit - http://phpunit.de/manual/3.7/en/installation.html • Jenkins - http://jenkins-ci.org/ • https://github.com/promet/drupal7-framework Promet D7 • Using drush to synchronize and deploy sites - https://drupal.org/node/670460 • Headless Selenium -https://github.com/generalredneck/headless-selenium • Behat -http://behat.org/ • Behat extension for Drupal -https://drupal.org/project/drupalextension • PhantomJS - http://phantomjs.org/

Notes de l'éditeur

  1. Promet 25 developers across 3 continents Different commits Communication
  2. Katamari Indivdidual commits Modules, themes