Linaro Automated Validation Architecture (LAVA)


LAVA is an automated validation architecture primarily aimed at testing deployments of systems based around the Linux kernel on ARM devices, specifically ARMv7 and later. The current range of boards (device types) supported by this LAVA instance can be seen on the scheduler status page which includes details of how many boards of each type are available for tests and currently running jobs

Getting LAVA

Linaro Automated Validation Architecture (LAVA) is available as a Debian package now approved in testing (Jessie) and unstable (Sid). A user can install LAVA on Ubuntu Trusty (14.04) using LAVA installation documentation.

   1    apt-get install lava

Releases with release notes are made every month, available via Linaro releases website and tagged in the git repository with tags in the form "YY.MM", for example the 14.07 release is tagged "14.07". Extra testing is performed on these releases in addition to the continuous integration done in development.

Using LAVA

LAVA is intended to be used by skilled automation and system administrators to automate testing on real and virtual systems. At Linaro, Linaro CI, executes over 800 tests across ~30 device types every week to support Linaro's engineering teams.


LAVA is currently an actively maintained 'as-is' opensource project at Linaro. LAVA's roadmap is determined by Linaro's Technical Steering Committee, Linaro members and Linaro Engineering teams. Bug reports should be filed against Create a bug report for LAVA. Note: All inquiries should be directed to the Linaro support system.

Introduction to LAVA

LAVA is the Linaro Automation and Validation Architecture.

LAVA is an automation system for deploying operating systems onto physical and virtual hardware for running tests. Tests can be simple boot testing, bootloader testing and system level testing, although extra hardware may be required for some system tests. Results are tracked over time and data can be exported for further analysis.

LAVA is a collection of participating components, the overall idea and evolving architecture that allows us to make testing, quality control and automation. LAVA-the-stack aims to make systematic, automatic and manual quality control more approachable for projects of all sizes.

LAVA is for validation - telling whether the code the other Linaro engineers are producing “works” in whatever sense that means. It could be a simple compile or boot test for the kernel, testing whether the code produced by gcc is smaller or faster, whether a kernel scheduler change reduces power consumption for a certain workload, or many other things.

Beyond simple validation though, what LAVA really about is automated validation. LAVA builds and tests the kernel on all supported boards every day. LAVA builds and tests proposed android changes in gerrit before they are landed, and the same for the gcc work. There is a validation lab in Cambridge - the boards from the Linaro members we want to test on, but also Cyclades serial console servers, routers, and a few servers.

How to Contribute

The best way to protect your investment on LAVA is to contribute your changes back. This way you don’t have to maintain the changes you need by yourself, and you don’t run the risk of LAVA changed in a way that is incompatible with your changes.

More information on how you can contribute can be found in LAVA Documentation:

  • Linaro Validation mailing list <linaro-validation AT lists DOT linaro DOT org>

LAVA (last modified 2014-12-09 00:04:11)