Thanks to visit codestin.com
Credit goes to github.com

Skip to content

titom73/eos-downloader

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

tests Coverage PyPI - Python Version Code style: black Checked with mypy PyPI - Downloads/month

Arista Software Downloader

Overview

A project to download Arista softwares to local folder, Cloudvision or EVE-NG. It comes in 2 way: a framework with object to automate Arista software download and a CLI for human activities.

Key Features:

  • ๐Ÿš€ Smart Caching: Automatically caches downloaded files and Docker images to save bandwidth and time
  • ๐Ÿ“ฆ Multiple Formats: Support for EOS (64-bit, vEOS, cEOS) and CloudVision Portal
  • ๐Ÿณ Docker Integration: Direct import to Docker/Podman registries
  • ๐Ÿ”ง EVE-NG Support: Automated provisioning for network simulation
  • โšก Fast Iterations: Subsequent runs complete instantly using cached resources

Caution

This script should not be deployed on EOS device. If you do that, there is no support to expect from Arista TAC team.

# install eos-downloader from pypi
pip install eos-downloader

# download EOS swi for EOS 64bits (uses cache on subsequent runs)
ardl --token <your-token> get eos --format 64 --latest --release-type M

# force re-download even if cached
ardl --token <your-token> get eos --format 64 --latest --release-type M --force

Full documentation is available on our website.

Download EOS package from arista website

This command gives you option to download EOS images localy. Some options are available based on image type like importing your cEOS container in your local registry

# Get latest version of EOS using docker format.
ardl get eos --latest --format cEOS

# Get latest version of maintenance type in specific branch 4.29
ardl get eos --branch 4.29 --format cEOS --release-type M

# Get a specific version
ardl get eos --version 4.29.4M

# Get a specific version and import to docker using default arista/ceos:{version}{release_type}
ardl get eos --version 4.29.4M --import-docker

# Get a specific version and import to EVE-NG
ardl get eos --version 4.33.0F --eve-ng

# Force re-download/re-import (bypass cache)
ardl get eos --version 4.29.4M --import-docker --force

Smart Caching

eos-downloader automatically caches downloads and Docker images:

  • Files: If a file exists in the output directory, it's reused (no re-download)
  • Docker Images: If an image:tag exists locally, import is skipped
  • Force Mode: Use --force to bypass cache and force fresh download/import

This makes repeated runs instant and saves bandwidth! ๐Ÿš€

Contributing

A contributing guide is available in docs folder

Author

From an original idea of @Mark Rayson in arista-netdevops-community/eos-scripts

License

Code is under Apache2 License