From 4 releases per year to 4 releases per day

fdewinne
pfrenssen

This session presents a case study where the delivery process for a large government web platform was dramatically improved by automating as much as possible.

 

When the European Commission adopted Drupal for their internal websites, this project grew organically from a single site to a large Drupal 7 distribution running over 70 websites, developed by a team of 200 developers from 28 different countries.

 

As the project grew the legacy workflow processes that were in use became unmaintainable. This session will show how we moved from a largely manual process to fully automated continuous deployment.

 

  • Moving from SVN to git.

  • Adopting the “successful git branching model”: feature branches, release branches, tags.

  • Making the development process accessible by external contractors by moving from a DMZ to third party services.

  • Automating many steps in the QA procedure.

  • Rejecting bad code through static analysis before it reaches a human QA engineer.

  • Providing automated tests using Behat to replace manual regression testing.

  • Testing compatibility with new releases of components in the stack (e.g. PHP 7) to catch problems early.

  • Deploying ticket branches to ephemeral acceptance servers hosted on Amazon AWS.

  • Automating Drupal site builds with Drush Make, Composer and Phing.

  • Providing a “starterkit” that includes standardized build tools to allow rapidly create new websites.

  • Adopting continuousphp to highly parallelize our delivery pipelines and get quick feedback.

Session Track

DevOps

Experience Level

Intermediate

Drupal Version

When & Where

Time: 
Wednesday, 11 May, 2016 - 14:15 to 15:15
Room: 
260-261 [Pantheon]