Nautobot v2.1¶
This document describes all new features and changes in Nautobot 2.1.
Release Overview¶
Added¶
Job File Outputs (#3352, #4820)¶
The Job
base class now includes a create_file(filename, content)
method which can be called by a Job to create a persistent file with the provided content when run. This file will be linked from the Job Result detail view for subsequent downloading by users, and can also be downloaded via the REST API (/api/extras/file-proxies/<id>/download/
) as desired.
Info
The specific storage backend used to retain such files is controlled by the JOB_FILE_IO_STORAGE
settings variable. The default value of this setting uses the Nautobot database to store output files, which should work in all deployments but is generally not optimal and better alternatives may exist in your specific deployment. Refer to the documentation link above for more details.
Tip
Users must have permission to view
the extras > file proxy
object type in order to list and download files from the REST API.
External Integration Model (#4694)¶
A new ExternalIntegration
model has been added which provides a centralized store for data such as URLs and credentials that are used to access systems external to Nautobot. This information can then be used by jobs or apps to perform actions such as creating DNS records or updating configuration management tickets.
Changed¶
Data Exports as a System Job (#4745)¶
The data export functionality in all object list views (allowing export of all or a filtered subset of objects to CSV, YAML, and/or as defined by an ExportTemplate
) has been changed from a synchronous operation to an asynchronous background task, leveraging the new ExportObjectList
system Job. As a result, exports of thousands of objects in a single operation will no longer fail due to browser timeout.
Tip
Users now must have the run
action permission for extras > job
(specifically the nautobot.core.jobs.ExportObjectList
Job) in order to export objects, in addition to the normal view
permissions for the objects being exported.
Nautobot UI Reskin (#4677, #4765)¶
Nautobot UI is updated with customized Nautobot Bootstrap theme, giving it a brand new look. In addition, Nautobot's navigation bar is moved from the top to the left. Please checkout https://next.demo.nautobot.com/ for the updated UI.
Removed¶
Remove HIDE_RESTRICTED_UI toggle (#4787)¶
Support for HIDE_RESTRICTED_UI
has been removed. UI elements requiring specific permissions will now always be hidden from users lacking those permissions. Additionally, users not logged in will now be automatically redirected to the login page.
v2.1.0-beta.1 (2023-11-30)¶
Added¶
- #1905 - Added the ability to automatically apply
isnull
filters when model field is nullable. - #1905 - Enhanced
status
filters to support filtering by ID (UUID) as an alternative to filtering byname
. - #3352 - Added
Job.create_file()
API andJOB_FILE_IO_STORAGE
configuration setting. - #3994 - Added "Data Provenance" section to the Advanced tab in ObjectDetailView to display the user that created and last updated the object.
- #4272 - Added bulk edit and bulk destroy views to Namespaces.
- #4646 - Added read-only view in admin panel for Django admin log entries.
- #4694 - Added
ExternalIntegration
model to track connections to systems external to Nautobot. - #4745 - Added
ExportObjectList
system Job. - #4750 - Added "copy" button support to titles of all object retrieve views.
- #4750 - Added support for
BRANDING_FILEPATHS["header_bullet"]
to customize the view header appearance. - #4765 - Added support for
BRANDING_FILEPATHS["nav_bullet"]
to customize the nav menu appearance. - #4796 - Added InterfaceRedundancyGroupAssociation to GraphQL.
- #4796 - Added IPAddressToInterface to GraphQL.
- #4796 - Added VRFDeviceAssignment to GraphQL.
- #4796 - Added VRFPrefixAssignment to GraphQL.
- #4820 - Added listing of related
files
to the/api/extras/job-results/
REST API. - #4820 - Added read-only REST API for the FileProxy model (files generated by a Job run), including a
/download/
endpoint for downloading the file content.
Changed¶
- #4677 - Updated and customized nautobot UI bootstrap theme with LESS variables.
- #4745 - Changed object export (CSV, YAML, export-template) to run as a background task, avoiding HTTP timeouts when exporting thousands of objects in a single operation.
- #4750 - Refined CSS to Nautobot Bootstrap UI.
- #4765 - Moved navbar to the left.
- #4786 - Lightened table row background color in dark mode.
- #4808 - Make NavItem link text margin-right slightly larger.
Removed¶
- #4765 - Removed "Import" buttons from navbar dropdown menus.
- #4787 - Removed support for
HIDE_RESTRICTED_UI
. UI elements requiring specific permissions will now always be hidden from users lacking those permissions. Additionally, users not logged in will now be automatically redirected to the login page.
Fixed¶
- #4646 - Fixed a bug in
ObjectPermission
whereusers.user
permissions could not be created. - #4786 - Fixed default button background color in dark mode.
- #4818 - Fixed various inconsistencies with UI reskin in dark mode.
- #4862 - Fixes issues with uninstalled apps & lingering contenttypes referenced in changelog.
- #4882 - Fixed a regression in the rendering of the Jobs table view.