-
Notifications
You must be signed in to change notification settings - Fork 641
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Proposal: enhance plugin installation and management. #508
Comments
Does upgrading a plugin not require flaskbb to be restarted? What would be the point of having a button in the interface to upgrade the plugin if the user still has to restart their the app from the console? |
Installing is the same way. It's a two step process: The upgrade I'm talking about is the second step. The process does need to be restarted but it'd need to be restarted for installing a new plugin from scratch as well. There are ways to do this without down time but that's outside the scope here. Right now the only way to get new settings from a plugin is to uninstall and reinstall via the gui or cli. However this erases the current configuration. |
Ah, I see. Sorry, I misunderstood what the issue was about. |
It's overloaded terminology, I could see why it'd be confusing. No problem. |
While working on the ranks plugin (getting close), I noticed a few things that made plugin upgrades difficult and other things that would be nice to have.
Add upgrade plugin to both cli and management ui. The primary effect here would be finding any settings that exist for the plugin that are not currently stored and removing ones that are stored by no longer declared by the plugin.
add
on_plugin_install
,on_plugin_uninstall
, andon_plugin_upgrade
hooks (not attached to the names) and potentiallyon_plugin_settings_changed
so plugins can preform any administrative tasks related to these actions.An example of using the install/uninstall/upgrade actions would be a plugin that creates a user to interact with users on the forum (e. g. automod, or similar), or if we follow through with the permission revision adding new permissions. Install hook would handle creating these and uninstall would clean them up, upgrade could handle differences between versions.
The text was updated successfully, but these errors were encountered: