Nornir Validate Documentation
A Nornir plugin for validating network state (actual state) against YAML-based specifications (desired state). This project extends napalm-validate to perform command-based validation rather than relying solely on getters, providing greater flexibility in validating arbitrary command outputs. It leverages Nornir with nornir-netmiko to collect and format device data, then compares actual state against desired state to generate a compliance report.
How It Works
Validation File: The expected desired state specified in YAML format (can be automatically generated) is provided at runtime
Desired State: The validation file is rendered by Jinja adding validation commands to the desired state and storing this as a Nornir host variable
Data Collection: Nornir (netmiko plugin) executes commands against target devices parsing the outputs through ntc-templates to construct the actual state
Compliance Report: The desired state and actual state are fed into napalm-validate generating a compliance report of the differences
Example of a non-compliant and compliant report
Contents
Validations - A table of all the current supported validations and validation nuances
Tutorial - Contains all the information you require to get started with nornir-validate
Contribute - Runs through how to contribute new validation models to the project