-
Notifications
You must be signed in to change notification settings - Fork 3
Config Documentation #255
Config Documentation #255
Changes from 7 commits
e6f69e9
2b286b0
9aa62a3
3343e28
4e21b64
7b985d2
3db2264
e830c63
6887a3c
b33cce9
2b33f91
9a1089e
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,43 @@ | ||
# 12. Partner configuration | ||
|
||
Date: 2024-12-12 | ||
|
||
## Decision | ||
|
||
We will store partner config settings in an Azure container | ||
|
||
## Status | ||
|
||
Accepted. | ||
|
||
## Context | ||
|
||
In order to enable the usage of partner-specific settings in the different parts of the app, we are going to store the settings | ||
in a config container in our Azure storage account. Each partner will have its own separate file within the container to minimize potential | ||
blast radius when changing settings. | ||
|
||
|
||
## Notes | ||
- config files should only contain non-secret values | ||
- secrets will use a consistent naming pattern based on the partner ID used in config (so we can dynamically assemble the key names in code) | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Is the naming convention documented somewhere? There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. SECRETS.md contains the current naming convention for secrets. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. It might be helpful to link out to it There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. This has been added to where the notes were moved which is in configs.md |
||
- config keys are their file names (minus .json) and match org names in ReportStream | ||
|
||
## Impact | ||
|
||
### Positive | ||
|
||
- We can continue to meet our partners where they are by having partner specific settings in the app in order to provide any needed customizations. | ||
- We can create separate testing config for the Flexion organizations | ||
|
||
### Negative | ||
|
||
- Some added complexity for the implementation of configs. | ||
- Initial implementation of the config will require either restarting or redeploying the app | ||
|
||
### Risks | ||
|
||
- None | ||
|
||
## Related Issues | ||
|
||
- #1082 |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,7 @@ | ||
# FAQ | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Loving the FAQ section. Great idea! |
||
|
||
- We don't load configs in the PR environment. | ||
- See [The partner settings struct](/src/config/config.go) for the config structure | ||
- Configs load prior to the application running. Any changes to the config will require a restart of the Azure container to load those changes | ||
- For local non-partner specific testing, we have a Flexion based config that can be used in non-prod environments | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nit: consider being more specific here, .i.e. "We will store partner sftp config settings..."
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fixed, thanks!