Open DanielOaks opened 4 years ago
note to self: when we mock up the config editor, take another look at bogdomania's mockup, there was some cool stuff in there
Might be interesting to expose this as a secure API so that other projects with a webinterface like openWRT or OPNSense could just add a basic config feature to run Oragono.
One stage of #71 that should be a fairly simple feature. Basically, expose an editor that lets users modify their config file with a web interface.
The basic idea for this proposal is that your config is in one of two states:
In the Text state, your config file is structured in an understandable way, you've got lengthy comments explaining everything, etc. In the Web state, your config file is just a raw yaml dump that's arranged however it exports your config file -- there's no comments in the file, but the web interface gives you that info anyway.
The reason we do this and keep everything in
ircd.yaml
instead of e.g. saving the config in the database is because we seriously need to make sure there's on source of truth for this. Having the config file as well as random values (or the entire config) being able to be overwritten by the database will make things extremely, crazily complicated for us to debug (when someone comes to us with a problem) and for admins to understand.THIS FILE IS AUTOGENERATED
warning comment and we include a config key likeuse-web-config-only
to indicate to Oragono that this config is now being edited using the web interface, so that when we load the config editor we can default to the nice interface.