ioet / time-tracker-backend

API to provide data to the time tracker project
5 stars 0 forks source link

Obtain config from Azure App configuration #70

Open EliuX opened 4 years ago

EliuX commented 4 years ago

Env variables were fair-enough for storing configuration variables in an initial stage of the project, in order to make the application work. But it has its limitations:

Because of this and the sake of good practices we were proposed to use Azure App Configuration. This way we can store sensitive config values in a secrets vault and link them to an Azure App Configuration account that should be created for the project (I think one is enough for now). Also, regular configuration values like feature toggles can be stored there. This is safer, more comfortable due to the centralization and better organized.

TODO: After an Azure App Configuration account is created and ready to use, we should be able to bring variables like the database connection URI from there. The app should be able to run and function properly just by setting the environment (production).

EliuX commented 4 years ago

At this moment, we do not need to store feature toggles nor other kinds of variables in App Configuration, so we are going to limit our efforts for now in just populating up the Key Vault with the credentials to connect to our Cosmos DB database. We will link these variables to the configurations in App Service and Azure DevOps where they are required. I tried to do so, but even after I got additional permissions, I am still unauthorized to do all that is required. Therefore, this task shall be done by our DevOps developer @fabidick22.