Skip to main content

Nornir inspection tool

Project description

Nornir Inspect

Nornir Inspect is a lightweight Python library for visually inspecting the structure of Nornir task results.
It formats nested AggregatedResult, MultiResult, and Result objects into a readable tree layout.

Install

pip install nornir-inspect

or

uv add nornir-inspect

Usage

Nornir setup steps
from nornir import InitNornir
from nornir.core.task import Result, Task

nr = InitNornir(
     runner={
         "plugin": "threaded",
         "options": {
             "num_workers": 10,
         },
     },
     inventory={
         "plugin": "SimpleInventory",
         "options": {"host_file": "tests/hosts.yaml"},
     },
     logging={"enabled": False},
 )


def task_1(task: Task, number: int) -> Result:
     n = number + 1
     return Result(host=task.host, result=f"{n}")


result = nr.run(task=task_1, number=1)
from nornir_inspect import nornir_inspect

nornir_inspect(result)

<class 'nornir.core.task.AggregatedResult'>
├── failed = False
├── failed_hosts = {}
├── name = task_1
├── <class 'nornir.core.task.MultiResult'> ['node1']
   ├── failed = False
   ├── failed_hosts = {}
   ├── name = task_1
   └── <class 'nornir.core.task.Result'> [0]
       ├── changed = False
       ├── diff =
       ├── exception = None
       ├── failed = False
       ├── host = node1
       ├── name = task_1
       ├── result = 2
       ├── severity_level = 20
       ├── stderr = None
       └── stdout = None
├── <class 'nornir.core.task.MultiResult'> ['node2']
   ├── failed = False
   ├── failed_hosts = {}
   ├── name = task_1
   └── <class 'nornir.core.task.Result'> [0]
       ├── changed = False
       ├── diff =
       ├── exception = None
       ├── failed = False
       ├── host = node2
       ├── name = task_1
       ├── result = 2
       ├── severity_level = 20
       ├── stderr = None
       └── stdout = None
└── <class 'nornir.core.task.MultiResult'> ['node3']
    ├── failed = False
    ├── failed_hosts = {}
    ├── name = task_1
    └── <class 'nornir.core.task.Result'> [0]
        ├── changed = False
        ├── diff =
        ├── exception = None
        ├── failed = False
        ├── host = node3
        ├── name = task_1
        ├── result = 2
        ├── severity_level = 20
        ├── stderr = None
        └── stdout = None

Additional Options

  • vals: bool – If True, the values of the object's attributes will be printed.
    Default: True

  • headings: bool – If True, the first line of the output will include the object's key name or list position.
    Default: True

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

nornir_inspect-1.1.1.tar.gz (63.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

nornir_inspect-1.1.1-py3-none-any.whl (7.1 kB view details)

Uploaded Python 3

File details

Details for the file nornir_inspect-1.1.1.tar.gz.

File metadata

  • Download URL: nornir_inspect-1.1.1.tar.gz
  • Upload date:
  • Size: 63.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.6.6

File hashes

Hashes for nornir_inspect-1.1.1.tar.gz
Algorithm Hash digest
SHA256 f6180d6bb01286cacecbf75af3aa254b7be26be42e0883ebb7cd43f3650b0107
MD5 efa876bf24fb68c146a6786b93a87e32
BLAKE2b-256 f653576f490bb920f2ac8106686f7b769aced1fb8213c547bf2cd1420e80be2e

See more details on using hashes here.

File details

Details for the file nornir_inspect-1.1.1-py3-none-any.whl.

File metadata

File hashes

Hashes for nornir_inspect-1.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 809beaccda25d56ac3f6005147d10da94a0b7e5bfccd6e81ea76c6616d77ea0d
MD5 83e51c56d333c1420120e0e2d6357b15
BLAKE2b-256 845598e1d4e3300da3235431a54defde1bdae33a5341cd241571feb47d6068ea

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page