More talks in the program:
CI/CD pipelines are becoming more popular as organizations begin to adopt Continuous Deployment and therefore, they require deployments as part of their pipelines. Hence, it is with good reason that the DevOps community has been advocating for treating CI/CD pipelines with the same diligence as the application code itself, for example, when it comes to security aspects, namely "DevSecOps". A key principle of this is that everyone is responsible for the security of pipelines and that security aspects are taken into consideration from the very beginning. Another important lesson from software development is consistently assuring that software quality pays off in the long run. Therefore, state-of-the-art software development involves test-driven development. If the same holds true for security, then why should pipelines not be developed test-driven as well? After all, they control the crucial deployment step of our applications and faulty deployments will impact our users! In this live-coding session, we will write a Jenkins pipeline from scratch in an entirely test-driven way and demonstrate how we can apply test-driven development to CI/CD pipelines and employ the tools of test-driven development such as unit testing, mocks, and assertions to verify that our pipeline works correctly.