lava-test-plans
The lava-test-plans project makes it easier to generate LAVA job definition files. It generates the LAVA job definition file from a set of templates.
Installation
Install lava-test-plans from pip:
lava-test-plans -h
or
via podman/docker:
docker run -i -t lavasoftware/lava-test-plans /bin/bash
lavasoftware/lava-test-plans:latest points to the latest released version. lavasoftware/lava-test-plans:master points to the latest development.
If the above commands succeed, you can run to check that the program starts correctly
lava-test-plans -h
Developing
To install the latest development version:
git clone https://github.com/Linaro/lava-test-plans.git
cd ./lava-test-plans
pip3 install flit
flit install --symlink
or
You need to do if you have docker installed:
docker run --volume $HOME/path/to/lava-test-plans:/xyz -i -t lavasoftware/lava-test-plans /bin/bash
cd /xyz
lavasoftware/lava-test-plans:latest points to the latest released version. lavasoftware/lava-test-plans:master points to the latest development.
There will be a directory with /lava-test-plans from either a "released" version or directly from master.
If the above commands succeed, you can run to check that the program starts correctly
python3 -m lava_test_plans -h
External variables
External variables are set in the variables.ini file. Each line in this file is in the form
key=value
Lines starting with # are omited. Variables can also be set using --overwrite-variables parameter. List of used variables:
- PROJECT_NAME: used as the first part in the test job name. Can be set to differentiate LAVA test jobs between different teams/projects
- BUILD_NUMBER: used as last part in the test job name.
- KERNEL_BRANCH: used in test job name
- OS_INFO: used in test job name
- LAVA_JOB_PRIORITY: priority of the LAVA job, used by LAVA scheduler
- LAVA_JOB_VISIBILITY: defaults to public. This block can be used to restrict job visibility to user or group.
- LAVA_JOB_VISIBILITY_GROUPS: variable should contain groups required by job. Formtatting is important and this variable should be formatted comma separated list. Example: group1, group2. In case of using just one group, end string with comma. Example: group1,
- AUTO_LOGIN_: default *PROMPT='login:', *USERNAME='root' and *PASSWORD=''.
- BOOT_LABEL: default BOOT_LABEL='boot'.
- TAGS: variable should contain tags required by job. Formtatting is important and this variable should be formatted comma separated list. Example: tag1, tag2. In case of using just one tag, end string with comma. Example: tag1,
- UBOOT_VERSION_STRING: string that is matched in the u-boot shell from output of command version
- OVERLAY_MODULES_ *: overlays modules into the rootfs.
- TEST_DEFINITIONS_REPOSITORY: points to the test repository to use, default: https://github.com/Linaro/test-definitions.git
Variables can also be stored in YAML file. Usual YAML syntax applies.
Timeouts
Overall job timeout is a sum of action timeouts. There are 6 components:
- deploy_timeout
- boot_timeout
- install_fastboot_timeout
- fastboot_deploy_timeout
- target_deploy_timeout
- TARGET_BOOT_TIMEOUT
- test_timeout
When LXC is not in use all lxc_ timeouts are set to 0. test_timeout is defined for each test template. target_ timeouts can be set separately for each device.
CI for docker multiarch builds
lava-test-plans gets mirrored to gitlab https://gitlab.com/Linaro/lava-test-plans to build multiarch docker containers and publish them to https://hub.docker.com/r/lavasoftware/lava-test-plans, that is why there is a .gitlab-ci.yml in this repository.
Repository
Pull requests are welcome to https://github.com/linaro/lava-test-plans.
Metadata
Release files for lava-test-plans 3.2.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| lava-test-plans-3.2.0.tar.gz | 54.9 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| lava_test_plans-3.2.0-py2.py3-none-any.whl | Python 3, Python 2 | none | any | Details |
Total release size: 199.6 kB
Release files / lava-test-plans-3.2.0.tar.gz
| Download URL | lava-test-plans-3.2.0.tar.gz |
|---|---|
| Size | 54.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
54b0841ad5e774cd04c9b0c99fd38005d5e93a528ed3c42340b5c87afd90b617
|
|
BLAKE2b-256 checksum How to use checksums |
3ab6bd80a7a4bc394c1ab7efbe416aa6f11ede03c9356aaca9018090e6b31d2e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
python-requests/2.28.1
|
Release files / lava_test_plans-3.2.0-py2.py3-none-any.whl
| Download URL | lava_test_plans-3.2.0-py2.py3-none-any.whl |
|---|---|
| Size | 144.6 kB |
| Tags | Python 2 Python 3 |
|
SHA-256 checksum How to use checksums |
1ab226cdbed3023d805075ac13a5cba832c5c32add7729aaf311838b44c4d785
|
|
BLAKE2b-256 checksum How to use checksums |
fedde21499744d4eefae8463f055e7489ba20d6d65f6163ef51fb369b6503c85
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
python-requests/2.28.1
|