Cloud
Draft PR for cloud/tunnel support for Flipt Hybrid Cloud
We will use this PR as the base for all cloud functionality in Flipt, branching and merging additional PRs off of this branch as we go.
cloud:
tunnel:
address: "flipt.cloud" # defaults to this so most folks don't care (but we can override)
port: 8443 # defaults to this so most folks don't care
organization: foo
instance: bar
authentication:
required: true
api_key: xyz
audit:
enabled: true
While there is a part of me that feels like littering "cloud" term in multiple places feels bad, I think it might be better for the dependencies to organize it in this way. Otherwise, we're drilling down new config sections.
So long story short, I like the first and what you have in this PR, I think. We can have folks piecemeal opt into features they want managed in cloud, in this way.
Open to pushback though.
While there is a part of me that feels like littering "cloud" term in multiple places feels bad, I think it might be better for the dependencies to organize it in this way. Otherwise, we're drilling down new config sections.
So long story short, I like the first and what you have in this PR, I think. We can have folks piecemeal opt into features they want managed in cloud, in this way.
Open to pushback though.
yeah after seeing it written out like this I think I agree. Initially I thought I would like the latter approach, but now I prefer the former. we could still potentially 'guard' everything under experimental with a single key like:
experimental
cloud: true
which only if true would mean that the other configs are respected. wdyt?
@markphelps Hard to say without good insights.
I think there should not be authentication section. api_key could be in the same section as address. I would suggest to have address as company.flipt.cloud and don't have extra fields in configuration. It may be simpler for folks to put one line/env vs few ones.