Skip to main content

Build Status REUSE Compliance Check

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.

Download files

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

Source Distribution

lava-test-plans-3.2.0.tar.gz (54.9 kB view details)

Uploaded Source

Built Distribution

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

lava_test_plans-3.2.0-py2.py3-none-any.whl (144.6 kB view details)

Uploaded Python 2Python 3

File details

Details for the file lava-test-plans-3.2.0.tar.gz.

File metadata

  • Download URL: lava-test-plans-3.2.0.tar.gz
  • Upload date:
  • Size: 54.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-requests/2.28.1

File hashes

Hashes for lava-test-plans-3.2.0.tar.gz
Algorithm Hash digest
SHA256 54b0841ad5e774cd04c9b0c99fd38005d5e93a528ed3c42340b5c87afd90b617
MD5 98fbd070469efb7c24c51c588995a7c5
BLAKE2b-256 3ab6bd80a7a4bc394c1ab7efbe416aa6f11ede03c9356aaca9018090e6b31d2e

See more details on using hashes here.

File details

Details for the file lava_test_plans-3.2.0-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for lava_test_plans-3.2.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 1ab226cdbed3023d805075ac13a5cba832c5c32add7729aaf311838b44c4d785
MD5 7955ae299c0b385f7ecb9c1fb8439b39
BLAKE2b-256 fedde21499744d4eefae8463f055e7489ba20d6d65f6163ef51fb369b6503c85

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

3.2.0 This release

2 files

3.1.0

2 files

Supported by

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