Excel file

Build Config

Generate and deploy Cisco configs from Jinja2 templates.

Description

The Build Config tool provides a two-step workflow for generating Cisco device configurations from a Jinja2-templated Excel file. First, it generates configuration files and runs a dry run to show you what would change. Then, if approved, it pushes the configurations to devices via SSH. This approach ensures you can review changes before deployment.

Input

This tool requires:

  • devices.csv file with columns: host, device_type
  • SSH credentials (username and password prompted at runtime)
  • Output folder name (prompted at runtime)

Usage

Run the toolkit and select option [6] from the menu:

Terminal
docker compose run network_automation

Output

Results are saved to:

outputs/build_config/

Each run produces:

  • CSV files - One per device
  • JSON files - Raw parsed output from each device
  • Excel summary report - Consolidated data across all devices

Standalone Usage

To run this tool directly without the run.py menu:

Terminal
python tools/build_config/generate_config.py homelab-config.xlsx && python tools/build_config/push_configs.py --xlsx homelab-config.xlsx --push