Skip to content

Latest commit

History

42 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

Python Network Automation Toolkit

A Python-based network automation tool designed to execute commands across multiple Cisco IOS devices using SSH.

Features

  • YAML-based device inventory
  • Multi-device command execution
  • Graceful failure handling
  • Centralized logging (console + file)
  • CLI interface
  • Clean, modular architecture

Project Structure

python-network-automation-toolkit/
├── inventory/
│ └── devices.yaml
├── logs/
│ └── app.log
├── network/
│ ├── connector.py
│ ├── executor.py
│ └── inventory.py
├── utils/
│ └── logger.py
├── .gitignore
├── cli.py
├── README.md
└── requirements.txt

Usage

python cli.py --command "show ip interface brief"

Architecture Overview

The toolkit follows a layered design:

  • CLI handles user input
  • Inventory loader provides device data
  • Executor coordinates multi-device execution
  • Connector manages SSH lifecycle per device
  • Logger provides centralized observability

This separation improves maintainability, testability, and extensibility.

About

Python-based network automation tool using Netmiko and YAML inventory

Topics

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages