Amsterdam 2014 - Proposal

Gold sponsors

Back to proposals overview - program

Pre-Flight Builds for Quality Control


Software development nowadays is done in teams. We develop in branches, isolating changes while they are in development. Then we merge them into the main stream, then we build the product, and deploy its new version to production. Sometimes our build step fails because of merge conflicts or broken tests. Everybody understands these failures as a positive side effect of quality control we have in place. Build failures prevent production failures, which essentially are much more important.

In the project I'm going to talk about we've made one step further in quality control. We started to control quality and fail even earlier, during merging of our branches into the main stream. This mechanism is known as "pre-flight builds". We integrated together Jenkins, Docker, JIRA, Git and our custom software. All together they started to act as an intelligent agent that picks up JIRA tickets when they are ready, attempts to merge their branches into Git master, attempts to build the entire product inside Docker container, and pushes changes to Github repository.

I believe that our experience will be interesting to share with other DevOps specialists.


Yegor Bugayenko is a software architect and DevOps enthusiast and currently works at EMESA, the owner of, the biggest auctioning website in The Netherlands.

Yegor Bugayenko

blog comments powered by Disqus
Schuberg Philis eBay CA Technologies Quanza Engineering ElasticSearch Arista Chef IBM DevOps BitBrains Better.Be LeaseWeb SURFsara

Silver sponsors

PuppetLabs LayerThree Sentia CRI interXion Google Compute SDL Pine Digital Security Nexenta Network Hardware Resale Apache CloudStack itq infradata VX Company Prowareness Thoughtworks Citrix Salzer