Last Month in Nautobot – November 2024

Blog Detail

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.12 – 2024-11-25
    • #6532 – Added a keyboard shortcut (⌘+enter or ctrl+enter) to submit forms when typing in a textarea.
    • #6543 – Defined a generic SSO group authentication module that can be shared by any OAuth2/OIDC backend.
    • #6550 – Added OSFP-XD (800GE and 1600GE) and OSFP1600 interface types.
    • #6242 – Fixed “copy” button on Device tabbed views to now only copy the device name.
    • #6478 – Fixed inconsistent rendering of the Role field.
    • #6509 – Disallowed association of ObjectMetadata as metadata to other ObjectMetadata records.
    • #6509 – Removed unused object-detail view for ObjectMetadata records.
    • #6519 – Fixed vrf field options not loading in VMInterfaceBulkEditForm, VMInterfaceForm, and VMInterfaceCreateForm.
    • #6519 – Added missing VRF entry in VMInterface detail view.
    • #6533 – Fixed an issue where the string representation of the Note model would throw an error if accessed before saving it to the database.
    • #6547 – Fixed incorrect VRF filter specified on VRF column on Prefix Table.
    • #6564 – Fixed an AttributeError raised when an App overrides a NautobotUIViewSet view.
  • Nautobot: v2.3.11 – 2024-11-12
    • #6231 – Added nautobot.apps.utils.get_related_field_for_models() helper function.
    • #6231 – Added optional lookup parameter to LinkedCountColumn.
    • #5321 – For bulk delete all objects view, only show the confirmation dialog without the table that shows the objects that would be deleted.
    • #6231 – Changed most related-object-count table columns (e.g., the “Locations” column in a Prefix table) to, if only a single related record is present (e.g., a single Location is associated with a given Prefix), display that related record directly instead of just displaying 1.
    • #6465 – For bulk edit all objects view, skip rendering the table of related objects in the confirmation page.
    • #6414 – Fixed layout bug in browsable REST API.
    • #6442 – Fixed an issue where GitLab CI pipelines fail using all versions of official Docker images.
    • #6453 – Fixed issue where interfaces cannot be removed/deleted from an Interface for Modules.
    • #6472 – Fixed incorrect placement of buttons in create and edit views.
    • #6472 – Fixed the panel width in multiple create and edit views.
    • #6490 – Added missing vrf_count column to Prefix table in PrefixListView.
    • #6491 – Added missing vrf field to VMInterfaceForm and VMInterfaceCreateForm.
    • #6492 – Fixed vlan_group field not being filtered by locations field input on VLANForm.

Apps Ecosystem

  • Nautobot App Golden Config: v2.2.1 – 2024-11-27
    • #827 – Added a web UI for Jinja template developers to render intended configurations.
    • #831 – Resolved issue with tests failing in Nautobot 2.3.11.
    • #835 – Resolved error when accessing the Golden Config Settings list view in Nautobot v2.3.11 and higher.
  • Nautobot App Golden Config: v2.2.0 – 2024-11-13
    • Added Python 3.12 support.
    • Added REST API endpoint for Jinja as first part of journey toward a Jinja live editor.
  • Pynautobot: v2.4.2 – 2024-11-25
    • Added back first_run logic that was removed in error.
    • Added JSON field of filter to dynamic groups.
  • Pynautobot: v2.4.1 – 2024-11-07
    • Fixed cloud models not returning JSON fields.
  • Pynautobot: v2.4.0 – 2024-11-04
    • Added support for all new cloud models in Nautobot 2.3+.
  • Nautobot App ChatOps: v3.1.1 – 2024-11-19
    • #341 – Added a “Grafana disabled” view in case a user clicks on a Grafana nav menu item when the Grafana integration is disabled.
    • #341 – Removed all Grafana integration API files since there are no API views provided by Grafana integration.
    • #341 – Fixed django-constance not being upgradable due to this app accessing the database before migrations could run.
    • #341 – Removed conditional logic for adding Grafana navigation menu items.
    • #341 – Fixed Nautobot v2.3 incompatibility caused by saved views not being able to determine the models’ table classes.
    • #341 – Added exception handling for cases where diffsync is not installed, since it’s marked as optional.
  • Helm Charts: v2.4.0 – 2024-11-15
    • #471 Added property to deploy extra k8s objects (manifests).
    • #463 Fixed allowing multiple probe types and not only pre-configured probe types.
    • Upgraded Nautobot from 2.3.7 to 2.3.11.
    • Upgraded Bitnami common subchart from 2.26.0 to 2.27.0.
  • Nautobot App Secrets Providers: v3.2.0 – 2024-11-08
    • #88 – Added 1Password as a Secrets Provider.
    • #150 – Added support for Python 3.12.
  • Nautobot App Firewall Models: v2.2.0 – 2024-11-05
    • #266 – Added Python 3.12 support.
    • #222 – Fixed server error when navigating to Policy detail view.
    • #233 – Fixed name fields being optional on multiple forms.
    • #233 – Fixed assigned devices and assigned dynamic groups fields not marked as optional on NATPolicy and Policy.
    • #245 – Fixed server error when navigating to NATPolicy detail view.
    • #245 – Fixed server error when updating device/dynamic group weights on NATPolicy.
    • #272 – Fixed migrations failing when no statuses exist in the database and various other migration issues.
    • #275 – Fixed Capirca failures with Nautobot v2.3.3 or higher.
    • #280 – Fixed Capirca policy html templates.
  • Nautobot App Data Validation Engine: v3.2.0 – 2024-11-05
    • #160 – Updated sqlparse dependency to 0.5.0 due to GHSA-2m57-hf25-phgg.
    • #163 – Updated jinja2 dependency to 3.1.4 due to CVE-2024-34064.
    • #167 – Updated requests dependency to 2.32.2 due to CVE-2024-35195.
    • #171 – Updated urllib3 dependency to 2.2.2 due to CVE-2024-37891.
    • #177 – Added support for Python 3.12.
    • #183 – Added support for filtering by Compliance Class Name with a name longer than twenty characters and to filter by multiple names at the same time.
    • #162 – Updated minimum Nautobot version to 2.1.9.

Community


Conclusion

Do you have any cool Nautobot-related project 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



ntc img
ntc img

Contact Us to Learn More

Share details about yourself & someone from our team will reach out to you ASAP!

Introducing the Bootstrap Integration for the Nautobot SSoT App

Blog Detail

With the v3.2.0 release of the Nautobot SSoT App, a new integration has been added. Presenting Bootstrap, a faster and better way to get Nautobot from 0 to 60. 

What is Bootstrap

Bootstrap is a new Single Source of Truth (SSoT) integration that is included with the Nautobot SSoT app (https://github.com/nautobot/nautobot-app-ssot). This app is a home to multiple integrations which allow a user to sync known information from other Systems of Record (SoR) and represent that information in Nautobot. The beauty is when this information can be aggregated from multiple sources and normalized by Nautobot, which then creates a strong launching pad for automation. You can read more about SSoT with Nautobot here (https://networktocode.com/blog/?tag=ssot). The goal of the Bootstrap integration is to take a fresh Nautobot instance and a couple of YAML files, and “bootstrap” Nautobot to a point where a user can begin adding devices. In a fresh Nautobot instance there are a number of things that are required to be implemented before a Device can be created. For example, manufacturer, platform, location, and location type. The primary goal of the Bootstrap SSoT integration is to quickly add these basic components to Nautobot and reduce the administrative burden on the user. 

Another use of Bootstrap can be to keep these same set of components synchronized between Nautobot instances. This will be discussed later in more detail, but in a nutshell, if you have development, staging, and production instances of Nautobot and need those same set of objects in each environment, you only have to build the YAML file once, then run the Bootstrap to Nautobot job in each instance to create all the objects. 

The final intended use case for Bootstrap is a partial backup of Nautobot data and/or quick creation of local development instances. Ideally, the YAML files should be stored in Git, these can be quickly restored to a fresh installation of Nautobot in the event of database or application corruption. Ideally, device information is stored in another system and a separate SSoT integration can be used to restore that part of the data. The same goes for local development environments and being able to quickly and repeatedly create local environments with actual data instead of creating a bunch of random devices and locations, etc…

What information can be managed with Bootstrap

Currently there are 30 Nautobot models that can be managed with the Bootstrap SSoT integration, with more planned. Each of these models can be enabled/disabled via configuration settings so only what’s needed is processed. As of the writing of this blog (October 2024) here is the list of objects supported:

  • Secret
  • SecretsGroup
  • GitRepository
  • DynamicGroup
  • ComputedField
  • Tag
  • GraphQlQuery
  • Software
  • SoftwareImage
  • ValidatedSoftware
  • TenantGroup
  • Tenant
  • Role
  • Manufacturer
  • Platform
  • LocationType
  • Location
  • Team
  • Contact
  • Provider
  • ProviderNetwork
  • CircuitType
  • Circuit
  • CircuitTermination
  • Namespace
  • RIR
  • VLANGroup
  • VLAN
  • VRF
  • Prefix

Getting started with Bootstrap

There are more detailed instructions within Nautobot Docs https://docs.nautobot.com/projects/ssot/en/latest/admin/integrations/. This overview is intended to be a high level presentation of the basic pieces of the setup. Step one is to get the Nautobot SSoT app installed, environment variables set, and set the configuration in nautobot_config.py since that part requires a reboot of the Nautobot application (for an existing installation). The Nautobot config file should include the following information, modified for your needs. These options should be added to the nautobot_ssot: dictionary under the PLUGINS_CONFIG section of the nautobot_config.py file.

"bootstrap_nautobot_environment_branch": os.getenv("NAUTOBOT_BOOTSTRAP_SSOT_ENVIRONMENT_BRANCH", "develop"),
"bootstrap_models_to_sync": {
   "secret": True,
   "secrets_group": True,
   "git_repository": True,
   "dynamic_group": True,
   "computed_field": True,
   "tag": True,
   "graph_ql_query": True,
   "software": False,
   "software_image": False,
   "validated_software": False,
   "tenant_group": True,
   "tenant": True,
   "role": True,
   "manufacturer": True,
   "platform": True,
   "location_type": True,
   "location": True,
   "team": True,
   "contact": True,
   "provider": True,
   "provider_network": True,
   "circuit_type": True,
   "circuit": True,
   "circuit_termination": True,
   "namespace": True,
   "rir": True,
   "vlan_group": True,
   "vlan": True,
   "vrf": True,
   "prefix": True,
 },
"enable_bootstrap": is_truthy(os.getenv("NAUTOBOT_SSOT_ENABLE_BOOTSTRAP", "false")),

The 2 important environment variables required are NAUTOBOT_BOOTSTRAP_SSOT_ENVIRONMENT_BRANCH and NAUTOBOT_SSOT_ENABLE_BOOTSTRAP. NAUTOBOT_SSOT_ENABLE_BOOTSTRAP should be set to True to enable the integration and NAUTOBOT_BOOTSTRAP_SSOT_ENVIRONMENT_BRANCH should be set to the name of the environment you are deploying (development, staging, production, etc). The value of the environment branch variable will need to match the filename of the environment-specific yaml file, which we will get to in the next section. See Nautobot Docs for instructions on installing apps.  We can see here we have a fresh Nautobot instance with no objects created.

The YAML Files

The next step is to create the YAML representation of the data that’s needed within Nautobot. In this example we will look at just a couple of items (see Nautobot Docs for full examples) Locations, Location Types, Git Repositories, and Tenants. These are common items to have created within Nautobot and are some of the prerequisites to create a Device object. It is highly recommended to utilize a Git Repository to manage this data and that is what this example will use. Once your Git Repository is created, we will create 4 files global_settings.yml, development.yml, staging.yml, production.yml. These should be in the root of the repository as follows:

.
├── development.yml
├── global_settings.yml
├── production.yml
└── staging.yml

We’ll start with addressing global_settings.yml, development.yml, staging.yml, production.yml as those are the most simple. They will all be nearly the same as there is currently only one key inside these files which is git_branch:. This key is the default branch name that will be set for any Git Repository objects created in Nautobot using the Bootstrap integration. If the branch: key is set on a Git Repository in global_settings.yml that will override the key from the environment-specific files.  For example, the environment-specific files should be set up as follows for our example. These files can be named whatever you’d like, just ensure the environment variable NAUTOBOT_BOOTSTRAP_SSOT_ENVIRONMENT_BRANCH matches the filename (minus the .yml extension) as that is how the App looks up the file to load information.

# development.yml

---
git_branch: "development"
# staging.yml

---
git_branch: "staging"
# production.yml

---
git_branch: "production"

The next file we will create is the global_settings.yml file. The information we will use for this example will be as follows (see Docs for more examples).

# global_settings.yml

---
location_type:
  - name: "Region"
    parent: ""
    nestable: True
    description: ""
    content_types: []
  - name: "Site"
    parent: "Region"
    nestable: True
    description: ""
    content_types:
      - "dcim.device"
      - "ipam.namespace"
      - "ipam.prefix"
      - "ipam.vlan"
      - "ipam.vlangroup"
      - "circuits.circuittermination"
  - name: "Building"
    parent: "Site"
    nestable: False
    description: ""
    content_types:
      - "dcim.device"
      - "ipam.namespace"
      - "ipam.prefix"
      - "ipam.vlan"
      - "ipam.vlangroup"
      - "circuits.circuittermination"
location:
  - name: "Southeast"
    location_type: "Region"
    parent: ""
    status: "Active"
    facility: ""
    asn:
    time_zone: "US/Eastern"
    description: ""
    tenant: ""
    physical_address: ""
    shipping_address: ""
    latitude:
    longitude:
    contact_name: ""
    contact_phone: ""
    contact_email: ""
    tags: []
- name: "Atlanta"
    location_type: "Site"
    parent: "Southeast"
    status: "Active"
    facility: "AT1"
    asn: 65001
    time_zone: "US/Eastern"
    description: ""
    tenant: ""
    physical_address: |
      180 Peachtree St NE
      FL 2 , FL 3 , FL 6
      Atlanta, GA 30303
      United States
    shipping_address: |
      Example Company
      180 Peachtree St NE
      Loading Dock 1
      Atlanta, GA 30303
      United States
    latitude:
    longitude:
    contact_name: ""
    contact_phone: ""
    contact_email: ""
    tags: []
  - name: "Atlanta4"
    location_type: "Site"
    parent: "Southeast"
    status: "Active"
    facility: "AT4"
    asn: 65004
    time_zone: "US/Eastern"
    description: ""
    tenant: ""
    physical_address: |
      450 Interstate to N PKWY
      Atlanta, GA 30339
      United States
    shipping_address: |
      Example Company
      450 Interstate to N PKWY
      Loading Dock 1
      Atlanta, GA 30339
      United States
    latitude:
    longitude:
    contact_name: ""
    contact_phone: ""
    contact_email: ""
    tags: []
git_repository:
  - name: "Backbone Config Contexts"
    url: "https://github.com/nautobot/backbone-config-contexts.git"
    branch: "main"
    secrets_group_name: "Github_Service_Account"
    provided_data_type:
      - "config contexts"
  - name: "Datacenter Config Contexts"
    url: "https://github.com/nautobot/datacenter-config-contexts.git"
    secrets_group_name: "Github_Service_Account"
    provided_data_type:
      - "config contexts"
  - name: "Metro Config Contexts"
    url: "https://github.com/nautobot/metro-config-contexts.git"
    secrets_group_name:
    provided_data_type:
      - "config contexts"
  - name: "Access Config Contexts"
    url: "https://github.com/nautobot/access-config-contexts.git"
    secrets_group_name:
    provided_data_type:
      - "config contexts"
tenant:
  - name: "Backbone"
    tenant_group: "Group1"
    description: ""
    tags: []
  - name: "Datacenter"
    tenant_group: "Group2"
    description: ""
    tags: []

As you can see from the example data, each object has a key that corresponds to the Nautobot model to be created. Each key is a list of objects with a certain set of attributes. All attributes should be included even if they are blank. Once these 4 files are created, push them into the Git repository and we’ll then add this repository to Nautobot in the next step. 

Sync Data

Once the Nautobot SSoT app is installed, the YAML data/Repository is ready, and the Bootstrap integration is enabled, the next step is to create a Git Repository in Nautobot that has the word Bootstrap in the name and has a “Provided Contents Type” of Config Contexts (create and select a secrets group as needed for authentication to the repository). 

Once the repository has been synchronized, you can go into Jobs > Jobs > Bootstrap to Nautobot and run the job. Select options as necessary. If you leave the Load Source as Environment Variable it will load from file or git based on the environment variable set. Otherwise if you select file or git in the UI it will override the environment variable setting.

After running the job we see objects created by looking in the SSoT Sync Details in the job results view.

As well as on the Nautobot main dashboard.

You now have some of the basic objects created in Nautobot in a matter of minutes. Plus, now that you have this data, the same information can be deployed to staging and production systems by just changing the NAUTOBOT_BOOTSTRAP_SSOT_ENVIRONMENT_BRANCH in those deployments, adding the Bootstrap data repository, and running the Bootstrap to Nautobot job. This also goes for creating consistent development environments between engineers or for yourself. Over time new objects can be added or removed and the App will handle keeping those items up to date. 

Note: This plugin does not override model inheritance/dependencies, or identifiers within the database itself. For example if you want to remove a Location Type that has Locations assigned to it, you would need to first either delete those locations or assign them to another location type before the App can delete the Location Type. 

You should now have a basic understanding of how the new Bootstrap SSoT Integration works within Nautobot and should be able to manage the supported items within your own Nautobot instance.


Conclusion

We welcome feedback and suggestions on future plans for this plugin via Github Pull Requests or Github Issues.

-Zach Biles



ntc img
ntc img

Contact Us to Learn More

Share details about yourself & someone from our team will reach out to you ASAP!

Last Month in Nautobot – October 2024

Blog Detail

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.

If you’re reading this post, you may also be interested in these Nautobot-related resources published by the Network to Code team last month.

Nautobot Core

Releases – Stable

  • Nautobot: v2.3.10 – 2024-10-29
    • #6421 – Added cacheable CustomField.objects.keys_for_model(model) API.
    • #6421 – Added queryset caching in web_request_context for more efficient Job Hook and webhook dispatching on bulk requests.
    • #6421 – Added logging to JobResults for CustomField provisioning background tasks.
    • #6421 – Added more efficient database calls for most cases of bulk-provisioning CustomField data on model objects.
    • #6421 – Increased soft/hard time limits on CustomField provisioning background tasks to 1800 and 2000 seconds respectively.
    • #6421 – Fixed long-running-at-scale transaction lock on records while adding/removing a CustomField definition.
    • #6441 – Fixed a regression in 2.3.9 that broke the rendering of the Device create/edit form.
  • Nautobot: v2.3.9 – 2024-10-28
    • #4899 – Added TableExtension class to allow app developers to add columns to core tables.
    • #6336 – Added logic to module bay model to ensure that if the position field is empty, its value will be automatically populated from the name of the module bay instance.
    • #6372 – Added environment variable support for setting CSRF_TRUSTED_ORIGINS.
    • #6336 – Enhanced position fields on ModuleBayCreate/UpdateForms to auto-populate their values from name fields.
    • #6386 – Changed GitRepositorySync system Job to run atomically (all-or-nothing), such that any failure in the resync will cause all associated database updates to be reverted.
    • #6386 – Changed behavior of change logging web_request_context() to only reload Job code when a relevant Job Hook is found to apply to the change in question.
    • #6297 – Fixed overly broad scope of the TreeModel invalidate_max_depth_cache signal so that it now correctly only fires for TreeModel instances rather than all models.
    • #6297 – Improved performance of DynamicGroup membership updates/recalculations when dealing with large numbers of member objects.
    • #6386 – Fixed reversed chronological ordering of Job Hooks and webhooks sent from a single web_request_context session.
    • #6400 – Removed misleading help text from ModularComponentForm, as the {module} auto-substitution in names only applies through component _templates_ at present.
    • #6415 – Added missing column software_version to the Device Table in Device List View.
    • #6425 – Fixed bug in which ColoredLabelColumn() wasn’t being applied to the role column on Device/VM interfaces.
  • Nautobot: v2.3.8 – 2024-10-18
    • #5050 – Changed logic to permit VLANs assigned to a device’s location’s parent locations (including parents of parents, etc.) to be assigned to that device’s interfaces.
    • #6297 – Fixed paginator widget to display the current selected per_page value even if it’s not one of the PER_PAGE_DEFAULTS options.
    • #6297 – Added pagination of related-object tables to many IPAM views to avoid errors when very large quantities of related records are present.
    • #6380 – Fixed issue with Installed Apps page trying to render invalid links.
    • #6385 – Restored Prefix.get_child_ips() API mistakenly removed from v2.3.5 through v2.3.7.
  • Nautobot: v2.3.7 – 2024-10-16
    • #2784 – Added assertBodyContains() test helper API to NautobotTestCaseMixin.
    • #6205 – Changed initial Nautobot initialized! message logged on startup to include the Nautobot version number.
    • #6350 – Changed the way that ensure_git_repository logs hashes to include the name of the repository.
    • #6158 – Fixed a UI overflow issue with the Tenant Stats panel.
    • #6299 – Added retry logic and error handling for several cases where an intermittent Redis connection error could cause Celery to throw an exception.
    • #6318 – Fixed duplicate loading of nautobot_config.py during Nautobot startup.
    • #6329 – Added a data migration to fix DynamicGroup group_type values set incorrectly in upgrading to Nautobot 2.3.x.
  • Nautobot: v2.3.6 – 2024-10-03
    • #5903 – Added range field on VLANGroup model.
    • #5903 – Added tags on VLANGroup model.
    • #6304 – Fixed an error during startup when an App included a REST API serializer inheriting from an unexpected base class.
    • #6304 – Fixed a warning during startup about the extras.FileAttachment model.

Apps Ecosystem

  • Pynautobot: v2.3.0 – 2024-10-31
    • #213 – Added the ability to retrieve App endpoints via dir.
    • #214 – Added support for seeing and modifying notes on all models.
    • #217 – Added the ability to provide custom limit and offset parameters.
    • #224 – Changed the Termination.__str__ method to return the display field.
    • #233 – Added the ability to run saved GraphQL queries.
    • #240 – Changed the .all() method to accept the same kwargs as .filter(), essentially making them redundant of each other.
    • #243 – Updated urllib3 dependency to v2.
  • Nautobot App Welcome Wizard: v2.1.0 – 2024-10-24
    • Updated devicetype library Git repository to use Nautobot devicetype library.
  • Nautobot App Design Builder: v2.1.0 – 2024-10-23
    • Added design deployment mechanism to track objects that are part of a design deployment.
    • Added custom validator to protect objects and attributes that are owned or managed by a design deployment.
    • Added the ability to import existing objects into a design deployment. This is particularly useful when a new design should encapsulate objects from a brownfield deployment.
  • Nautobot App Design Builder: v1.4.1 – 2024-10-03
    • Fixed Custom field assignment.
    • Fixed attribute name collisions with DesignBuilder reserved attributes (namely metadata and environment).
  • Nautobot App Device Onboarding: v4.1.0 – 2024-10-23
    • Added Python 3.12 support.
    • Updated SSoT support to 3.0.
    • Added support for HP Comware for sync_devices job.
    • Added ability to use the FQDN of the device instead of the IP.
  • Nautobot App SSoT: v3.2.0 – 2024-10-21
    • Added Bootstrap SSoT integration. This integration allows users to quickly and consistently set up Nautobot environments with base objects like Locations, LocationTypes, Tenants, VLANs, and more.
    • Added Cisco Meraki SSoT integration. This integration allows users to import Networks, Devices, Ports, Prefixes, and IP Addresses from the Meraki Dashboard.
    • Updated the DNA Center and Device42 integrations to allow specifying the LocationType for imported Location objects.
  • Helm Charts: v2.3.4 – 2024-10-18
    • Upgraded Nautobot from 2.3.6 to 2.3.7.
    • Upgraded Bitnami common subchart from 2.24.0 to 2.26.0.
  • Cookiecutter Nautobot App: nautobot-app-v2.4.0 – 2024-10-10
  • Helm Charts: v2.3.3 – 2024-10-04
    • #450 – Added startupProbes for Nautobot deployment.
    • Upgraded Nautobot from 2.3.4 to 2.3.6.
    • Upgraded Bitnami common subchart from 2.23.0 to 2.24.0.

Community


Conclusion

Do you have any cool Nautobot-related project 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.

 

-Cristian and Gary



ntc img
ntc img

Contact Us to Learn More

Share details about yourself & someone from our team will reach out to you ASAP!