A plugin for creating, using, and managing remote targets.
The abstract base
Target class provides an
interface for adding platform-specific support through sub-classes. A
usable reference implementation is the
AzureCLI class. A class for just connecting
over SSH is the
SSH Sub-classes can be
implemented in a
conftest.py file and will be found automatically.
Tests can request access to a target through the function-scoped target Pytest fixture, which returns an instance based on the targets listed in a playbook.yaml file. The fixture is parameterized across the list of provided targets. For example:
platforms: AzureCLI: sku: Standard_DS2_v2 targets: - name: Debian platform: AzureCLI image: Debian:debian-10:10:latest - name: Ubuntu platform: AzureCLI image: Canonical:UbuntuServer:18.04-LTS:latest
Will run all selected tests against each target. The pool of targets
can be cached between runs with
Provides and parameterizes the
Provides the abstract base