payara / Payara

Payara Server is an open source middleware platform that supports reliable and secure deployments of Java EE (Jakarta EE) and MicroProfile applications in any environment: on premise, in the cloud or hybrid.
http://www.payara.fish
Other
879 stars 301 forks source link

Enhancement: TOML Config Source for MicroProfile Config /FISH-9198 #6822

Open poikilotherm opened 1 month ago

poikilotherm commented 1 month ago

Brief Summary

I would like to be able to use a TOML file as a source for configuration values. This is a standard feature for SmallRye and should be included in Payara, too.

Expected Outcome

Just configure a source and read away that TOML file!

Current Outcome

I'm stuck with adding such a config source to the application, which does not allow me to provide values for early init stuff like ${MPCONFIG=...:...} variable replacements.

Alternatives

Implement a fake JDBC driver to read TOML files.

Been there, done that: gdcc/jdbc-conffile-driver Works, but is hacky. Also: a config source that reads a local file can be updated on change and doesn't need 60 secs default caching! But this will require more control over what's going on, which is just not possible with the JDBC workaround.

Context

As with the DirConfigSource (#5006 / #5007), I would be willing and able to create a pull request and donate the necessary code. If accepted, we should talk about the location for this config source (fish.payara.microprofile.config.extensions vs fish.payara.nucleus.microprofile.config.source) and potentially about using a different caching strategy for it.

artur-mal commented 1 month ago

The proposed enhancement has been submitted for an open vote.

poikilotherm commented 3 weeks ago

Hi @artur-mal !

It looks like this is a community wanted feature with 22 votes ATM.

What are the next steps? Is a community contribution welcome?

Cheers, Oliver

github-actions[bot] commented 3 weeks ago

Greetings, This enhancement request has been selected by the Payara Community as the most voted enhancement of this month and thus will be escalated to our product development backlog.

artur-mal commented 3 weeks ago

Hi @poikilotherm

We welcome community contributions. If you’re interested in contributing, please take a moment to read our contributing guidelines: LINK

If you prefer not to contribute, this enhancement will be handled by the Payara Product Development team.

Pandrex247 commented 2 weeks ago

We've raised an internal issue to track this enhancement with the ID of FISH-9198.