The presentation discusses the design principles and implementation of a new system for managing configuration and deployment of applications. The system aims to strike a balance between exposing changes and ensuring meaningful review, while also accommodating the needs of a wide range of users.
- The system was designed with the goal of making it easy for developers to get started and ensuring commonly needed changes would be simple to make
- The system includes a config CLI and API, a version schema, and a customization system
- The config CLI provides a familiar interactive workflow for developers to modify production configuration
- The config API simplifies the user experience by explicitly encoding the main application properties that developers need to control
- The version schema allows for formal versioning and evolution of the system over time
- The customization system allows for advanced users to leverage the full power of Kubernetes APIs when needed
- The system strikes a balance between exposing changes and ensuring meaningful review, while also accommodating the needs of a wide range of users