Recon
Recon is the simple solution for storing configs of you application.
There are no specified instruments, no specified data protocols. For the full power of Recon you only need curl
.
Examples
Put the data to project myLittleProduction
with default
project type
curl -X PUT -d '<<<EOF
TEST_ONE=1
TEST_TWO=2
TEST_THREE=3
' http://localhost:8080/projects/myLittleProduction/default/env
###
TEST_ONE=1
TEST_TWO=2
TEST_THREE=3
Get the data from myLittleProduction
with default
project type
curl http://localhost:8080/projects/myLittleProduction/default/env
###
TEST_ONE=1
TEST_TWO=2
TEST_THREE=3
Data storing types
Recon DB support two data storing types:
default
snake case key value store (data_key=data)
env
environment like data storing (DATA_KEY=data)
Structure of projects
Every project on Recon DB has a default
type. Also you can add any types to any projects for differentiation of configs and when you get custom project type, it will be merged with the default project type.
As an example lets imagine a simple application, which is stored on two data centres 1
and 2
.
This application has a AWS secret key
, that is same for all data centres and the application has a Database url
, that is different for 1
and 2
data centres.
In order not to duplicate configs of AWS secret key
we can add it to default
project type.
curl -X POST -d 'AWS_KEY=123' http://localhost:8080/projects/myApp/default/env
And after that add DATABASE URL
to the different project types
curl -X POST -d 'DATABASE_URL=localhost1' http://localhost:8080/projects/myApp/usa/env
curl -X POST -d 'DATABASE_URL=localhost2' http://localhost:8080/projects/myApp/europe/env
Now you can get a full config for every place
curl http://localhost:8080/projects/myApp/usa/env
###
AWS_KEY=123
DATABASE_URL=localhost1
curl http://localhost:8080/projects/myApp/europe/env
###
AWS_KEY=123
DATABASE_URL=localhost2
Documentation
Recon requirements