This talk will discuss the design and implementation of a bespoke Continuous Delivery system suitable for delivering packaged software to 100s of thousands of nodes in a developer driven git based deployment scenario.
We will discus:
- What came before - twice yearly deploys and how that impact velocity and software
- How a system was designed and built that can today support 10s of deploys a day as well as handling initial node provision continuously at scale and in many locations across the world.
- We'll look at developer CLI tooling to interact with the CD system
- Observability of the system for real time global view
- Manageability of the system wrt things like circuit breakers and big red buttons to stop bad deployments
- A contract based packaging approach that was used to embed in each package its configuration management and monitoring.