Last Month in Nautobot – December 2024
Welcome to our monthly Nautobot community update! We’ll dive into the latest updates across the Nautobot community, highlighting the key milestones, releases, and noteworthy contributions. From new features and enhancements to bug fixes and events, there’s always something happening in our dynamic ecosystem. Open source is at the core of our values, empowering individuals and organizations to collaborate, innovate, and make a positive impact together. This monthly blog post is our way of celebrating the accomplishments and contributions of our Nautobot community members.
Nautobot Core
Releases – Stable
- Nautobot: v2.3.14 – 2024-12-19
- #6548 – Added logic to set the
parent
in theclean()
method of the Prefix model, ensuring correct assignment during validation. - #6518 – Added VRFs column to Prefixes and Child Prefixes tables.
- #6531 – Restricted the
id
filter field to use only the__n
(negation) lookup filter. - #6548 – Changed the save method of the
Prefix
model to reparent subnets and IPs only when thenetwork
,namespace
, orprefix_length
fields are updated. - #4056 – Fixed filter of add_tags and remove_tags of bulk edit based on content type.
- #6204 – Fixed out-of-memory errors when
LogsCleanup
system job resulted in cascade deletion of many related objects (such asJobLogEntry
ornautobot_ssot.SyncLogEntry records
). - #6470 – Fixed untagged VLAN dropdown options mismatch in InterfaceEditForm and in InterfaceBulkEditForm.
- #6496 – Fixed
/ipam/prefixes/<UUID>/available-ips/
to correctly consider IPs under child Prefixes. - #6496 – Fixed
Prefix.get_first_available_ip()
method to not return IPs taken by child Prefixes. - #6664 – Fixed
circuit_type
column not included correctly in CircuitTable default columns. - #6678 – Fixed incorrect copy button behavior on global search page.
- #6548 – Added logic to set the
- Nautobot: v2.3.13 – 2024-12-10
- #6615 – Updated
Django
to~4.2.17
due toCVE-2024-53907
andCVE-2024-53908
. - #4817 – Added
Cluster
field on DeviceBulkEditForm. - #5333 – Added
Comments
field on DeviceBulkEditForm. - #6498 – Added support for an additional
suffix
when utilizing TableExtension to support tables like IPAddressDetailTable. - #6586 – Added description and weight on RoleBulkEditForm.
- #6605 – Added
BaseTable
support for adata_transform_callback
function that can be used to modify the table data after performing automatic QuerySet optimizations. (Several IPAM tables now use this functionality.) - #6605 – Enhanced
LinkedCountColumn
to support adistinct
parameter to handle cases where counts may otherwise be incorrect. - #6605 – Added
ip_addresses
andhas_ip_addresses
filter support to Device, Interface, and VirtualMachine FilterSets. - #6613 – Enhanced Prefix detail view “Child Prefixes” table to render associated Locations more intelligently.
- #6614 – Enhanced IP Address tables to show the name of the associated Interface or VM Interface if only a single such association is present for a given IP Address.
- #6166 – Enhanced the REST API to generally make it possible to create objects with known ids on request.
- #3124 – Fixed inability of ImageAttachment and DeviceType API endpoints to accept
multipart/form-data
file uploads. - #5166 – Fixed a
ProgrammingError
when applying permissions containing network-address-based constraints. - #6466 – Fixed
table_config
field not showing up correctly in the Saved View modal. - #6498 – Fixed error when using TableExtension when the table is missing Meta.default_columns.
- #6605 – Improved rendering performance of the IPAddress list view in cases where the
Interfaces
,Devices
,VMInterfaces
,Virtual Machines
, and/orAssigned
columns are not shown. - #6605 – Improved performance of
TreeModel.display
calculation by making better use of the cache. - #6609 – Fixed unnecessary call to the database when logging from a Job with the parameter
extra={"skip_db_logging": True}
. - #6624 – Fixed issue with
group_sync.py
where it was accessing the settings using an environment variable name vs the actual settings name. - #6624 – Fixed the
SOCIAL_AUTH_PIPELINE
settings to include the entire path of thegroup_sync
function.
- #6615 – Updated
Releases – LTM 1.6
- Nautobot: v1.6.29 – 2024-12-10
- #5911 – Updated
zipp
to3.19.2
to addressCVE-2024-5569
. This is not a direct dependency so it will not auto-update when upgrading. Please be sure to upgrade your local environment. - #6625 – Patched
set_values()
method of Query class from django.db.models.sql.query to addressCVE-2024-42005
. - #5924 – Fixed the redirect URL for the Device Bay Populate/Depopulate view to take the user back to the Device Bays tab on the Device page.
- #6502 – Fixed a bug in the Dockerfile that prevented
docker build
from working on some platforms. - #6502 – Fixed Docker builds failing in GitLab CI.
- #5911 – Updated
Apps Ecosystem
- Nautobot App ChatOps: v3.1.3 – 2024-12-20
- #356 – Fixed “Server has gone away” error in Slack socket mode.
- Nautobot Ansible: v5.5.0 – 2024-12-20
- Nautobot App ChatOps: v3.1.2 – 2024-12-19
- #350 – Fixed synchronous function running in the async Slack socket mode.
- Nautobot App Golden Config: v2.2.2 – 2024-12-18
- Nautobot App Floor Plan: v2.5.0 – 2024-12-17
- #124 – Added child floor plan tab to display child location floor plans in a list.
- #131 – Fixed wrap-around for letters going negative from A to ZZZ and updated display of labels in form.
- #135 – Changed floor_plan column on FloorPlanTable to orderable=False to fix bug.
- #136 – Fixed grid label spacing on Y-Axis by checking the length of all labels to determine the correct offset.
- Helm Charts: v2.4.2 – 2024-12-13
- #480 – Added functionality for auto-deployments in configuration changes.
- Upgraded Nautobot from 2.3.12 to 2.3.13.
- Upgraded nginx-prometheus-exporter image from 1.3.0 to 1.4.0.
- Upgraded Bitnami common subchart from 2.27.2 to 2.28.0.
- Nautobot App SSoT: v3.3.0 – 2024-12-06
- #599 – Added Citrix ADM integration.
- #600 – Added integration with Slurpit.
- #310 – Added common TypedDicts for Contrib SSoT.
- #449 – Added
delete_records
flag to the ServiceNow DataTarget job. - #588 – Added support for Software Version object in DNA Center integration.
- #593 – Added ability to rename Network in Meraki and Datacenter in DNA Center integrations using location_map.
- #593 – Added support for SoftwareVersion in Bootstrap integration.
- #590 – Improved error message for validated save in contrib model.
- #588 – Removed use of OS Version CustomField in DNA Center integration. Now uses Software Version from Nautobot 2.2 and/or Device Lifecycle Management SoftwareLCM object if found.
- #411 – Fixed imports in CustomFields migration that was causing installation issues.
- #449 – Fixed logic used for loading location records to make ServiceNow SSoT Nautobot 2.x compatible.
- #467 – Fixed get_tags_by_type() to handle possible RpcError Exception being thrown.
- #582 – Fixed erroneous print statement in sync logs.
- #585 – Fixed use of DLM classes with Bootstrap integration.
- #588 – Fixed hostname mapping functionality in DNA Center integration. It is now available in the Job form.
- #593 – Fixed Meraki loading of Nautobot Prefixes that have multiple Locations assigned.
- #593 – Fixed DNA Center loading incorrect location names for Devices.
- #593 – Fixed KeyError being thrown when port is missing from uplink_settings dict in Meraki integration.
- #593 – Fixed error in Bootstrap integration in loading ValidatedSoftwareLCM when SoftwareLCM doesn’t exist.
- #593 – Fixed DoesNotExist thrown when attempting to load ContentType that doesn’t exist in Bootstrap integration.
- #599 – Fixed Bootstrap signals that are using create_or_update_custom_field() to pass apps. This was done to correct a bug causing Nautobot to crash during startup.
- #607 – Fixed hostname_mapping functionality in Citrix ADM integration.
- #610 – Fixed delete function for NautobotValidatedSoftware so UUID is used to find object instead of querying for Platform and Software object.
- #612 – Fixed AttributeError on attempting to load Platforms with no Manufacturer assigned.
- #614 – Fixed creating platforms with no Manufacturer assigned.
- #614 – Fixed time_zone attribute normalization on Location objects.
- #616 – Ensure Devices missing Platform are not loaded from DNA Center.
- Nautobot App BGP Models: v2.3.0 – 2024-12-02
- Added Python 3.12 support.
Community
- Did you miss AutoCon 2 in Denver last year? Or maybe you just want to rewatch one of the best sessions from the event. Either way, here are Aaron Drydale of QuikTrip and our own Joe Wesch with their session recounting how QuikTrip and Network to Code automated their hardware refresh process, Don’t Panic! QuikTrip’s Automated Network Keeps the Coffee Brewing (https://youtu.be/ghchIGDCNRg).
Conclusion
Do you have any cool Nautobot-related projects we should write about? Swing by the Network to Code Slack -> channel #nautobot
and write us a quick line! Sign up here if you don’t have an account.
-Gary
Contact Us to Learn More
Share details about yourself & someone from our team will reach out to you ASAP!