open-feature/open-feature-operator

Configure flagd-proxy resources

nickvollmar opened this issue · 4 comments

Hello!

When the flagd-proxy sync provider is configured, I'd like to be able to specify resources for the managed flagd-proxy deployment.

This doesn't seem to be possible currently, so the deployment podspec has no resource requests or limits:

Analogous to #511, I propose adding configuration in two places:

  • flag-source-specific resources in the FlagSourceConfiguration CRD –– .spec.sources[].resources
  • default resources in the open-feature-operator deployment –– Helm values flagdProxyConfiguration.resources

Would y'all be open to this?

There do seem to be some externalities involving the FlagSourceConfiguration "Source" item type, which may complicate this feature request.

// SourceConfig is a 1:1 mapping for flagd SourceConfig type. JSON encoded SourceConfig becomes a startup argument for
// flagd
// NOTE - once we have API stability, make this a dependency at flagd to avoid duplication

@nickvollmar thank you for noticing this and bringing this to our attention.

Regarding the proposal, I do not see any issue introducing proxy resources by expanding FlagSourceConfigurationSpec. Also having default resource values is a good suggestion.

Regarding Source item type, this shouldn't be a blocker as this is only applicable for flagd startup arguments 1. We can parse FlagSourceConfigurationSpec and extract only the required properties for flagd where needed.

Are you willing to contribute this proposal? If so please feel free to open a PR with the proposed change.

Footnotes

  1. https://github.com/open-feature/flagd/blob/main/docs/configuration/configuration.md#configuration https://flagd.dev/reference/sync-configuration/#source-configuration

Hello @Kavindu-Dodan! Thank you for writing back and providing guidance.

I will try to implement the change. Hopefully I will have time to do that this weekend.

@nickvollmar Great.! I assigned this issue to you and feel free to reach us for any help.

I'm going to close this since it's been inactive for some time. Please reopen and coordinate with @xvzf on #609 if you want to revive the discussion.