anta
Arista Network Test Automation (ANTA) Framework
What it is and what it does
ANTA is a testing framework purpose-built for validating the operational state of Arista network devices. It provides a curated set of tests to verify network readiness and compliance, and can be deployed either as a Python library embedded in custom applications or as a standalone CLI tool for ad-hoc or scheduled validation runs.
The framework is designed for two primary workflows: automating NRFU (Network Ready For Use) tests on preproduction networks before deployment, and running continuous or on-demand validation against live production networks. It depends on asyncssh for device connectivity, pydantic for configuration validation, and httpx and requests for API communication, making it suitable for integration into larger network automation pipelines.
Use it for:
- Automate NRFU validation on preproduction networks before moving to production
- Run periodic compliance checks on live network devices to detect configuration drift
- Embed network validation logic into custom Python applications via the library interface
- Generate network inventory reports and validate device readiness from the CLI
- Execute on-demand network state validation as part of CI/CD or change management workflows
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
ANTA is a Python framework that automates network validation tests for Arista devices, providing a library for programmatic use and a CLI tool for running tests on live or preproduction networks.
Yes. ANTA is actively maintained, has no known vulnerabilities, installs with low friction, and is licensed permissively. It is production-stable (Development Status 5) and supports current Python versions. Install it if you need to validate Arista network device state programmatically or via CLI; the library-only install is lightweight and the CLI extras are optional.
Install
anta on PyPI
pip
pip install antauv
uv add antapoetry
poetry add antaInstalling anta
Before you install
Low friction install with a pure-Python wheel. Active maintenance with a release 29 days ago. Supports Python 3.10 through 3.14. Runtime dependencies are well-established libraries (pydantic, httpx, Jinja2, PyYAML, rich, asyncssh, cvprac, requests).
License in practice
Apache-2.0 permissive license allows commercial and private use with minimal restrictions—suitable for most deployment scenarios.
Quickstart
# Install as library
pip install anta
# Import and use
from anta.inventory import InventoryFromFile
from anta.runner import main
# Load inventory and run tests
inventory = InventoryFromFile("inventory.yaml")
await main(inventory, tests=[...])
Requires Python 3.10 or later. CLI extras require additional dependencies not included in base library install.
Verify before relying
- Whether the package requires Arista EOS devices or supports other network device types
- Specific test coverage and number of built-in test cases available
- Performance characteristics when testing large device inventories
Package facts
| License | Apache-2.0 (permissive) |
| Python support | supports the current Python release (>=3.10) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 11 — asyncssh, cvprac, httpx, Jinja2, pydantic, pydantic-extra-types, pydantic-settings, PyYAML, requests, rich, typing_extensions |
| Maintenance | actively maintained — 29 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 158,439/month — #10,723 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: anta-1.9.0-py3-none-any.whl
Keywords: test, anta, Arista, network, automation, networking, devops, netdevops
Tags
More Python Modules packages
Converts domain names between Unicode and…
permissive · top 100 on PyPI
setuptoolsSetuptools is a Python build backend and…
permissive · top 100 on PyPI
PyYAMLPyYAML parses and emits YAML 1.1 data format,…
permissive · top 100 on PyPI
pydanticPydantic validates Python data structures…
permissive · top 100 on PyPI
annotated-typesProvides reusable metadata objects for use with…
permissive · top 100 on PyPI
typing-inspectionProvides runtime tools to inspect and…
permissive · top 100 on PyPI
pyeapipyeapi is a Python library that wraps Arista…
permissive · top 15,000 on PyPI
validations-engineValidations Engine is a framework for defining…
unclear · top 15,000 on PyPI
cvpracA Python client library for the Arista…
permissive · top 15,000 on PyPI
ddadda is a command-line tool for developing on…
permissive · top 15,000 on PyPI
noxNox automates testing across multiple Python…
permissive · top 5,000 on PyPI
scrapliscrapli is a Python library for connecting to…
permissive · top 15,000 on PyPI
haystack-aiHaystack is an open-source framework for…
permissive · top 5,000 on PyPI
advanced-alchemyAdvanced Alchemy provides sync and async…
permissive · top 15,000 on PyPI
genieGenie is a test automation library and harness…
permissive · top 15,000 on PyPI
pyavd-utilsProvides Rust-based utility functions for…
permissive · top 15,000 on PyPI