Replies: 1 comment
|
yeah I think this makes sense |
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
At runtime, one profile is selected through
--profile/FNOX_PROFILE, and the effective config is resolved as:That works well for selecting one environment.
What I would like to support
The use case I am interested in is activating multiple profiles at the same time, as an ordered composition.
Conceptually, profiles would act like small partial implementations or mixins:
Then a command could activate more than one profile:
fnox --profile aws --profile prod --profile ci exec -- ./appor possibly:
FNOX_PROFILE=aws,prod,ci fnox exec -- ./appThe effective configuration would be:
with later profiles overriding earlier ones.
This would allow users to compose behavior by concern, for example:
awsprovides provider configurationprodprovides production secret mappingsciadds CI-only secretslocaloverrides a few values for local developmentWhy this seems to fit the existing design
The current implementation already has most of the right pieces:
ProfileConfigcontainsproviders,default_provider,secrets, andleases.Config::get_providers(profile)andConfig::get_secrets(profile)already build an effective view from top-level config plus one profile.All reactions