Skip to main content

Python library and command line tool for generating LAVA jobs

Project description

TuxLAVA Logo

PyPI version Code style: black PyPI - License

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.

Table of Contents

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 pull request.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

tuxlava-0.19.0.tar.gz (125.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

tuxlava-0.19.0-py3-none-any.whl (97.9 kB view details)

Uploaded Python 3

File details

Details for the file tuxlava-0.19.0.tar.gz.

File metadata

  • Download URL: tuxlava-0.19.0.tar.gz
  • Upload date:
  • Size: 125.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-requests/2.34.2

File hashes

Hashes for tuxlava-0.19.0.tar.gz
Algorithm Hash digest
SHA256 8269932defc061d87347bd023b48369b54975182411fa34aba13a2358979a6d8
MD5 01e85ec6c141d900b31d452c0d0720af
BLAKE2b-256 89ee2b6e3821a5a79bde26d2a4a2860ddab0d44040938ce037627b74973128d1

See more details on using hashes here.

File details

Details for the file tuxlava-0.19.0-py3-none-any.whl.

File metadata

  • Download URL: tuxlava-0.19.0-py3-none-any.whl
  • Upload date:
  • Size: 97.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-requests/2.34.2

File hashes

Hashes for tuxlava-0.19.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f51fba57b4ddffaa8c1245e74faf377e7c00c59c969cb75fc74ae20b52db74da
MD5 ef28740a6bed2fb735160c2add154373
BLAKE2b-256 d6abbc71f8e961f01682055907f6ae5b243ebd8a78eac5502eea5e7f33af7329

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page