You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This commit adds README.md describing the usage and constraints of the
test job templates in ci/lava directory.
Signed-off-by: Milosz Wasilewski <milosz.wasilewski@oss.qualcomm.com>
`ci/lava` directory contains directories with names corresponding to build MACHINE names.
4
+
New directories should only be added after the build is available for a given MACHINE.
5
+
All files in the `ci/lava/<MACHINE>` directory should have `.yaml` extension.
6
+
Each file should be a valid LAVA job template.
7
+
8
+
LAVA templates are used to create test jobs during the CI runs in this repository.
9
+
This happens for the following triggers:
10
+
- pull_request
11
+
- push
12
+
- cron (nightly build)
13
+
14
+
# LAVA job templates
15
+
16
+
Job templates can use the following variables:
17
+
-`DEVICE_TYPE`: name of the LAVA device type or alias. Full list can be found on [LAVA master web interface](https://lava.infra.foundries.io/scheduler/device_types)
18
+
-`GITHUB_SHA`: Commit ID corresponding to the github action trigger
19
+
-`BUILD_FILE_NAME`: Name of the build artifact to be downloaded. It's constructed as: `core-image-base-${DEVICE_TYPE}.rootfs.qcomflash.tar.gz`
20
+
-`BUILD_DOWNLOAD_URL`: URL where the build artifacts can be found. This variable is constructed as: `${{inputs.url}}/${DEVICE_TYPE}/${BUILD_FILE_NAME}` where `{{inputs.url}}` comes from the build action.
21
+
-`GITHUB_RUN_ID`: ID of the current Github run.
22
+
23
+
After variable substitution the file should form a valid LAVA job definition.
24
+
25
+
# Template validation
26
+
27
+
Template validation is performed as github action using `lavasoftware/lava-server` container.
28
+
Version of the container will be kept in sync with the LAVA server running the test jobs.
29
+
Validation script, `schemacheck.py`, uses LAVA code from `lava_common.schemas.validate` method and PyYAML parser.
30
+
31
+
## Local template validation
32
+
33
+
Before checking the schema locally, all variables mentioned above need to be substituted.
34
+
Templates can be validated using `lavasoftware/lava-server` container.
35
+
36
+
docker run --rm -v $PWD:/home/ lavasoftware/lava-server:latest python3 /home/ci/schemacheck.py /home/ci/lava
0 commit comments