blob: c95696db6cf6933af6995a27f06da31be6af272d (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
|
# releng-scripts
This is an AGL job generation tool for [LAVA](https://staging.validation.linaro.org/static/docs/v2/).\
It is written in Python and uses jinja2 templates to generate yaml job files
following the LAVA specifications.
This tool **only** generates jobs. It does not provide a way for submitting jobs to a LAVA server.\
Please refer to the lava-tool [documentation](https://validation.linaro.org/static/docs/v2/lava-tool.html)
for submitting jobs.
## Prerequisites
- Python >= 2.7.1
- jinja >= 2.9
- You can check if a version is/was installed with pip using: ```pip show jinja2```
- If the version is too old, you can update it using: ```sudo pip install --upgrade jinja2```
## Usage instructions
The tool for generating job is located in the ./utils folder, it is named "create-jobs.py".
### create-jobs.py
Command line tool to generate AGL jobs for LAVA.
##### Required arguments:
- ```./utils/create-jobs.py --machine machine-name```
- Available machine names: ```{dra7xx-evm,qemux86-64,porter,m3ulcb,raspberrypi3}```
- For an up to date list of machine names run: ```./utils/create-jobs.py --help```
##### Artifacts fetching from URL:
Amongst other things, this tool is used to generate URLs for fetching build artifacts from specific locations.\
The default location is: https://download.automotivelinux.org/AGL/\
The default build is dab version 4.0.2
The user can override these defaults using the command line:
- ```--url <release, daily, ci or http://my-custom-url....>```
- Available url options and their corresponding URL:
- release: https://download.automotivelinux.org/AGL/release/
- daily: https://download.automotivelinux.org/AGL/snapshots/
- ci: https://download.automotivelinux.org/AGL/upload/ci/
If using the url argument the user has to specify other arguments depending on the url:
- release: ```--branch and --version```
- daily: ```--branch and --version```
- ci: ```--changeid and --patchset```
If using a custom url these argument are not used and should not be set. The tool will suppose that the custom url points directly to build artifacts for the target machine.
_Examples:_
```
./utils/create-jobs.py --machine m3ulcb
./utils/create-jobs.py --machine qemux86-64
./utils/create-jobs.py --url release --branch eel --version 4.99.1 --machine m3ulcb
./utils/create-jobs.py --url release --branch eel --version 4.99.1 --machine qemux86-64
./utils/create-jobs.py --url daily --branch master --version latest --machine m3ulcb
./utils/create-jobs.py --url daily --branch master --version latest --machine raspberrypi3
./utils/create-jobs.py --url ci --changeid 11533 --patchset 2 --machine raspberrypi3
./utils/create-jobs.py --url ci --changeid 11533 --patchset 2 --machine m3ulcb
./utils/create-jobs.py --url http://baylibre.com/pub/agl/ci/raspberrypi3 --machine raspberrypi3
```
The full list of arguments with default values is available using the helper:\
`$ ./utils/create-jobs.py --help`
##### Add tests to a job
To add tests to a job description please refer to the specific documentation: [releng-scripts-folder]/doc/test-documentation.md
|