Allow plugins to declare a release track #10405

Closed
opened 2025-12-29 21:31:02 +01:00 by adam · 2 comments
Owner

Originally created by @natm on GitHub (Oct 25, 2024).

Originally assigned to: @jeremystretch on GitHub.

NetBox version

v4.1.4

Feature type

New functionality

Triage priority

I volunteer to perform this work (if approved)

Proposed functionality

When defining a plugin it would be helpful if along with the version, the release track could be optionally declared, for example dev, release, etc.

from netbox.plugins import PluginConfig

class FooBarConfig(PluginConfig):
    name = 'foo_bar'
    verbose_name = 'Foo Bar'
    description = 'An example NetBox plugin'
    version = '0.0.1'
    author = 'Jeremy Stretch'
    author_email = 'author@example.com'
    base_url = 'foo-bar'
    release_track = 'release'

config = FooBarConfig

Use case

When installed plugins are listed the track could be displayed along with the version. This could be used to distinguish if a plugin has been installed from a published release or is running from a local development clone.

Database changes

None

External dependencies

None

Originally created by @natm on GitHub (Oct 25, 2024). Originally assigned to: @jeremystretch on GitHub. ### NetBox version v4.1.4 ### Feature type New functionality ### Triage priority I volunteer to perform this work (if approved) ### Proposed functionality When defining a plugin it would be helpful if along with the version, the release track could be optionally declared, for example `dev`, `release`, etc. ```python from netbox.plugins import PluginConfig class FooBarConfig(PluginConfig): name = 'foo_bar' verbose_name = 'Foo Bar' description = 'An example NetBox plugin' version = '0.0.1' author = 'Jeremy Stretch' author_email = 'author@example.com' base_url = 'foo-bar' release_track = 'release' config = FooBarConfig ``` ### Use case When installed plugins are listed the track could be displayed along with the version. This could be used to distinguish if a plugin has been installed from a published release or is running from a local development clone. ### Database changes None ### External dependencies None
adam added the status: acceptedtype: featurecomplexity: low labels 2025-12-29 21:31:02 +01:00
adam closed this issue 2025-12-29 21:31:02 +01:00
Author
Owner

@jeremystretch commented on GitHub (Oct 25, 2024):

Makes sense to me. Do we want to go as far as declaring a set of valid values for this attribute, or leave it up to the individual plugins?

@jeremystretch commented on GitHub (Oct 25, 2024): Makes sense to me. Do we want to go as far as declaring a set of valid values for this attribute, or leave it up to the individual plugins?
Author
Owner

@natm commented on GitHub (Oct 28, 2024):

Makes sense to me. Do we want to go as far as declaring a set of valid values for this attribute, or leave it up to the individual plugins?

Yes it would be nice if the options could be constrained to dev and release with a default of release if the field is not specified.

@natm commented on GitHub (Oct 28, 2024): > Makes sense to me. Do we want to go as far as declaring a set of valid values for this attribute, or leave it up to the individual plugins? Yes it would be nice if the options could be constrained to `dev` and `release` with a default of `release` if the field is not specified.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/netbox#10405