Continuous integration and delivery is a best practice emerging from decades of learnings from Agile, Extreme Programming, and similar coding disciplines, all urging teams towards shorter and shorter sprints and more and more frequent releases. Short sprints keep goals simple, and produce frequent, tangible (‘minimum viable,’ or MV) product improvements that increase value to customers.
Spinnaker is engineered to manage complex and large-scale deployments gracefully, quickly, and repeatedly — so it’s ideal for doing continuous delivery of ‘big’ application stacks and cloud-native ‘twelve-factor’ apps assembled from horizontally-scaling, containerized microservices. It works under principles of “immutability,” where applications are managed as code within Spinnaker automation ‘pipelines,’ and application components are destroyed and redeployed in the event of failure.