TypeFox / open-collaboration-tools

Open Collaboration Tools: live-sharing solution for Eclipse Theia, VS Code and other editors and IDEs
https://www.open-collab.tools/
MIT License
81 stars 5 forks source link

[server] Add a configuration service #22

Open spoenemann opened 2 months ago

spoenemann commented 2 months ago

We currently fetch a lot of configuration values from env variables. It would be very convenient to add a second way to provide server configuration: put a json config file into the running container. Then we can point to that file through a command line option when starting the server.

We should also extract all references to config values into a service where we use keys in kebab-case. If a config file is given, the keys should be looked up in the json object by converting the key into a hierarchical lookup. As fallback, the keys should be looked up in the env variables by converting them to SCREAMING_SNAKE_CASE.