This would include:
Being able to change e-mail addresses for an account would be a handy feature to have, too.
Agreed. If you'd like to work on this, I'm happy to offer advice and review any pull requests!
I will open a PR which implements parts of the feature request.
We were also thinking about moving some configuration options from .env to the database. At first we planned just to move those options that do not require a restart of Huginn, but then realized that we do not have a way to propagate the changes to all application servers, so a restart would be required for every change made.
Now I am wondering how useful it would be to have the configuration in an admin panel if you still need to restart Hhuginn manually afterwards.
@dsander some options could presumably be stored in the DB and loaded every time they're used. A new ActiveRecord object called Setting or something. Which options were you interested in making dynamic?
Have to (or should) stay in .env:
Can be changed on the fly:
If we would not cache the settings we could make those that do not require a restart (are not used by the background processes) dynamic. The question I have is wouldn't the segmentation lead to confusion? I already see myself opening the .env file when I need to open the admin interface to change the setting I am looking for.
I'm generally a fan of 12 factor apps, so I like having stuff in the environment. Do you see a benefit of pulling some application-wide settings into the app and leaving some in the env? I definitely see a benefit for any user-specific settings, but app-wide ones seem more like .env settings to me.
The main beneficiaries would be docker users, if almost all configuration options would be stored in the database one would not need to recreate the container but only update the settings and restart. For some installation methods (manual install with upstart and maybe docker when the docker socket is mounted), we even could offer an automatic restart.
I was excited about having the configuration accessible via a web interface once, but now I am not sure anymore if it is worth the effort.
User specific settings should be configurable via the web interface, but as of now I think we do not have any?
Yea, we don't have many user-specific settings at the moment, that's true.