0

I have a requirement to store configuration information on a per environment basis in a tool.

This is a tool with a GUI for adding/updating configuration values (e.g connection strings). This should have a default value and be able to change this based on different environments.

There should be an API to retrieve these configuration values during deployment to a particular environment to add to the application.

I have googled for a while and can't see any tools that would fit this bill. Are there any suggestions?

big_tommy_7bb
  • 1,257
  • 2
  • 21
  • 37
  • I would recommend using whatever you use for source control, e.g., all of our configuration settings are in files stored in Perforce and are automatically synced whenever changes are deployed. – tkosinski Mar 28 '17 at 15:13

2 Answers2

0

It would be great to know more about where you will be using the configs, ie. local, cloud etc. but consider using Puppet with a source control repo like Github. There are GUIs but you can find lots of template examples to get started if you want to change the conn settings in the config code yourself and then commit them to your repo or set them as a variable and you'll only have to change the variables file. Doing it this way will allow you to eventually start running automated builds.

cigloo
  • 21
  • 2
0

If the GUI is not a must, then configrd is exactly this. A central repository for config values, environment variables and secrets.

You can structure your config values per whatever axis you want, including by environment with values inheriting and overriding from environment to environment.

Configrd also handles on the fly encryption and decryption of secrets so that you can keep your plain text and secrets side by side versioned in git if you choose.

It's all accessible over a simple API