示例#1
0
 def install(self, **kwargs) -> "Plugin":
     if "organization_id" not in kwargs and "organization" in kwargs:
         kwargs["organization_id"] = kwargs["organization"].id
     if kwargs.get("plugin_type", None) != Plugin.PluginType.SOURCE:
         update_validated_data_from_url(kwargs, kwargs["url"])
         raise_if_plugin_installed(kwargs["url"], kwargs["organization_id"])
     reload_plugins_on_workers()
     return Plugin.objects.create(**kwargs)
示例#2
0
def plugin_attachement_reload_needed(sender, instance, created=None, **kwargs):
    reload_plugins_on_workers()
示例#3
0
def plugin_config_reload_needed(sender, instance, created=None, **kwargs):
    reload_plugins_on_workers()
示例#4
0
def plugin_reload_needed(sender, instance, created=None, **kwargs):
    # Newly created plugins don't have a config yet, so no need to reload
    if not created:
        reload_plugins_on_workers()