-
Notifications
You must be signed in to change notification settings - Fork 41
[feature] Support in-process evaluator in OFO #542
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
Comments
After some discussions, it would be beneficial to do a refactoring of the existing |
Implemented a PoC supporting the in-process evaluation and additionally refactoring the actual API. During the implementation, I got the feeling that it would be possible to move the in-process evaluation parameters into a new separate CRD to decrease the complexity of FeatureFlagSource CRD and therefore reducing the need to introduce conversion webhooks and new API version. Also it can potentially bring the advantage of easier testability of the code as well as decreasing the complexity of the mutating webhook logic (especially the part handling the decision if the flagd sidecar injection should happen). On the other side, it requires introducing a new standardized annotation, which will be used by deployments using OFO (like Open for any opinions! |
In general I also have the impression that the current |
@odubajDT what you are proposing is to keep I like the idea. We should also consider the ability to utilize flagd's grpc streaming capability 1 which was added recently (@toddbaert we could refine the issue on this). Footnotes |
Yes exactly!
|
Drafted a PoC to showcase how the possible solution with a separate CRD can look like. It shows that using a separate CRD makes the code way cleaner and reduces the complexity of the whole solution |
If we decide to go with the new CRD, we should consider picking a new name. My suggestion would be: |
@odubajDT Besides, I assume the workflow here is you add |
Regarding the naming, we would have the following then:
I think it is consistent and explains the purpose clearly enough. |
We now have JS, Java, and Go in-process flagd providers. These providers connect directly to a
sync.proto
-compliant gRPC server (such as flagd-proxy). OFO should be enhanced to support the use of these providers. This would require:FLAGD_SOURCE_RESOLVER
- the SA injection/patch should NOT take place.cc @odubajDT @thisthat @beeme1mr @Kavindu-Dodan
The text was updated successfully, but these errors were encountered: