Skip to content

Releases: network-unit-testing-system/nuts

v3.4.0

19 Jul 15:55
v3.4.0
b825119
Compare
Choose a tag to compare

Release Notes for Nuts 3.4.0

The latest version of NUTS, 3.4.0, adds a few bug fixes and the option to cache the inventory. This is now the default behavior and can be switched off by using --nornir-cache-disable.

Full Changelog: v3.3.0...v3.4.0

Release Notes for Nuts 3.3.0

28 May 08:30
Compare
Choose a tag to compare

Release Notes for Nuts 3.3.0

The latest version, 3.3.0, introduces a new hook called "pytest_nuts_single_result" that allows users to customize test reports. For instance, it enables extending jUnit xunit1 reports with additional properties. You can find an illustrative example in the documentation.

Full Changelog: v3.2.0...v3.3.0

Release Notes for Nuts 3.2.0

11 Aug 15:52
1d02964
Compare
Choose a tag to compare

Release Notes for Nuts 3.2.0

The latest 3.2.0 release for Nuts supports a new feature "Unpack Grouped Tests". This feature allows you to specify groups or tags for the NornirContext tests instead of using host.
Based on the filter result on Nornir inventory for each host a test is created.

  • Add feature "Unpack Grouped Tests" (#65)
  • Update (secutiry) dependencis (#72)
  • Remove legacy project name Nettowel (#74)
  • Removed @lucmurer as a maintainer, add @marcom4rtinez and @ubaumann
  • Rename master branch into main
    git branch -m master main
    git fetch origin
    git branch -u origin/main main
    git remote set-head origin -a
    

Release Notes for Nuts 3.1.0

21 Jan 09:54
Compare
Choose a tag to compare

The latest 3.1.0 release for Nuts contains some new tests contributed by @marcom4rtinez and @sevigrimm, and fixes some security (dependency) issues.

  • Add test bundle for ARP table testing (#57)
  • Add test bundle for VLAN testing (#57, #29)
  • Add test bundle for Config testing (startup vs. running config) (#57)
  • Add count tests for CDP/LLDP neighbors (#57)
  • Add existence test for network instances to network instance test bundle (#57)
  • Fix some dependency-security issues (#56)
  • Removed @bytinbit as a maintainer

Release Notes for Nuts 3.0.2

08 Dec 09:26
Compare
Choose a tag to compare

The latest 3.0.2 release for Nuts contains mainly fixes to the core and improvements to the documentation.

  • Add @lucmurer to the project maintainers (#42)
  • Add some diagrams describing the data flow through NUTS (#12)
  • Add more self-tests (#15, #16)
  • Refactor: Move implementation of method nornir_filter() up to NornirNutsContext (#51)
  • Fix several type annotations (#18)
  • Fix several dependency issues (#14, #43)

Further upcoming Changes:

  • Sadly @bytinbit stops being a maintainer of the NUTS project by the end of the year.
    @lucmurer will take over as maintainer and main developer of NUTS.

Release Notes for Nuts 3.0.1

12 Jul 07:44
Compare
Choose a tag to compare

The latest 3.0.1 release for nuts revamps its core and self-tests. Changes:

  • Added short development documentation to help you write your own tests.
  • Self-tests refactored, added integration tests for test bundles.
  • Migrated from testdir to pytester in self-tests.
  • Improved error-handling. Previously, all errors thrown by nuts had been subsumed in a NutsResult, which made debugging difficult. Now errors that are not related to the information gathering process are clearly visible and allow for better error reporting and debugging.
  • single_result fixture refactored. A new AbstractResultExtractor class now takes care of transforming the gathered, raw data into a structure used by the test classes. The new structure also simplifies using the custom nuts pytest marker.
  • Improvements in project management.
  • Set-up release pipeline

Planned for release 3.0.2:

  • Add more integration tests for "bad" results
  • Add API documentation

Release Notes for Nuts 3.0.0

17 May 09:29
Compare
Choose a tag to compare

Nuts 3.0.0 is a completely new version of nuts, rewritten from scratch and not compatible with earlier versions of nuts. Nuts 3.0.0. is designed as a pytest-plugin to run tests and uses nornir to interact with a network in the background. It requires python 3.7 and above. In case you wonder where version 2.0.0 went: Nuts 2 was a study project written in spring 2020, which used nornir, but not pytest to conduct tests.

Features of nuts 3.0.0

  • Write test bundles as yaml files that contain a desired state of the network. Nuts comes with a basic set of test definitions - see the documentation for details. Nuts then checks the desired state against the actual state of the network using pytest.
  • Enhance nuts: Nuts is designed as pytest plugin. You can write your own, custom test definitions and test bundles to suit your specific needs. Note: It is currently not supported (but nevertheless possible), since future releases might introduce breaking changes.
  • If you write your own test definitions/test classes and want to share it with the community, feel free to contact the developers and they will happily link to it in the repo readme.

Planned for 3.0.1

  • Improve error handling - the current implementation has an opaque error handling and is not really informative or helpful.
  • Refactor self-tests - the current self-tests are hard to read for non-devs and must be improved.

Planned for 4.0.0 (aka the far future)

Nuts is deeply intertwined with pytest to create test classes out of the yaml file. It digs deep into pytest to use its functionalities without really committing to pytest. It smells of future problems with project growth. Version 4 will try to solve that, but this may also introduce breaking changes.

v3.0.0-alpha-1

27 Apr 07:38
Compare
Choose a tag to compare

NUTS has been completely rewritten and now released in a very early version: Nuts 3 uses pytest and nornir to perform network configuration checks against a real network.

Initial code is by @MatthiasGabriel, @ubaumann and @bytinbit, the project is now maintained by @bytinbit.

Many thanks to @The-Compiler who provided invaluable feedback.

Please note that this repository here is a mirror of another repo.

Nuts v1.2.1

21 Sep 10:21
Compare
Choose a tag to compare

Fixed

  • Rename testSchema.yaml to test_schema.py

Nuts v1.2

21 Sep 10:11
Compare
Choose a tag to compare

Added

  • Changelog
  • Async switch in test schema
  • Setup and teardown
  • Save capability in setup and teardown
  • Template test parameter
  • Documentation
  • Bandwith test command

Changed

  • Multi response for dnscheck