How can you make sure that changes you are pushing to your pipeline code won’t break it? We migrated our entire delivery infrastructure to Jenkins and along the way, wrote a framework for unit testing pipelines. We are enjoying continuously improving our pipelines and we want to share our joy!
At LesFurets.com, we use Jenkins as our workhorse to automate our continuous delivery pipeline. Each day we test more than 30 parallel developments and deliver only those which are ready for production. From validation to deployment, every step of the pipeline is coded using Jenkins Pipeline DSL and checked into our code base. Although coding pipelines using this DSL is very powerful, pipeline scripts can easily get pretty complex. That’s why we developed a testing framework, which lets you write unit tests on the configuration and conditional logic of the pipeline code. The framework mocks built-in Jenkins commands and job configurations, executing pipeline scripts in a simulated environment. It allows to debug job executions and even track regressions between changes. In this presentation we present our extensive usage of Jenkins, our open source testing framework and best practices we learned during our migration to the pipeline DSL.
Ещё видео!