CI practices aim to provide fast feedback about developers changes. However, on a scale of big companies, the workflows associated with CI systems could be painfully complex. Often it is not enough to have green builds to have your changes merged into the mainline: some additional gatekeeping is required to ensure that new code is compliant to the company’s standards. This fact leads to spending quite big amount of time in order either to prove the compliance of the code (a developer’s role) or check that the code is compliant (a gatekeeper’s role). As the result, to reduce merge time overhead, developers tend to merge their changes to the mainline relatively rare what contradicts to CI principles.
This presentation aims to describe an experience of Magento company in building of automation around CI related processes: issues encountered and lessons learned.
I started my work in IT as a test automation engineer back in 2007. Gradually I became interested in CI practices and tools. First steps in this direction have opened DevOps world for me. In 2011 I joined oDesk.com where I was responsible for CI and development tools and processes. Last year I joined Magento’s CI/CD team: here we work hard enabling the second release of Magento.