Skip to content

Allow Plugin to install additional Django App #5086

Closed
@dgarros

Description

@dgarros

Environment

  • Python version: 2.7.7
  • NetBox version: 2.8.9, 2.9.2

Proposed Functionality

Extend the current plugin model to allow a plugin to install/enable a third party Django Application.

The proposal is to extend the PluginConfig class to support a new django_apps attribute.

class MyPluginConfig(PluginConfig):
    name = "my_plugin"
    verbose_name = "my plugin"
    version = __version__
    base_url = "my_plugin"
    .... 
    django_apps = ["app1", "app2"]

Use Case

As a plugin creator I would like to be able to leverage existing django App.
For example the SAML plugin from @jeremyschulman for netbox netbox-plugin-auth-saml2 is based on django3-auth-saml2. So it’s required to install the other django app independently
there are many existing django app that could be easily reused/extended within NetBox if we could seamlessly install them from a plugin

Database Changes

None

External Dependencies

None

Metadata

Metadata

Assignees

No one assigned

    Labels

    pending closureRequires immediate attention to avoid being closed for inactivitystatus: under reviewFurther discussion is needed to determine this issue's scope and/or implementationtopic: pluginsRelates to the plugins frameworktype: featureIntroduction of new functionality to the application

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions