Skip to content

feat: Create a Growthbook server side provider #938

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

Merged

Conversation

msamper
Copy link
Contributor

@msamper msamper commented Jun 7, 2024

This PR

  • adds a new OpenFeature GrowthBook server provider

How to test

Integrate OpenFeature into a test node server and set it up with this new GrowthBook provider. Ensure that GrowthBook flag evaluation works as expected using the OpenFeature API

How to set up OpenFeature with node

OpenFeature.setProvider(new GrowthbookProvider(gbOptions, initOptions))

@msamper msamper requested a review from a team as a code owner June 7, 2024 19:24
@msamper msamper changed the title [feat] Create a Growthbook server side provider feat: Create a Growthbook server side provider Jun 7, 2024
@lukas-reining
Copy link
Member

Hey @msamper, great addition, I will have a look tomorrow!

@beeme1mr
Copy link
Member

Hi @msamper, could you please rebase this PR? It should resolve the E2E issue.

@msamper msamper force-pushed the msamper/growthbook-node-provider branch from b0201e3 to 52b9510 Compare June 12, 2024 02:36
@msamper
Copy link
Contributor Author

msamper commented Jun 12, 2024

Hi @msamper, could you please rebase this PR? It should resolve the E2E issue.

@beeme1mr I rebased on the main branch of my fork and it seems like there's still CI issues with the e2e and the lint-test-build. Should I be rebasing on open-feature:main instead?

Copy link
Member

@lukas-reining lukas-reining left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks @msamper this looks good!
I just have two comments regarding the EvaluationContext -> Attributes.
When these are resolved this looks great!

@lukas-reining
Copy link
Member

lukas-reining commented Jun 14, 2024

Hi @msamper, could you please rebase this PR? It should resolve the E2E issue.

@beeme1mr I rebased on the main branch of my fork and it seems like there's still CI issues with the e2e and the lint-test-build. Should I be rebasing on open-feature:main instead?

Yes, open-feature:main should be your branch to rebase on @msamper.

Signed-off-by: Michael Samper <[email protected]>
Signed-off-by: Michael Samper <[email protected]>
Signed-off-by: Michael Samper <[email protected]>
Signed-off-by: Michael Samper <[email protected]>
Signed-off-by: Michael Samper <[email protected]>
@msamper msamper reopened this Jan 8, 2025
@msamper
Copy link
Contributor Author

msamper commented Jan 8, 2025

We created a second version of our Node JS SDK that closely mirrors the Dynamic Context paradigm. I updated this PR to use it and fixed the tests. This should resolve the previously outstanding comments

Signed-off-by: Michael Samper <[email protected]>
Signed-off-by: Michael Samper <[email protected]>
Signed-off-by: Michael Samper <[email protected]>
Signed-off-by: Michael Samper <[email protected]>
Signed-off-by: Michael Samper <[email protected]>
@msamper msamper force-pushed the msamper/growthbook-node-provider branch from c7370d4 to 38176b6 Compare January 8, 2025 20:14
Copy link
Member

@beeme1mr beeme1mr left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good to me!

@msamper
Copy link
Contributor Author

msamper commented Jan 8, 2025

Looks good to me!

Great! Fixed up some variable names and updated the README so it should be good to merge

@beeme1mr beeme1mr merged commit 0e6a486 into open-feature:main Jan 8, 2025
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants