Contributed by Shaleen Swatantra, OpsMx (CDF Member)
In the world of DevOps, Continuous Deployment (CD) and Continuous Integration (CI) are the two major terms that are most widely used together, even though they are very different.
CI and CD together form a software delivery pipeline that starts with the commit of a change to source code and stops when an update has been fully rolled out to production.
- Continuous integration (CI) is the process where software is built and initial tests are completed.
- Continuous deployment (CD) is the process of combining code with infrastructure, ensuring that all tests are completed and policies followed, and then deploying code into the intended environment.
For smooth continuous delivery, CI and CD should work together.
Jenkins is the leading CI tool, and it has a strong history and ecosystem. It’s used successfully by thousands of organizations for the build process.
Spinnaker was built specifically to solve the problems that teams found when using Jenkins and other systems to deploy to the cloud and it natively supports multi-cloud environments without scripts and is scalable to web-scale businesses. Google was one of the first to realize the benefits of using a separate CD tool with the existing vanilla Jenkins and it quickly adopted Spinnaker.
Spinnaker is easy to install and supports load balancing, deployment testing strategies, one-click rollbacks, dashboards for visibility, and deployment of microservices, monoliths, and hybrid apps. None of these are native to Jenkins. In addition to Google, hundreds of other organizations around the world—large and small—have adopted Spinnaker, including Adobe, Airbnb, Cisco, Salesforce, Standard Chartered Bank, and many more.
Jenkins is a great CI solution, and Spinnaker is a great CD solution. While it’s possible to get along without one of them, it’s simpler to use both, each doing the tasks where they excel.
This was based on this blog post Jenkins and Spinnaker – A Comparison by OpsMx (one of the top three Spinnaker contributors) that shows the benefits of using the projects together and separately.