orchestrator-core icon indicating copy to clipboard operation
orchestrator-core copied to clipboard

[Feature]: Create a Settings table.

Open pboers1988 opened this issue 2 years ago • 1 comments

Contact Details

No response

What should we build?

We have quite a few settings that need to be managed for the api. Things that come to mind are whether Oauth2 is enabled or what the executor is. Furthermore things like translations might also be able to be dynamically managed when they are stored in a database table. Please design and implement a mechanism through which we can dynamically manage all settings.

Please define the following endpoints:

  • Get endpoint where the key value pairs of each setting can be retrieved
  • Get endpoint where the key value pairs of each translation can be retrieved
  • Patch endpoint where the key value pairs of each setting can be changed
  • Patch endpoint where the key value pairs of each translation can be changed

Make sure that all settings that no longer are managed in the database are loaded from that database.

Once this has been implemented, please create a frontend page to manage these endpoints.

Relevant pseudo code

No response

pboers1988 avatar Nov 15 '23 10:11 pboers1988

Perhaps the first step should be to report what settings are in use and how they are configured in an admin page.

pboers1988 avatar Jan 17 '24 13:01 pboers1988

I agree a setting table would be nice to manage runtime configurable settings. But the settings mentioned here (oauth2 being enabled, which worker executor to use) are not runtime configurable, as they require a restart of the orchestrator api/worker processes. And for at least OAUTH2_ENABLED there is also the question of whether the DB value should take precedence over the env-var value. Should this feature include those settings as well, or just the "easier" manageable settings?

Mark90 avatar Feb 07 '25 16:02 Mark90