At the moment, short of using discourse docker plugin there is no place to list the current plugins, install plugins or disable plugins in the admin UI.
It makes diagnosing issues sometimes tricky, staying up to date with plugins and so on.
Version 0 of the admin plugin UI will be VERY simple.
- Add an extra tab to the admin screen that lists plugins
- Allow plugins to be enabled or disabled from the UI
- If a plugin is disabled/enabled a restart of Discourse is required. This should be tracked, eg: display “Your plugin was disabled but will not be deactivated till you restart Discourse”
- A table needs to be added to track enable / disable state for plugins, by default anything missing from the table is enabled.
- UI should display which plugins are out-of-date (same way as discourse docker manager does it)
- Disable / Enable option to be suppressed for any multisite installs. (probably via a GlobalSetting)
Version 0 will not cover
- Upgrade logic for plugins via UI
- Installation of new plugins or plugin discovery.
Since this involves UI, no work to be completed prior to UI mocks
Long term I envisage this deprecating GitHub - discourse/docker_manager: plugin for use with discourse docker image , instead what docker manager will do is simply implement various hooks like “this is how you restart discourse hook” or “this is how you install a plugin hook”. Cross machine restarts get tricky, installation in Docker environment is tricky.