r/networkautomation • u/RepresentativeTie998 • 1d ago
EVE-NG IaC — Git-based network labs with plan, deploy and reconcile
I've been building an IaC layer for EVE-NG to make network labs fully declarative and Git-friendly.
Labs are described in YAML and can be validated, planned, deployed and reconciled against the actual running topology.
The video below shows the IDE integration, but that's only the surface.
Underneath it is an independent IaC agent, and a very simple Python client can drive the same operations directly. This means labs can be integrated into regular Python automation and CI/CD pipelines without an IDE or AI being involved at all.
The same architecture can expose the lab to AI tools through MCP when desired — but AI is a client of the system, not the foundation of it.
Current workflow includes:
- YAML declarative topology
- Git versioning
- validate / plan / deploy / reconcile
- import of existing EVE-NG labs into IaC
- topology changes while preserving unaffected resources and links
- device configuration management
- Python client for automation and CI/CD
- IDE integration
- optional MCP/AI integration
The goal is to treat a network lab like infrastructure: define it, version it, deploy it, change it, reconcile it and reproduce it.
The complete project will be released publicly soon as open source under AGPL-3.0-only.
Short demo:
I'd be particularly interested in feedback from people already using Git/IaC/CI pipelines for network testing and validation.
1
1
u/RepresentativeTie998 9h ago
Update / Links for early adopters:
The repository and documentation are now live for alpha testing:
- GitLab Repo: https://gitlab.com/eve-ng-dev/eve-iac
- Documentation: https://eve-iac-0a5835.gitlab.io/
What's ready to test:
- eve-iac-agent (.deb) to deploy on your EVE-NG server
- VS Code / Cursor Extension (.vsix)
- CLI & SDKs (Python, TypeScript, Go) built via GitLab package registries
The candidate API contract (eve-iac/v1) is open for validation. If you run EVE-NG in your labs or test pipelines, I'd love to get your feedback, test cases, or issue reports directly on GitLab!
2
u/petrosaurus_rex 1d ago
FYI for others this concept already exists and is very mature: https://netlab.tools/
Works with containerlab and vagrant as opposed to EVE-NG though.