PRJ-network-automation: Network Automation — pyATS Reports & Python Learning
1. Project Summary
| Field | Value |
|---|---|
PRJ ID |
PRJ-2026-NET-001 |
Date Created |
2025-12-12 |
Owner |
Evan Rosado |
Priority |
P1 (High) — Active Learning Project |
Category |
Network Automation / pyATS / Python |
Status |
Active — evolving from archive to live automation |
Origin |
Principia |
Repository |
|
Technologies |
pyATS, Genie, Netmiko, Ansible, Python |
2. Purpose
Build real network automation skills through hands-on Python development using pyATS as the primary framework. This project serves a dual purpose: learning to code Python by solving actual network engineering problems, and generating structured reports from network device state using pyATS parsers and testbeds.
The project deliberately prioritizes learning over task completion — every script written, every parser understood, and every report generated is a step toward engineering fluency in network programmability.
3. Scope
3.1. In Scope
-
pyATS & Genie — testbed definitions, parsers, learn functions, reporting
-
Python fundamentals — learned through network automation context (not abstract exercises)
-
Network state reports — automated collection and formatting of device state (interfaces, BGP, VLANs, ARP, etc.)
-
Config version control — Git-based network configuration management
-
Documentation generation — automated network documentation from device state
-
Netmiko / NAPALM — device connectivity and configuration deployment
3.2. Out of Scope
-
Production network changes at CHLA (separate PRJ-* projects)
-
Ansible tower/AWX deployment (covered by domus-automation-ops)
-
ISE policy automation (covered by domus-ise-ops)
4. Current Status
| Milestone | State |
|---|---|
Legacy docs (Netmiko, Ansible, Velocity templates) |
Complete — migrated from Principia ARS-NETWORK-AUTOMATION |
pyATS testbed definition |
Not started |
First pyATS parser script |
Not started |
pyATS report generation |
Not started |
Python project structure (pyproject.toml, venv) |
Not started |
4.1. Legacy Content
The original ARS-NETWORK-AUTOMATION archive contains two reference documents:
-
2025-NET-001— Network Config Version Control with Git (Netmiko, Ansible, Jinja2) -
2025-NET-002— Network Documentation Generator (Velocity templates)
These are documentation-only — no executable code. The project now evolves into a live codebase.
4.2. Next Actions
-
Set up Python project structure with pyATS dependencies
-
Define home enterprise testbed (switches, pfSense, ISE)
-
Write first pyATS parser script and generate a report
-
Iterate: add parsers, build reporting, learn Python patterns
6. Metadata
| Field | Value |
|---|---|
PRJ ID |
PRJ-2026-NET-001 |
Author |
Evan Rosado |
Date Created |
2025-12-12 |
Last Updated |
2026-04-01 |
Status |
Active |
Next Review |
2026-04-15 |