Nornir CLI
Project description
nornir_cli
Documentation: https://timeforplanb123.github.io/nornir_cli
nornir_cli is CLI tool based on Nornir framework, Nornir Plugins and Click
Features
-
Manage your custom nornir runbooks
Add custom nornir runbook to the
nornir_cli
custom
group and run it for any hosts directly from the CLI -
Manage Inventory
Get Inventory, filter Inventory, output Inventory and save Inventory state from the CLI. This is really useful for large, structured Inventory - for example, NetBox with nornir_netbox plugin.
-
Run Nornir Plugins
Run Tasks based on Nornir Plugins from the CLI, check result and statistic
-
Build a chain of
nornir_cli
commandsInitialize Nornir, filter Inventory and start Task/Tasks chains or runbook/runbooks chains in one command
-
Custom Multi Commands with click
nornir_cli
based on click Custom Multi Commands, so you can easily add your custom command by following some principles
Quick Start
Install
Please, at first, check the dependencies in pyproject.toml
and create new virtual environment if necessary and then:
with pip:
pip install nornir_cli
with git:
git clone https://github.com/timeforplanb123/nornir_cli.git
cd nornir_cli
pip install .
# or
poetry install
with Docker:
git clone https://github.com/timeforplanb123/nornir_cli.git
cd nornir_cli
docker build -t timeforplanb123/nornir_cli .
docker run --rm -it timeforplanb123/nornir_cli sh
# nornir_cli --version
nornir_cli, version 0.1.0
Simple Example
config.yaml
# Simple Nornir configuration file
inventory:
plugin: SimpleInventory
options:
host_file: "inventory/hosts.yaml"
hosts.yaml
# Single host inventory
dev_1:
hostname: 10.1.0.1
username: username
password: password
# huawei is just an example here
platform: huawei
nornir_cli
# As instance, let's run netmiko_send_command
$ nornir_cli nornir-netmiko init netmiko_send_command --command_string "display clock"
netmiko_send_command************************************************************
* dev_1 ** changed : False *****************************************************
vvvv netmiko_send_command ** changed : False vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv INFO
2021-03-17 14:04:22+03:00
Wednesday
Time Zone(Moscow) : UTC+03:00
^^^^ END netmiko_send_command ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
dev_1 : ok=1 changed=0 failed=0
OK : 1
CHANGED : 0
FAILED : 0
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
Built Distribution
Hashes for nornir_cli-0.1.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 650c26fe72d16fea1db7023d21b0be6046c250f70012c9c68370dfd22f490c41 |
|
MD5 | 6988e2d75f494a8f114cc9f9b004add9 |
|
BLAKE2b-256 | 8f282cdf5b78d548eb2dcfd1858dd6490818b26a6ed5a2d1f86c44ee9e46f9f5 |