skillfed

pyats.kleenex

pyATS Kleenex: Testbed Preparation, Clean & Finalization

pyats-kleenex v26.7 296.1K downloads/30d#7,906 on PyPI
Permissive license Apache 2.0 Active released

What it is and what it does

pyATS Kleenex is a sub-component of the pyATS end-to-end testing framework that handles testbed device preparation and cleanup. It provides a standardized interface for developers to write and execute code that interacts with testbed devices, ensuring they are in a known clean state before test execution begins. The package is designed to integrate seamlessly with pyATS's data-driven and reusable testing model, supporting both simple linear workflows and complex asynchronous test suites.

Kleenex abstracts away the complexity of device state management across heterogeneous testbeds, allowing teams to define cleanup and finalization logic once and apply it consistently across test runs. It is part of Cisco's pyATS ecosystem, which emphasizes Agile rapid development and extensibility. The package supports modern Python versions (3.8+) on Linux and macOS, with active maintenance and no known security vulnerabilities.

Use it for:

  • Reset testbed devices to a baseline configuration before running automated test suites
  • Orchestrate cleanup tasks across multiple devices in parallel as part of test teardown
  • Standardize device preparation logic across teams to ensure reproducible test environments
  • Integrate device state management into CI/CD pipelines for network and infrastructure testing
  • Finalize device state after test execution to prevent test pollution in shared testbeds

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Standardizes testbed device preparation, cleanup, and finalization workflows within the pyATS testing ecosystem, providing a framework for orchestrating device state management before and after test execution.

Yes, if you are already using pyATS for testing. Kleenex is a focused, actively maintained sub-component that solves a real problem in test automation—reliable device cleanup and preparation. It has no security vulnerabilities, permissive licensing, and broad Python version support. Install friction is moderate due to its eight pyATS dependencies, but these are expected in the pyATS ecosystem. If you are not using pyATS, this package is not useful standalone.

Install

pyats-kleenex on PyPI

pip

pip install pyats-kleenex

uv

uv add pyats-kleenex

poetry

poetry add pyats-kleenex

Installing pyats.kleenex

Before you install

Active maintenance with a release within the past week. Medium install friction due to eight runtime dependencies, all within the pyATS ecosystem. Wheels available for Python 3.10–3.14 across macOS and Linux platforms (including musllinux), reducing compilation overhead.

License in practice

Apache 2.0 permissive license allows commercial and private use with minimal restrictions, typical for infrastructure testing tools.

Quickstart

pip install pyats.kleenex

from pyats.kleenex import Kleenex

kleenex = Kleenex(testbed)
kleenex.clean()

Requires Python 3.8 or later. Depends on eight pyATS sub-packages (aetest, async, datastructures, log, topology, utils) and requests; ensure the full pyATS ecosystem is installed or install pyats as a whole.

Verify before relying

  • Whether Kleenex can be used standalone or requires the full pyATS installation
  • Specific device types and platforms supported for cleanup orchestration
  • Performance characteristics when managing large testbeds with many devices

Package facts

License Apache 2.0 (permissive)
Python support supports the current Python release (>=3.8)
Install friction medium — platform-specific wheel
Runtime dependencies 8 — requests, distro, pyats.aetest, pyats.async, pyats.datastructures, pyats.log, pyats.topology, pyats.utils
Maintenance actively maintained — 7 days since the last release
First released
Downloads 296,077/month — #7,906 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: pyats_kleenex-26.7-cp310-cp310-macosx_11_0_universal2.whl; pyats_kleenex-26.7-cp310-cp310-manylinux2014_aarch64.whl; pyats_kleenex-26.7-cp310-cp310-manylinux2014_x86_64.whl; pyats_kleenex-26.7-cp311-cp311-macosx_11_0_universal2.whl; pyats_kleenex-26.7-cp311-cp311-manylinux2014_aarch64.whl; pyats_kleenex-26.7-cp311-cp311-manylinux2014_x86_64.whl; pyats_kleenex-26.7-cp312-cp312-macosx_11_0_universal2.whl; pyats_kleenex-26.7-cp312-cp312-manylinux2014_aarch64.whl; pyats_kleenex-26.7-cp312-cp312-manylinux2014_x86_64.whl; pyats_kleenex-26.7-cp312-cp312-musllinux_1_2_x86_64.whl; pyats_kleenex-26.7-cp313-cp313-macosx_11_0_universal2.whl; pyats_kleenex-26.7-cp313-cp313-manylinux2014_aarch64.whl; pyats_kleenex-26.7-cp313-cp313-manylinux2014_x86_64.whl; pyats_kleenex-26.7-cp314-cp314-macosx_11_0_universal2.whl; pyats_kleenex-26.7-cp314-cp314-manylinux2014_aarch64.whl; pyats_kleenex-26.7-cp314-cp314-manylinux2014_x86_64.whl

Keywords: pyats, testbed, clean, orchestration

Development Status :: 5 - Production/StableDevelopment Status :: 6 - MatureEnvironment :: ConsoleIntended Audience :: DevelopersIntended Audience :: Information TechnologyIntended Audience :: System AdministratorsIntended Audience :: Telecommunications IndustryLicense :: OSI Approved :: Apache Software LicenseOperating System :: MacOSOperating System :: POSIX :: LinuxProgramming Language :: Python :: 3 :: OnlyProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.9Programming Language :: Python :: Implementation :: CPythonTopic :: Software Development :: Build ToolsTopic :: Software Development :: LibrariesTopic :: Software Development :: Libraries :: Python ModulesTopic :: Software Development :: Testing

Tags

testbed device cleanuptest environment preparationdevice state managementpyats testing frameworktest orchestrationtestbed finalizationdevice provisioning automation
testbed-automationnetwork-testingcisco-pyats

More Libraries packages