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 ------------ 1. **Validation File**: The expected *desired state* specified in YAML format (can be automatically generated) is provided at runtime 2. **Desired State**: The *validation file* is rendered by `Jinja `_ adding validation commands to the *desired state* and storing this as a Nornir host variable 3. **Data Collection**: `Nornir `_ (`netmiko plugin `_) executes commands against target devices parsing the outputs through `ntc-templates `_ to construct the *actual state* 4. **Compliance Report**: The *desired state* and *actual state* are fed into `napalm-validate `_ generating a *compliance report* of the differences .. figure:: /_static/images/terminalizer_val_example.gif :alt: Compliance report animation :width: 100% :align: center Example of a non-compliant and compliant report Contents -------- * :doc:`Validations ` - A table of all the current supported validations and validation nuances * :doc:`Tutorial ` - Contains all the information you require to get started with nornir-validate * :doc:`Contribute ` - Runs through how to contribute new validation models to the project .. toctree:: :hidden: :maxdepth: 3 Home validations tutorial/index contribute/index