-
Notifications
You must be signed in to change notification settings - Fork 186
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[feat] Support variant-less rollouts #345
Comments
@fenriskiba that defeats what im saying in this ticket - having to add any variant is already extra complexity for a basic switch. I only need to know if it matches the rollout of a segment. Otherwise yes I can simply match on 'variantId' in the response to say "is it on at all", but it now requires training folks to add "random variants of whatever you want". |
Okay, I see where I had a disconnect. I was thinking through using the evaluations as a problem and you were looking at training users of the UI. I'm also referring to the complexity of the internal Flagr app, not the user experience (not sure if that got across since the response refereed to complexity of the user experience). So then the follow up question I'd have would be to ask if default variants/segments/distributions would help solve the same problem? I don't necessarily think what your proposing would be bad, but I'm just wondering if a smaller change could provide the same value and be easier for someone to contribute. |
I'm in favor of a consistent flag-segement-variant model, that reduce the complexity of maintaining a new "simple boolean flag" type. And to address the concerns, there are two parts of the complexity for "simple boolean flag":
What do you think we expose an endpoint that create a "simple boolean flag", and in the backend we assemble those actions for the convenience but still result in a normal flag-segment-variant model? E.g.
UI can stay the same for now, since people may want to extend a simple boolean flag to more variants and more segments. |
@zhouzhuojie that could definitely work - whats your thoughts on determining on/off? I do still think it'd be nice if the API exposed "user in rollout but no variants", and you can get the latter (no variant id) but you cant get the former, as the segment is returned even if the rollout doesnt trigger. |
Also if you're supportive, my plan is to accept some kind of 'Simple' boolean via the existing flag endpoint (per the suggestion), and then create the above objects as described. Will throw up a PR later today likely. |
LGTM, and thanks for the new creation button! Thinking of the API design, maybe we can add a new field Compared with assembling existing flags/segments/variants endpoints from UI:
|
@zhouzhuojie in building this I had an interesting idea: exposing the creationType more as a template param. That would give the opportunity to extend it in the future with a more obvious goal. Does that seem reasonable? fwiw I just added this on the create flag endpoint as an optional param so:
|
sounds good! |
In contrasting open source feature systems flagr is certainly one of the more mature options. The one caveat I found was its quite complex for a generic boolean feature flag. The scenarios that I think could be simpler are:
You could achieve the latter if the API returned some kind of information saying "segment is on with rollout plan and no variant".
The text was updated successfully, but these errors were encountered: