-
Notifications
You must be signed in to change notification settings - Fork 0
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
featu: [Add support for exporting the configuration[ (FF-2437) #90
Conversation
Not sure if these questions are related, but here they go:
|
Yes this is a good observation. I am planning on allowing the JS client to configure itself in obfuscated or non obfuscated mode, the latter being for this use case of importing a configuration from nodejs. Do you see concerns with this approach, assuming the customer is aware of the security relaxation they are performing?
Cool yea now that we have the go ahead should complete that work to expose it. |
185784a
to
0de5177
Compare
@@ -41,6 +41,6 @@ export interface ISyncStore<T> { | |||
export interface IAsyncStore<T> { | |||
isInitialized(): boolean; | |||
isExpired(): Promise<boolean>; | |||
getEntries(): Promise<Record<string, T>>; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@felipecsl you had a review comment to rename getAll
to entries
. Ok for me to also rename getEntries
to entries
for consistency?
* featu: [Add support for exporting the configuration[ (FF-2437) * rename getAll to entries * getFlagConfigurations * bump to 3.4.0
* Fetch and store bandit parameters (#85) * bandit config store added * fix typo * test case * feedback from PR * Aaron/ff 2407/bandit evaluator (#88) * don't fetch bandit parameters if no store provided * stubbed methods for bandit evaluation * failing attribute scoring test * score actions tests passing * clean up from rebase * scoring working * weights test in place * tests passing * feedback from PR * Bandit selects and assigns action from weighted actions (#95) * action selection working, but suspect * failing JS test case * shared test cases passing * shared bandit tests passing * intermediate test case passing * fix test assignment weights * bandit logger test * handle when no actions * tests passing * changes from self-review of PR * additional note for future PR * remove comments from bandit logger interface * feedback from PR * fix remaining issues from rebase * Update for updated shared test data (#104) * update for shared test data updates * get ready for updated sdk test data * todo with failing test * store bandit flag to action association * rearrange parameters * feedback from PR * Handle explicitly bucketed numeric and categorical attributes (#108) * file names for test cases * support explicitly bucketed attributes * subject attribute test * tests WIP * final tests passing * all tests passing * need to export bandit logger interfaces * feedback from PR * featu: [Add support for exporting the configuration[ (FF-2437) (#90) * featu: [Add support for exporting the configuration[ (FF-2437) * rename getAll to entries * getFlagConfigurations * bump to 3.4.0 * bump feature version * add bandit store setters to interface --------- Co-authored-by: Leo Romanovsky <[email protected]>
Fixes: #issue
Motivation and Context
Users who want to bootstrap their client SDK need a mechanism to export the configuration from their NodeJS server.
Description
Adds a new method to the client called
getConfiguration
- it is implemented by exporting the contents of theservingStore: SyncStore
. This is implemented as aMap
and trivial to export all the flags. The top-level method returns the UFC response.Customers will be instructed to serialize this to JSON if desired and transmit it over an internal API.
How has this been tested?
New unit tests.