Ask HN: What is good open and flexible system for managing configs?

  • It's often better for provenance to keep the parameters in git with the code. Doing something like you want requires changing the code to query, adds a runtime dependency, and generally adds complications. Think about a flip side, in code reviews and easily seeing what parameters are changing with this deployment.

    You might look at a couchbase or couchdb based solution. They have versioning and rudimentary UIs. You might also look into CUE(lang) as a better format.

    Any solution will depend on how your code is organized in repositories. Maybe you have some system that collects all the parameters and presents them only for informational purposes, rather than having prod query a dynamic database for configuration.

    Thinking about it, Kubernetes offers most of your desired solution...

  • I would use AWS Parameter Store but I guess it fails the "open" part. But it's great for storing settings for different environments and then apps can simply pick them up.

  • I would do this in Ansible.

    I can't help you with the pretty GUI part, that's probably going to have to be written custom, no matter what you pick.