Using Fuego with LAVA
Some users have pre-existing testing labs that use LAVA, or want to use LAVA as a board management layer or provisioning layer for their boards.
This page has information about different ways to use Fuego in a LAVA environment.
Most of this is based on a presentation by Liu Wenlong, of Fujitsu. A link to this presentation is below.
There are two main approaches to integration with LAVA, which I will refer to as:
- "LAVA hacking session" approach
- "Functional.lava" approach
Establish and automated test lab for AGL (Presentation by Liu Wenlong, of Fujitsu)
To do this, you have to create two additional files for each board that is under management by LAVA:
- $BOARD.lava holds environment variables used by LAVA for job submission
- $BOARD.lava.yaml holds a template for the LAVA test job
Then, you modify Fuego's board file to use special "setup" and "teardown" routines, which will be called as part of a test execution for that board.
Here is a list of the variables used:
There is a sample $BOARD.yaml file in fuego repository, in the fuego-ro/boards directory. Most commonly, the way to create your own $BOARD.lava file is to copy this existing example into your own file, and edit the values to match those required for your board and LAVA configuration.
To use these, add the following lines to your Fuego board file:
This approach was proposed by Fujitsu (in the above presentation), but as of this writing (December, 2018), it has not been integrated into Fuego.
It uses the "release engineering" scripts from AGL, to create a set of jobs for Fuego, using a new Fuego test called "Functional.lava".
Functional.lava will create a LAVA test job.
Then the lava-tool is used to submit the job to LAVA for execution.