
Documentation - Repository - Issues
TuxLAVA is a command-line tool and Python library that simplifies creating LAVA job definitions for various device types. Developed by Linaro, it's part of TuxSuite and streamlines Linux kernel test automation.
- 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¶
Examples¶
LAVA job to boot test a mipsel kernel at https://url/to/vmlinux:
tuxlava --device qemu-mips32el \
--kernel https://url/to/vmlinux
Generate a LAVA job with ltp-smoke test:
tuxlava --device qemu-mips32el \
--kernel https://url/to/vmlinux \
--test ltp-smoke
Using TuxLAVA as a command line¶
Call tuxlava as follows:
tuxlava --device nfs-x86_64 \
--kernel https://url/to/Image \
--modules https://url/to/modules /usr/ \
--rootfs https://url/to/rootfs \
--tests boot
The
--kernel
,--modules
, and--rootfs
arguments can be URLs (e.g.https://...
), file URLs (e.g.file:///...
), or absolute file paths (e.g./path/to/Image
).
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
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://url/to/bzImage",
rootfs="https://url/to/rootfs.tar.xz",
tests=["ltp-smoke", "ltp-math"],
modules="https://url/to/modules.tar.xz",
parameters={"LAVA_JOB_PRIORITY": 50},
timeouts={"deploy": 20},
)
job.initialize()
print(job.render())
Contributing¶
Contributions, bug reports and feature requests are welcome! Please see the issues or open a merge request.