How do you use eve-iac?¶
Independent Infrastructure-as-Code for EVE-NG labs. eve-iac is not an official EVE-NG product. Clients talk only to eve-iac-agent over HTTPS. They never call native EVE REST.
Pick the path that matches how you work.
Operator¶
Use VS Code or Cursor to create, import, edit, and operate EVE-NG labs. You do not need to write code.
DevOps / CI-CD¶
Validate, plan, deploy, and reconcile labs from pipelines with the eve-iac CLI.
Developer¶
Build integrations with the Python, TypeScript, or Go SDK, or call the HTTPS API.
What eve-iac is¶
Git files are desired state (topology.yml, configs/, .eve-iac.yml). The agent is the only process that talks to EVE. Validate, plan, deploy, and reconcile are explicit operations. Importing an existing lab is not the same as pulling later changes with from_eve.
Important principles:
- Persona tools, one API. The VSIX, CLI, and SDKs share
eve-iac/v1. - Desired state vs live state. Topology and startup-configs are desired. Consoles and inspect are operational.
- Destructive work is explicit. Destroy, prune, wipe, and replace require confirmation (
--yes, the IDE prompt, or MCPconfirm=true). - TLS is pinned. Trust the agent certificate in the IDE, or pass
--ca-file/ca_pemin automation. There is no TOFU in the CLI.
Install quickly¶
| You | Start here |
|---|---|
| VS Code / Cursor | Install the VSIX |
| Pipelines | Install the CLI |
| Python | pip install eve-iac — install · SDK |
| Node | npm install @eve-iac/sdk — install · SDK |
| Go | github.com/eve-iac/eve-iac/sdk/go/eveiac — install · SDK |
Names stay those commands. Agent .deb, VSIX, CLI/Python wheel, npm, and Go tarball are published from this GitLab project (Package Registry + Release on tags), not from public Python/npm/Go indexes, the Marketplace, or a Debian archive. Local build: make pack-sdk deb vsix.
Project status¶
- License: AGPL-3.0-only
- Package version and API id are different. See versioning.
- Candidate contract
eve-iac/v1is not a published freeze yet.