12.1 Factor Apps: Config
Patch level improvements to the original 12 factor apps. 4 points to improve the configuration factor in your application.
The 12 factor app states that applications should read config from environment variables. It implies separation of code and config. That’s about it, but there’s good bones here. I want something bigger from this factor. Specifically that applications may be deployed to new environments without any code changes. This requires a few additions:
- Configure the process through command options and environment variables
- Prefer explicit configuration over implicit configuration
- Use a dry run option to verify config sanity
- Fail fast on any configuration error
Mentioned in Show
- Where, What, and How to Test on the Ruby Testing Podcast
Resources
- The 12 Factor App
- My Review & Analysis on The DevOps Handbook
- My Review & Analysis on Accelerate
- Software Development in 3 Principles & 4 Metrics
Books
- The DevOps Handbook by Gene Kim, Jez Humble, John Willis, Patrick Debois
- Accelerate by Nicole Forsgren, Jez Humble, Gene Kim