{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# task: napalm_cli\n", "\n", "[napalm_cli](../api/tasks.rst#nornir_napalm.plugins.tasks.napalm_cli) exposes napalm's method `cli`.\n", "\n", "Example:" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "from nornir import InitNornir\n", "from nornir_napalm.plugins.tasks import napalm_cli\n", "\n", "nr = InitNornir(\n", " inventory={\n", " \"plugin\": \"SimpleInventory\",\n", " \"options\": {\n", " \"host_file\": \"inventory/hosts.yaml\",\n", " \"group_file\": \"inventory/groups.yaml\",\n", " \"defaults_file\": \"inventory/defaults.yaml\",\n", " }\n", " },\n", " dry_run=True,\n", ")" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "result = nr.run(napalm_cli, commands=[\"show version\", \"show interfaces\"])" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Arista vEOS\n", "Hardware version:\n", "Serial number:\n", "System MAC address: 0800.27af.1c32\n", "\n", "Software image version: 4.15.2.1F\n", "Architecture: i386\n", "Internal build version: 4.15.2.1F-2759627.41521F\n", "Internal build ID: 8404cfa4-04c4-4008-838b-faf3f77ef6b8\n", "\n", "Uptime: 2 minutes\n", "Total memory: 1897596 kB\n", "Free memory: 78796 kB\n", "\n" ] } ], "source": [ "print(result[\"rtr00\"][0].result[\"show version\"])" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Ethernet1 is up, line protocol is up (connected)\n", " Hardware is Ethernet, address is 0800.2746.8502 (bia 0800.2746.8502)\n", " Ethernet MTU 9214 bytes\n", " Full-duplex, Unconfigured, auto negotiation: off, uni-link: n/a\n", " Up 1 minutes, 27 seconds\n", " Loopback Mode : None\n", " 1 link status changes since last clear\n", " Last clearing of \"show interface\" counters never\n", " 5 minutes input rate 0 bps (- with framing overhead), 0 packets/sec\n", " 5 minutes output rate 0 bps (- with framing overhead), 0 packets/sec\n", " 0 packets input, 0 bytes\n", " Received 0 broadcasts, 0 multicast\n", " 0 runts, 0 giants\n", " 0 input errors, 0 CRC, 0 alignment, 0 symbol, 0 input discards\n", " 0 PAUSE input\n", " 50 packets output, 6464 bytes\n", " Sent 0 broadcasts, 50 multicast\n", " 0 output errors, 0 collisions\n", " 0 late collision, 0 deferred, 0 output discards\n", " 0 PAUSE output\n", "Ethernet2 is up, line protocol is up (connected)\n", " Hardware is Ethernet, address is 0800.27f9.0ff6 (bia 0800.27f9.0ff6)\n", " Ethernet MTU 9214 bytes\n", " Full-duplex, Unconfigured, auto negotiation: off, uni-link: n/a\n", " Up 1 minutes, 27 seconds\n", " Loopback Mode : None\n", " 1 link status changes since last clear\n", " Last clearing of \"show interface\" counters 0:02:18 ago\n", " 5 minutes input rate 0 bps (- with framing overhead), 0 packets/sec\n", " 5 minutes output rate 0 bps (- with framing overhead), 0 packets/sec\n", " 0 packets input, 0 bytes\n", " Received 0 broadcasts, 0 multicast\n", " 0 runts, 0 giants\n", " 0 input errors, 0 CRC, 0 alignment, 0 symbol, 0 input discards\n", " 0 PAUSE input\n", " 50 packets output, 6464 bytes\n", " Sent 0 broadcasts, 50 multicast\n", " 0 output errors, 0 collisions\n", " 0 late collision, 0 deferred, 0 output discards\n", " 0 PAUSE output\n", "Management1 is up, line protocol is up (connected)\n", " Hardware is Ethernet, address is 0800.277d.44c1 (bia 0800.277d.44c1)\n", " Internet address is 10.0.2.15/24\n", " Broadcast address is 255.255.255.255\n", " Address determined by manual configuration\n", " IP MTU 1500 bytes , BW 1000000 kbit\n", " Full-duplex, 1Gb/s, auto negotiation: on, uni-link: n/a\n", " Up 1 minutes, 11 seconds\n", " Loopback Mode : None\n", " 5 link status changes since last clear\n", " Last clearing of \"show interface\" counters never\n", " 5 minutes input rate 1.40 kbps (0.0% with framing overhead), 0 packets/sec\n", " 5 minutes output rate 1.32 kbps (0.0% with framing overhead), 1 packets/sec\n", " 3 packets input, 66960 bytes\n", " Received 3 broadcasts, 0 multicast\n", " 0 runts, 0 giants\n", " 0 input errors, 0 CRC, 0 alignment, 0 symbol, 0 input discards\n", " 0 PAUSE input\n", " 449 packets output, 62541 bytes\n", " Sent 0 broadcasts, 0 multicast\n", " 0 output errors, 0 collisions\n", " 0 late collision, 0 deferred, 0 output discards\n", " 0 PAUSE output\n", " '\n", "\n", "\n" ] } ], "source": [ "print(result[\"rtr00\"][0].result[\"show interfaces\"])" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.8.2" } }, "nbformat": 4, "nbformat_minor": 4 }