Skip to content
TuxLAVA Logo

Pipeline Status coverage report PyPI version Code style: black PyPI - License

Documentation - Repository - Issues

TuxLAVA, by Linaro, is a python library and a command line tool to generate Linaro Automated Validation Architecture a.k.a LAVA jobs for devices of the following type and has a standard list of devices that are supported along with tests that could be run on these devices.

  • AVH
  • FASTBOOT
  • FVP
  • NFS
  • QEMU
  • SSH

TuxLAVA is a part of TuxSuite, a suite of tools and services to help with Linux kernel development.

Installing TuxLAVA

Using TuxLAVA as a library

TuxLAVA can be used as a python library as follows:

#!/usr/bin/env python

from tuxlava.jobs import Job

job = Job(
    device="nfs-x86_64",
    kernel="https://example.com/bzImage",
    rootfs="https://example.com/rootfs.tar.xz",
    tests=["ltp-smoke", "ltp-math"],
    modules="https://example.com/modules.tar.xz",
    parameters={"LAVA_JOB_PRIORITY": 50},
    timeouts={"deploy": 20},
)
job.initialize()
print(job.render())

Using TuxLAVA as a command line

Call tuxlava as follows:

tuxlava --device nfs-x86_64 \
    --kernel /path/or/url/to/Image
    --modules /path/or/url/to/modules /usr/ \
    --rootfs /path/or/url/to/rootfs \
    --tests boot

TuxLAVA will output the LAVA job to the stdout with the provided arguments for x86_64 device

The complete list of tuxlava options is available with the following command:

tuxlava --help

Examples

LAVA job to boot test a mipsel kernel at https://mykernel.org/vmlinux:

tuxlava --device qemu-mips32el \
    --kernel https://mykernel.org/vmlinux

Generate a LAVA job with ltp-smoke test:

tuxlava --device qemu-mips32el \
    --kernel https://mykernel.org/vmlinux \
    --test ltp-smoke