Port details on branch 2023Q3 |
- netbox IP address management tool
- 3.5.9 net-mgmt =0 3.5.9Version of this port present on the latest quarterly branch.
- Maintainer: kai@FreeBSD.org
- Port Added: 2023-07-12 04:33:34
- Last Update: 2023-08-29 07:25:19
- Commit Hash: 04fa3ab
- Also Listed In: python
- License: APACHE20
- WWW:
- https://github.com/netbox-community/netbox
- Description:
- NetBox is an open source web application designed to help manage and document
computer networks. Initially conceived by the network engineering team at
DigitalOcean, NetBox was developed specifically to address the needs of network
and infrastructure engineers. It encompasses the following aspects of network
management:
- IP address management (IPAM) - IP networks and addresses, VRFs, and VLANs
- Equipment racks - Organized by group and site
- Devices - Types of devices and where they are installed
- Connections - Network, console, and power connections among devices
- Virtualization - Virtual machines and clusters
- Data circuits - Long-haul communications circuits and providers
- ¦ ¦ ¦ ¦
- Manual pages:
- FreshPorts has no man page information for this port.
- pkg-plist: as obtained via:
make generate-plist - Dependency lines:
-
- To install the port:
- cd /usr/ports/net-mgmt/netbox/ && make install clean
- To add the package, run one of these commands:
- pkg install net-mgmt/netbox
- pkg install netbox
NOTE: If this package has multiple flavors (see below), then use one of them instead of the name specified above.- PKGNAME: netbox
- Flavors: there is no flavor information for this port.
- distinfo:
- TIMESTAMP = 1693289458
SHA256 (netbox-community-netbox-v3.5.9_GH0.tar.gz) = 98d9dd0dd7e44bc1ce95bc7758eb2c624a444f92516d63f6800bd897ba09a793
SIZE (netbox-community-netbox-v3.5.9_GH0.tar.gz) = 5790742
No package information for this port in our database- Sometimes this happens. Not all ports have packages. Perhaps there is a build error. Check the fallout link:
- Dependencies
- NOTE: FreshPorts displays only information on required and default dependencies. Optional dependencies are not covered.
- Build dependencies:
-
- python3.9 : lang/python39
- Test dependencies:
-
- python3.9 : lang/python39
- Runtime dependencies:
-
- py39-django41>=4.1.10<4.2 : www/py-django41@py39
- py39-dj41-django-cors-headers>=4.2.0<5 : www/py-dj41-django-cors-headers@py39
- py39-dj41-django-debug-toolbar>=4.1.0<5 : www/py-dj41-django-debug-toolbar@py39
- py39-dj41-django-filter>=23.2<24 : www/py-dj41-django-filter@py39
- py39-dj41-django-graphiql-debug-toolbar>=0.2.0<1 : www/py-dj41-django-graphiql-debug-toolbar@py39
- py39-dj41-django-mptt>=0.14.0<0.15 : www/py-dj41-django-mptt@py39
- py39-dj41-django-prometheus>=2.3.1<2.4 : www/py-dj41-django-prometheus@py39
- py39-dj41-django-redis>=5.3.0<6 : www/py-dj41-django-redis@py39
- py39-dj41-django-rich>=1.7.0<2 : www/py-dj41-django-rich@py39
- py39-dj41-django-rq>=2.8.1<2.9 : devel/py-dj41-django-rq@py39
- py39-dj41-django-tables2>=2.6<2.7 : www/py-dj41-django-tables2@py39
- py39-dj41-django-taggit>=4.0.0<5 : www/py-dj41-django-taggit@py39
- py39-dj41-django-timezone-field>=5.1<6 : www/py-dj41-django-timezone-field@py39
- py39-dj41-djangorestframework>=3.14.0<3.15.0 : www/py-dj41-djangorestframework@py39
- py39-dj41-drf-spectacular>=0.26.4<1 : www/py-dj41-drf-spectacular@py39
- py39-dj41-drf-spectacular-sidecar>=2023.8.1 : www/py-dj41-drf-spectacular-sidecar@py39
- py39-dj41-graphene-django>=3.0.0,1<3.0.0_99,1 : devel/py-dj41-graphene-django@py39
- py39-django-pglocks>=1.0.4<1.1 : www/py-django-pglocks@py39
- py39-bleach>=5.0.1<7 : www/py-bleach@py39
- py39-boto3>=1.26.145<2 : www/py-boto3@py39
- py39-dulwich>=0.21.2<1 : devel/py-dulwich@py39
- py39-feedparser>=6.0.8<7 : textproc/py-feedparser@py39
- py39-Jinja2>=3.1.2<4 : devel/py-Jinja2@py39
- py39-markdown>=3.3.7<3.4 : textproc/py-markdown@py39
- py39-markdown-include>=0.7.0<1 : textproc/py-markdown-include@py39
- py39-mkdocs-material>=9.1.21<10 : textproc/py-mkdocs-material@py39
- py39-mkdocstrings>=0.17.0<1 : textproc/py-mkdocstrings@py39
- py39-netaddr>=0.8.0<1 : net/py-netaddr@py39
- py39-pillow>=9.5.0 : graphics/py-pillow@py39
- py39-psycopg2>=2.9.6<3 : databases/py-psycopg2@py39
- py39-sentry-sdk>=1.21.1<2 : devel/py-sentry-sdk@py39
- py39-social-auth-app-django>=5.2.0<6 : www/py-social-auth-app-django@py39
- py39-social-auth-core>=4.4.2<5 : security/py-social-auth-core@py39
- py39-svgwrite>=1.4.3<2 : graphics/py-svgwrite@py39
- py39-tablib>=3.5.0<4 : textproc/py-tablib@py39
- py39-tzdata>=2023.3 : devel/py-tzdata@py39
- py39-yaml>=6.0<7 : devel/py-yaml@py39
- py39-gunicorn>=20.1.0<21 : www/py-gunicorn@py39
- python3.9 : lang/python39
- Library dependencies:
-
- libpq.so.5 : databases/postgresql13-client
- There are no ports dependent upon this port
Configuration Options:
- ===> The following configuration options are available for netbox-3.5.9:
EXAMPLES=on: Build and/or install examples
===> Use 'make config' to modify these settings
- Options name:
- net-mgmt_netbox
- USES:
- cpe pgsql:11+ python
- pkg-message:
- For install:
- Please note that NetBox requires a PostgreSQL database server, which uses its
built-in network address datatypes. Thus NetBox won't work with other RDBMS's,
e.g. MySQL, MariaDB, etc.
For installation instructions please refer to the related wiki page:
- https://wiki.freebsd.org/Ports/net-mgmt/netbox
- If upgrading
- As always it is strongly encouraged to make a backup of the database before the
database migrations will be executed.
The following steps are required to finish the upgrade:
1. Run database migrations, trace any missing cable paths, build the embedded
documentation, collect static files, remove stale content files, delete any
expired user sessions and clear the cache.
# cd /usr/local/share/netbox
# python3.9 manage.py migrate
# python3.9 manage.py trace_paths --no-input
# mkdocs build
# python3.9 manage.py collectstatic --no-input
# python3.9 manage.py remove_stale_contenttypes --no-input
# python3.9 manage.py reindex --lazy
# python3.9 manage.py clearsessions
# python3.9 manage.py clearcache
2. Restart WSGI/httpd environment (supervisord/apache/nginx/etc.)
- If upgrading from < 3.0.4:
- /!\ WARNING /!\
The NetBox 3.0 release contains major changes, so at least items 1.), 2.) and
3.) must be checked before proceeding with the upgrade!
/!\ WARNING /!\
1. Please ensure that your local installation of net-mgmt/netbox is at
the 2.11 release before attemping to upgrade to NetBox 3.0 or later.
2. Please also note that the previously deprecated secrets functionality has
been removed with NetBox 3.0. This means, all of the secrets still remain
in the database once upgraded, only the secrets functionality on the part of
NetBox is no longer given.
In order to continue to be able to access the stored secrets as usual (and
then possibly migrate them to another solution, e.g. security/vault), please
install the security/py-netbox-secretstore port once NetBox has been
upgraded to 3.x and follow its installation instructions how to enable the
plugin.
3. If plugins are used, they should be temporarily deactivated to avoid
disruptions during the upgrade process.
4. Following items should be checked as well:
* The default CSV export format for all objects now includes all available
data from the object list. Additionally, the CSV headers now use human-
friendly titles rather than raw field names. If backward compatibility
with the old format is desired, export templates can be written to
reproduce it.
* The "invalidate" management command (which clears cached database queries)
is no longer needed and has been removed.
* Support for queryset caching configuration (caching_config) has been
removed from the plugins API.
* The cacheops_* metrics have been removed from the Prometheus exporter.
* The "display_field" keyword argument has been removed from custom script
"ObjectVar" and "MultiObjectVar" fields. These widgets will use the
display value provided by the REST API.
* The deprecated "display_name" field has been removed from all REST API
serializers. (API clients should reference the display field instead.)
* The redundant REST API endpoints for console, power, and interface
connections have been removed. The same data can be retrieved by querying
the respective model endpoints with the ?connected=True filter applied.
* Several changes to the REST API were made as well. Please check the
changelogs for further details.
5. There's a new sample script for NetBox housekeeping tasks, which should run
once a day. If the EXAMPLES option is enabled (which is the default) it can
be found in the following directory:
/usr/local/share/examples/netbox/850.netbox-housekeeping.sample
Please run following commands to enable the new script:
# cp /usr/local/share/examples/netbox/850.netbox-housekeeping.sample /usr/local/etc/periodic/daily/850.netbox-housekeeping
# chmod 555 /usr/local/etc/periodic/daily/850.netbox-housekeeping
# sysrc -f /etc/periodic.conf daily_netbox_housekeeping_enable="YES"
- If upgrading from < 3.0.12_1:
- Please run the following command to make the online help available that was
previously missing:
# cd /usr/local/share/netbox
# python3.9 manage.py collectstatic --no-input
- If upgrading from < 3.1.6:
-
1. Please make sure that the PostgreSQL server for the NetBox instance is
running version 10 or higher. This is because PostgreSQL 9.6 is End-of-Life
since November 2021 and NetBox 3.1 makes use of the "macaddr8" field which
was introduced with PostgreSQL 10.
2. Following items should be checked as well:
* The tenant and tenant_id filters for the Cable model now filter on the
tenant assigned directly to each cable, rather than on the parent object
of either termination.
* The cable_peer and cable_peer_type attributes of cable termination models
have been renamed to link_peer and link_peer_type, respectively, to
accommodate wireless links between interfaces.
* Exported webhooks and custom fields now reference associated content
types by raw string value (e.g. "dcim.site") rather than by
human-friendly name.
* The 128GFC interface type has been corrected from 128gfc-sfp28 to
128gfc-qsfp28.
* Several changes to the REST API were made as well. Please check the
changelogs for further details.
- If upgrading from < 3.2.4:
- /!\ WARNING /!\
The NetBox 3.2 release contains major changes, so at least items 1.), 2.) and
3.) must be checked before proceeding with the upgrade!
/!\ WARNING /!\
1. This release includes a database migration that will remove the "asn",
"contact_name", "contact_phone", and "contact_email" fields from the site
model. (These fields have been superseded by the ASN and contact models
introduced in NetBox v3.1.)
To protect against the accidental destruction of data, the upgrade process
will fail if any sites still have data in any of these fields. To bypass
this safeguard, set the NETBOX_DELETE_LEGACY_DATA environment variable when
running the upgrade script, which will permit the destruction of legacy
data.
A set of migration scripts is available to assist with the migration of
legacy site data:
https://github.com/netbox-community/migration-scripts
2. NetBox v3.2 requires Python 3.8 or later.
3. If the NetBox Plugin "net-mgmt/py-netbox-plugin-extension" is used, please
disable it before the migrations are applied. This can be done by removing
the entry "netbox_plugin_extensions" from the "PLUGINS" section in the
NetBox configuration.
Once the upgrade is done, this port/package can be safely removed as it's no
longer required.
4. Following items should be checked as well:
* The embedded documentation now needs to be built locally as the procedure
requires a running instance of NetBox:
# cd /usr/local/share/netbox
# mkdocs build
Please also refer to the general updating instructions as this needs to
be done with every future update of NetBox.
* Automatic redirection of legacy slug-based URL paths has been removed.
URL-based slugs were changed to use numeric IDs in v2.11.0.
* The "asn" query filter for sites now matches against the AS number of
assigned ASN objects.
* The "created" field of all change-logged models now conveys a full
datetime object, rather than only a date. (Previous date-only values
will receive a timestamp of 00:00.) While this change is largely
unconcerning, strictly-typed API consumers may need to be updated.
* A "pre_run()" method has been added to the base Report class. Although
unlikely to affect most installations, you may need to alter any reports
which already use this name for a method.
* Webhook URLs now support Jinja2 templating. Although this is unlikely to
introduce any issues, it's possible that an unusual URL might trigger a
Jinja2 rendering error, in which case the URL would need to be properly
escaped.
* Several changes to the REST API were made as well. Please check the
changelogs for further details.
- If upgrading from < 3.2.5:
- Please note that the general update instructions got another command that needs
to be issued after each update:
# python3.9 manage.py clearcache
- If upgrading from < 3.3.4:
- The NetBox 3.3 release contains some breaking API changes, so please check the
following items before running the database migrations:
* Device position, device type height, and rack unit values are now reported
as decimals (e.g. 1.0 or 1.5) to support modeling half-height rack units.
* The "nat_outside" relation on the IP address model now returns a list of zero
or more related IP addresses, rather than a single instance (or None).
* Several fields on the cable API serializers have been altered or removed to
support multiple-object cable terminations:
+------------------------------+------+-------------------------------+------+
| Old Name | Type | New Name | Type |
+------------------------------+------+-------------------------------+------+
| termination_a_type | str | Removed | - |
| termination_b_type | str | Removed | - |
| termination_a_id | int | Removed | - |
| termination_b_id | int | Removed | - |
| termination_a | obj | a_terminations | list |
| termination_b | obj | b_terminations | list |
+------------------------------+------+-------------------------------+------+
* As with the cable model, several API fields on all objects to which cables
can be connected (interfaces, circuit terminations, etc.) have been changed:
+------------------------------+------+-------------------------------+------+
| Old Name | Type | New Name | Type |
+------------------------------+------+-------------------------------+------+
| link_peer | obj | link_peers | list |
| link_peer_type | str | link_peers_type | str |
| connected_endpoint | obj | connected_endpoints | list |
| connected_endpoint_type | str | connected_endpoints_type | str |
| connected_endpoint_reachable | bool | connected_endpoints_reachable | bool |
+------------------------------+------+-------------------------------+------+
* The cable path serialization returned by the "/paths/" endpoint for
pass-through ports has been simplified, and the following fields removed:
"origin_type", "origin", "destination_type", "destination". (Additionally,
"is_complete" has been added.)
* Several changes to the REST API were made as well. Please check the
changelogs for further details.
* The netbox sample rc script got a new "upgrade" directive that also
simplifies the upgrade process (database migrations, building the embedded
documentation, etc.).
- If upgrading from < 3.4.5:
- 1. Please make sure that the PostgreSQL server for the NetBox instance is
running version 11 or higher. This is because PostgreSQL 10 is End-of-Life
since November 2022 and Django 4.1 requires PostgreSQL 11 as a minimum.
2. The NetBox 3.4 release contains some breaking changes, so the following
items should be checked as well:
* Device and virtual machine names are no longer case-sensitive. Attempting
to create e.g. "device1" and "DEVICE1" within the same site will raise a
validation error.
* The "asn", "noc_contact", "admin_contact", and "portal_url" fields have
been removed from the provider model. Please replicate any data remaining
in these fields to the ASN and contact models introduced in NetBox v3.1
prior to upgrading.
* The "content_type" fields on the CustomLink and ExportTemplate models have
been renamed to "content_types" and now support the assignment of multiple
content types per object.
* Within the Python API, the "cf" property on an object with custom fields
now returns deserialized values. For example, a custom field referencing
an object will return the object instance rather than its numeric ID.
To access the raw serialized values, reference the object's
"custom_field_data" attribute instead.
* The "NetBoxModelCSVForm" class has been renamed to
"NetBoxModelImportForm". Backward compatability with the previous name
has been retained for this release, but will be dropped in NetBox v3.5.
3. Please note that the general update instructions got another command that
needs to be issued after each update:
# python3.9 manage.py reindex --lazy
The netbox sample rc script has also been adapted accordingly for this
purpose.
- If upgrading from < 3.5.2:
- 1. If the plugin security/py-netbox-secretstore is used, which is no longer
maintained by upstream, the following steps must be done before upgrading to
NetBox 3.5:
* Migrate from security/py-netbox-secretstore (= 1.4.2_2) to
security/py-netbox-secrets (= 1.7.6) with a NetBox 3.4.x instance.
It is very important that the versions of py-netbox-secretstore and
py-netbox-secrets match as specified otherwise the migration will not
be successful.
The reason for this is that py-netbox-secrets 1.8.x is not backwards
compatible with Netbox 3.4. For further details please see the updating
instructions of py-netbox-secretstore or the UPDATING entry of 2023-05-11.
2. The NetBox 3.5 release contains some breaking changes, so the following
items should be checked as well:
* The "account: field has been removed from the provider model.
This information is now tracked using the new provider account model.
Multiple accounts can be assigned per provider.
* A minimum length of 50 characters is now enforced for the SECRET_KEY
configuration parameter.
* The JobResult model has been moved from the "extras" app to "core" and
renamed to Job. Accordingly, its REST API endpoint has been moved from
"/api/extras/job-results/" to "/api/core/jobs/".
* The "obj_type" field on the Job model (previously JobResult) has been
renamed to "object_type" for consistency with other models.
* The JOBRESULT_RETENTION configuration parameter has been renamed
to JOB_RETENTION.
* The "obj" context variable is no longer passed when rendering custom
links: Use "object" instead.
* The REST API schema is now generated using the OpenAPI 3.0 spec
* The URLs for the REST API schema documentation have changed:
- "/api/docs/" is now "/api/schema/swagger-ui/"
- "/api/redoc/" is now "/api/schema/redoc/"
- If upgrading from < 3.5.4:
- If a separate configuration file is used that does not have an ".py" extension,
the following message may appear when the netbox rc script is started:
!!!
!!! WARNING: configuration file should have a valid Python extension.
!!!
In this case, the existing configuration file should be provided with a ".py"
extension and if set, the rc variable "netbox_config" should also point to the
configuration file with the new file extension.
The netbox sample rc script, which is provided via the EXAMPLES option, has
been adjusted accordingly. This also includes a fix for the default path of
the configuration if the rc variable "netbox_config" is not set.
- Master Sites:
|
Number of commits found: 4
Commit History - (may be incomplete: for full details, see links to repositories near top of page) |
Commit | Credits | Log message |
3.5.9 29 Aug 2023 07:25:19 |
Kai Knoblich (kai) |
net-mgmt/netbox: Update to 3.5.9
Changelog:
Enhancements:
* Dynamically render location and device lists under site and
location views
* Display assigned values count per object type under custom field view
* Enable filtering IP ranges by containing prefix
* Include request object in custom link renderer on tables
* Move child VLANs list to a separate tab under VLAN group view
* Pass additional HTTP headers through to custom script context
* Introduce empty lookup for numeric value filters
Bug Fixes: (Only the first 15 lines of the commit message are shown above ) |
3.5.8 17 Aug 2023 10:33:13 |
Kai Knoblich (kai) |
net-mgmt/netbox: Update to 3.5.8
Changelog:
Enhancements:
* Ship a validation schema for the device type library with each release
* Add support for specifying import/export route targets during VRF
bulk import
* Automatically populate any VDC assignments from the parent when adding
a child interface via the UI
* Add 400GE CFP2 interface type
* Add human-friendly speed column to interfaces table
* Add "assigned" filter for IP addresses
* List installed plugins on the server error report page
* Add 200 and 400 Gbps speeds to dropdown choices on interface form (Only the first 15 lines of the commit message are shown above ) |
3.5.7 01 Aug 2023 06:50:45 |
Kai Knoblich (kai) |
net-mgmt/netbox: Update to 3.5.7
Changelog:
Enhancements:
* Move non-rack devices list to a separate tab under the rack view
* Mask sensitive parameters when viewing a configured data source
* Add IEC 10609-1 and NBR 14136 power port & outlet types
* Implement a faster initial poll for report & script results
* Add 100GBASE-X-DSFP and 100GBASE-X-SFPDD interface types
Bug Fixes:
* Fix Markdown support for table cell alignment
* Fix missing script results when fetched via REST API
* Remove extraneous VLAN group field from bulk edit form for interfaces
* Permit unauthenticated access to content types REST API endpoint when
LOGIN_REQUIRED is false
* Fix exception when importing device type missing rack unit
height value
https://github.com/netbox-community/netbox/releases/tag/v3.5.7
MFH: 2023Q3
(cherry picked from commit 34c410cffa52f78b7c9267255fe1184863568a01) |
3.5.6 12 Jul 2023 04:30:09 |
Kai Knoblich (kai) |
net-mgmt/netbox: Update to 3.5.6
Changelogs since 3.5.4:
Enhancements:
* Annotate VLAN group utilization
* Add "copy to clipboard" buttons in UI for IP addresses
* Add 100GE QSFP-DD interface type
* Include additional contact details on contact assignments table
* Associate contact assignments with their objects in the change log
Bug Fixes:
* Fix REST API validation of null values for several
interface attributes
* Fix exception when clicking "create and add another" to add a cable (Only the first 15 lines of the commit message are shown above ) |
Number of commits found: 4
|