-
Notifications
You must be signed in to change notification settings - Fork 5
feat: Server provider guidelines #42
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
Conversation
0a90d31
to
057645c
Compare
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.
Small comment, otherwise looks good.
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.
This is great, the feedback from the client provider applies here too @thomaspoignant :)
Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org>
057645c
to
e5fee69
Compare
@lukas-reining I have adapted the same changes to the server provider guideline. |
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.
We may want to briefly mention http timeout behavior. In the web provider I believe we default to 10 seconds and the provider is put in an error state.
It may also be worth briefly describing the expected behavior if the response is invalid. I would expect a provider error if it occurs during initialization. If the provider receives an unexpected response after initialization I would expect the provider to use the previously cached value and possibly emit an error event.
Yes mentioning the timeout is a good idea I will add it.
There is no caching in the server provider so I am not sure what you mean here? |
Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org>
e5a556e
to
e9f39cb
Compare
* feat: Server provider guideline Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org> * adding timeout Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org> --------- Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org>
* feat: Server provider guideline Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org> * adding timeout Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org> --------- Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org>
* feat: Client provider spec Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org> * Update provider/specs/client.md Co-authored-by: Mark Phelps <209477+markphelps@users.noreply.github.com> Signed-off-by: Thomas Poignant <thomas.poignant@gmail.com> Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org> * Update provider/specs/client.md Co-authored-by: Mark Phelps <209477+markphelps@users.noreply.github.com> Signed-off-by: Thomas Poignant <thomas.poignant@gmail.com> Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org> * Update provider/specs/client.md Co-authored-by: Michael Beemer <beeme1mr@users.noreply.github.com> Signed-off-by: Thomas Poignant <thomas.poignant@gmail.com> Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org> * Update provider/specs/client.md Co-authored-by: Mark Phelps <209477+markphelps@users.noreply.github.com> Signed-off-by: Thomas Poignant <thomas.poignant@gmail.com> Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org> * Update provider/specs/client.md Co-authored-by: Mark Phelps <209477+markphelps@users.noreply.github.com> Signed-off-by: Thomas Poignant <thomas.poignant@gmail.com> Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org> * Update provider/specs/client.md Co-authored-by: Mark Phelps <209477+markphelps@users.noreply.github.com> Signed-off-by: Thomas Poignant <thomas.poignant@gmail.com> Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org> * Update provider/specs/client.md Co-authored-by: Mark Phelps <209477+markphelps@users.noreply.github.com> Signed-off-by: Thomas Poignant <thomas.poignant@gmail.com> Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org> * Update provider/specs/client.md Co-authored-by: Mark Phelps <209477+markphelps@users.noreply.github.com> Signed-off-by: Thomas Poignant <thomas.poignant@gmail.com> Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org> * Update provider/specs/client.md Co-authored-by: Mark Phelps <209477+markphelps@users.noreply.github.com> Signed-off-by: Thomas Poignant <thomas.poignant@gmail.com> Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org> * Update provider/specs/client.md Co-authored-by: Mark Phelps <209477+markphelps@users.noreply.github.com> Signed-off-by: Thomas Poignant <thomas.poignant@gmail.com> Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org> * Update provider/specs/client.md Co-authored-by: Mark Phelps <209477+markphelps@users.noreply.github.com> Signed-off-by: Thomas Poignant <thomas.poignant@gmail.com> Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org> * Update provider/specs/client.md Co-authored-by: Mark Phelps <209477+markphelps@users.noreply.github.com> Signed-off-by: Thomas Poignant <thomas.poignant@gmail.com> Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org> * Update provider/specs/client.md Co-authored-by: Michael Beemer <beeme1mr@users.noreply.github.com> Signed-off-by: Thomas Poignant <thomas.poignant@gmail.com> Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org> * Update provider/specs/client.md Co-authored-by: Michael Beemer <beeme1mr@users.noreply.github.com> Signed-off-by: Thomas Poignant <thomas.poignant@gmail.com> Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org> * update with review comments Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org> * Move to guideline folder Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org> * Replace specification Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org> * add OpenAPI spec validator based on redocly cli (#15) Signed-off-by: Kavindu Dodanduwa <kavindudodanduwa@gmail.com> Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org> * chore(deps): update actions/checkout action to v4 (#16) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org> * Update guideline/static-context-provider.md Co-authored-by: Michael Beemer <beeme1mr@users.noreply.github.com> Signed-off-by: Thomas Poignant <thomas.poignant@gmail.com> Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org> * Update guideline/static-context-provider.md Co-authored-by: Lukas Reining <lukas.reining@codecentric.de> Signed-off-by: Thomas Poignant <thomas.poignant@gmail.com> Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org> * Update guideline/static-context-provider.md Co-authored-by: Lukas Reining <lukas.reining@codecentric.de> Signed-off-by: Thomas Poignant <thomas.poignant@gmail.com> Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org> * update guidelines after removing configuration endpoint Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org> * adding change context Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org> * feat: Allow any reason (#20) Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org> * feat!: change minPollingInterval field name to mention millisecond (#25) * feat!: change minPollingInterval field name to mention millisecond Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org> * change name to ms Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org> --------- Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org> * feat: Group API in core and extensions (#23) Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org> * feat!: Reverse the logic for supportedTypes (#24) * feat!: Reverse the logic for supportedTypes Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org> * fix Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org> --------- Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org> * doc: adding providers link (#26) Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org> * make flags property mandatory for bulk evaluation success response (#27) Signed-off-by: Kavindu Dodanduwa <kavindudodanduwa@gmail.com> Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org> * feat: Typo in header name (#28) Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org> * add optional targeting key property (#30) Signed-off-by: Michael Beemer <beeme1mr@users.noreply.github.com> Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org> * fix: use correct header name for 429 bulk response (#32) Signed-off-by: Roman Dmytrenko <rdmytrenko@gmail.com> Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org> * feat: Specify caching for OFREP in server providers (#17) Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org> Signed-off-by: Kavindu Dodanduwa <Kavindu-Dodan@users.noreply.github.com> Co-authored-by: Kavindu Dodanduwa <Kavindu-Dodan@users.noreply.github.com> Co-authored-by: Todd Baert <todd.baert@dynatrace.com> Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org> * feat: add flag set metadata for bulk response and failures (#34) Signed-off-by: Todd Baert <todd.baert@dynatrace.com> Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org> * Fixups: Add operationIds, remove invalid property, fix tag casing (#35) Signed-off-by: Honza Dvorsky <honza@apple.com> Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org> * ci: switch OpenAPI validators (#36) Signed-off-by: Michael Beemer <beeme1mr@users.noreply.github.com> Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org> * fix: address style issues Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org> * Update static-context-provider.md Co-authored-by: Lukas Reining <lukas.reining@codecentric.de> Signed-off-by: Thomas Poignant <thomas.poignant@gmail.com> Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org> * Update static-context-provider.md Co-authored-by: Lukas Reining <lukas.reining@codecentric.de> Signed-off-by: Thomas Poignant <thomas.poignant@gmail.com> Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org> * adding timeout Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org> * feat: Server provider guidelines (#42) * feat: Server provider guideline Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org> * adding timeout Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org> --------- Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org> * feat: Group API in core and extensions (#23) Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org> * Update guideline/static-context-provider.md Co-authored-by: Michael Beemer <beeme1mr@users.noreply.github.com> Signed-off-by: Thomas Poignant <thomas.poignant@gmail.com> Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org> * Update openapi.yaml Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org> --------- Signed-off-by: Thomas Poignant <thomas.poignant@gofeatureflag.org> Signed-off-by: Thomas Poignant <thomas.poignant@gmail.com> Signed-off-by: Kavindu Dodanduwa <kavindudodanduwa@gmail.com> Signed-off-by: Michael Beemer <beeme1mr@users.noreply.github.com> Signed-off-by: Roman Dmytrenko <rdmytrenko@gmail.com> Signed-off-by: Kavindu Dodanduwa <Kavindu-Dodan@users.noreply.github.com> Signed-off-by: Todd Baert <todd.baert@dynatrace.com> Signed-off-by: Honza Dvorsky <honza@apple.com> Co-authored-by: Mark Phelps <209477+markphelps@users.noreply.github.com> Co-authored-by: Michael Beemer <beeme1mr@users.noreply.github.com> Co-authored-by: Kavindu Dodanduwa <Kavindu-Dodan@users.noreply.github.com> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: Lukas Reining <lukas.reining@codecentric.de> Co-authored-by: Michel TURPIN <michel.turpin1@gmail.com> Co-authored-by: Roman Dmytrenko <rdmytrenko@gmail.com> Co-authored-by: Todd Baert <todd.baert@dynatrace.com> Co-authored-by: Honza Dvorsky <honza@apple.com>
This PR
This PR contains the guidelines on how to create a server provider for OFREP.
Closes #41