summaryrefslogtreecommitdiffstats
path: root/utils
AgeCommit message (Collapse)AuthorFilesLines
2019-02-28Separate --branch/--changeid --version/--patchsetKhouloud Touil2-11/+19
This patch separates the --branch/--changeid and --version/--patchset arguments to use each one of them differently. As well it renames url_branch to changeid and url_version patchset. It modifies also the error check to follow the other changes and be sure that the needed arguments are well inserted. Change-Id: If64ae3620b1519fc391e79d954247938cffcb491 Signed-off-by: Khouloud Touil <ktouil@baylibre.com>
2019-01-24Add new device-tags featureKhouloud Touil2-3/+7
utils/create-jobs: Add the --device-tags argument Add new --device-tags arguement to create a job that contain the device tags as parameters. utils/agljobtemplate: Add the device_tags to the job Add the device_tags to the job in order to be used later in the test scripts to determine which test case should be runned or not. Change-Id: If22fb40b2ddf1a7c0496a59d4318e633028495b9 Signed-off-by: Khouloud Touil <ktouil@baylibre.com>
2018-12-05templates: callbacks: support multiple callback targetsLoys Ollivier2-5/+7
LAVA jobs can now submit multiple callbacks per job. Update the create-jobs tool and its underlying templates to support this feature. - Callback templates are now split in two file and follow LAVA specification: 'section' and 'subsection'. - create-jobs tool supports multiple arguments for the '--callback-to' option. - Default configuration for callback targets can now be a list of targets. Change-Id: I36c502c0bb5b54010ce32a53ba78a6be5e6a1642 Signed-off-by: Loys Ollivier <lollivier@baylibre.com>
2018-11-21templates: add job generation support for iPXE based boardsguppy_6.99.1guppy/6.99.16.99.1Liu Wenlong1-6/+14
Since iPXE based boards can use NBD boot[1], now in releng-scripts, we also add support to generate LAVA jobs for iPXE based boards. With this support, Intel-UP2, one of the community reference boards, can do validation tests with the generated jobs easily. [1] https://git.lavasoftware.org/lava/lava/merge_requests/64/diffs Change-Id: I9adce67d7e9207181675e82bf22a653c73682eb8 Signed-off-by: Liu Wenlong <liuwl.fnst@cn.fujitsu.com>
2018-10-15agljobtemplate: fix UnboundLocalError for build_verson_defaultKevin Hilman1-0/+1
Change-Id: If8c422f8da34d6ab3474200095aff1f8cb7923d0 Signed-off-by: Kevin Hilman <khilman@baylibre.com>
2018-10-06agljobtemplate: CI builds: rename branch to gerritKevin Hilman1-1/+1
Change-Id: I8341bb7c3ab65a02a7b144171f778c850484850b Signed-off-by: Kevin Hilman <khilman@baylibre.com>
2018-10-06agljobtemplate: allow cmdline build-version to overrideKevin Hilman1-4/+5
Allow the --build-version cmdline option to override the other ways of generating the kernel.version metadata. Change-Id: I9da1de7fdc795d888a7b864965755821a53e2830 Signed-off-by: Kevin Hilman <khilman@baylibre.com>
2018-09-28Extend timeouts, add callback and gitignoreJan-Simon Möller1-1/+1
Change-Id: Ib28d25e1efd0033458fa9ae787610a8de9f5d275 Signed-off-by: Jan-Simon Möller <jsmoeller@linuxfoundation.org>
2018-09-27Add shortcut script for ci testsJan-Simon Möller1-0/+19
call with ./run-flounder-ci-tests 5.99.x lava-tool needs the auth-token setup. Signed-off-by: Jan-Simon Möller <jsmoeller@linuxfoundation.org>
2018-09-12fix metadata for ci build-typeguppy_6.90.0guppy/6.90.06.90.0Kevin Hilman1-2/+14
When using --build-type=ci, the url_branch and url_version are repurposed for gerrit changeid and patchset. However, this means that the kernelCI metadata fields "branch" and "version" values are interpreted as integers by the backend, causing various problems. To add clarity to kernelCI fields, prefix with "changeid-" and "patchset-", and this also makes kernelci-backend interpret fields as strings, as expected. Change-Id: I6b648d9c94751a3ce20ec48c593d60b7e71640b1 Signed-off-by: Kevin Hilman <khilman@baylibre.com>
2018-06-26utils/agljobtemplate: fixup image_type, branch and versionKevin Hilman1-0/+7
Fixup LAVA job metadata that is used by kernelCI UI for displaying branch, and version info, and also set "image-type" to the AGL build type (e.g., gerrit, snapshot, release) Change-Id: I12ca93dfbe8629bde5dc35ab1f056f8331805e40 Signed-off-by: Kevin Hilman <khilman@baylibre.com>
2018-01-18job-prereq: Fix the tool after build changesLoys Ollivier2-2/+2
The job-prereq tool got broken by some latest changes on the build/url scheme. Make the url argument for agljobtemplate optionnal. Pass build_type argument as build_type now that it is supported. Fixes: 788b31a122c3 ("utils: change the url / build behavior scheme") Change-Id: Ie9a0fc728a5e31cabd32e6463f2c6f913e1bd2cf Signed-off-by: Loys Ollivier <lollivier@baylibre.com>
2018-01-16Merge changes I44ae2990,Ied4e9f80,I9ce801a7Jan-Simon Moeller2-34/+43
* changes: templates: fix the rootfs name for m3ulcb and rpi3 daily builds utils: define test-plans based on build-type utils: change the url / build behavior scheme
2018-01-10templates: fix the rootfs name for m3ulcb and rpi3 daily buildsLoys Ollivier1-0/+1
The rootfs filename has changed for the daily builds. Change the default to the new filename for both platforms. Change-Id: I44ae29902d882ab6f38dc14bba11cc8aee88f8c2 Signed-off-by: Loys Ollivier <lollivier@baylibre.com>
2018-01-10utils: define test-plans based on build-typeLoys Ollivier2-19/+26
As the list of test is expending, we want to be able to specify test plans grouping several test definitions. These test plans are build type specific. Create a config file that specifies the test plans for each build type. If the user does not specify the tests to run then use the default ones for the build-type. Change-Id: Ied4e9f80d3e42787174189cd08499a2906e500ef Signed-off-by: Loys Ollivier <lollivier@baylibre.com>
2018-01-10utils: change the url / build behavior schemeLoys Ollivier2-23/+24
This is the first patch of the serie to differentiate builds and urls. As of now we were using the --url option to specify a build-type. Add a new option --build-type which specifies which type of build it is. From this build-type if no url is specified, the url can be defaulted by a configuration file. This configuration file is specific per user, e.g. AGL, others... Change-Id: I9ce801a7518b78ee859c6c3bbcad3a89e884e832 Signed-off-by: Loys Ollivier <lollivier@baylibre.com>
2018-01-03utils: Verify that callback options are correct v2eel_5.0.0eel/5.0.05.0.0Loys Ollivier1-2/+2
'--callback-from' is mandatory but not '--callback-to'. Fix this and allow specifying only 'from' without 'to'. Fixes: 5c6cf2bf9c09 ("utils: Verify that callback options are correct") Change-Id: I0706950cee4ede00cdbe7a3d1ade5500cc568502 Signed-off-by: Loys Ollivier <lollivier@baylibre.com>
2017-12-27utils: Miscellaneous pep8 changesLoys Ollivier2-20/+24
Coding style changes to follow pep8 coding guidelines. Change-Id: I9a9e542fb1e24da699639e0c3fd8bf98ad51aa79 Signed-off-by: Loys Ollivier <lollivier@baylibre.com>
2017-12-27utils: Verify that callback options are correctLoys Ollivier2-8/+11
When using callbacks, the user must specify '--callback-to' and '--callback-from'. Make these two arguments mutually dependant. If one is specified, the other becomes mandatory as well. Edit exceptions returns so they give meaningful information to the user in case something went wrong while reading from the callback configuration file. Change-Id: Iaa0de0b6f01ba605407db2f37c3da97aa0cacbc2 Signed-off-by: Loys Ollivier <lollivier@baylibre.com>
2017-12-07Merge "utils/agljobtemplate.py: Raise an error if jinja version is incorrect"eel_5.1.0eel_5.0.3eel_4.99.5eel_4.99.4eel/5.1.0eel/5.0.3eel/4.99.5eel/4.99.45.1.05.0.34.99.54.99.4eelKevin Hilman1-0/+4
2017-12-07utils/job-prereq.py: New tool to get LAVA job files nameLoys Ollivier1-0/+65
Add a new tool that outputs to the stdout the filenames needed by LAVA to run a test job. Required arguments are the machine type and the build type (e.g. CI, snapshots, release). Change-Id: I760fe59c6e04cf1e396c3772426fc8f6042f322c Signed-off-by: Loys Ollivier <lollivier@baylibre.com>
2017-12-06utils/agljobtemplate.py: Raise an error if jinja version is incorrectLoys Ollivier1-0/+4
The jinja2 template calls needs a jinja version >= 2.9. Otherwise fails to create a correct output yaml file. Check for the jinja version at runtime. More precisely, check for a specific function that was added in 2.9 and raise an error if it does not exist. Change-Id: Ifd627a25dcfabdd639c53e1b29b891db8bff50c4 Signed-off-by: Loys Ollivier <lollivier@baylibre.com>
2017-11-08Callback procedure updateLoys Ollivier2-15/+25
New callback procedure. Now the arguments are: - '--callback-from' LAVA lab - '--callback-to' kCI instance This new procedure helps differentiating the lab and the kCI target. Callback config files updated accordingly. Documentation on callback updated. Change-Id: I41b9dc86e33783f1d6a8164fc783557c81678c7f Signed-off-by: Loys Ollivier <lollivier@baylibre.com>
2017-11-07Fix AGL build versionLoys Ollivier1-3/+4
Fix the defaulted build version if not set from command line. Change-Id: Ia61dca57abad29cd9e1305bfead15e75c81e06f4 Signed-off-by: Loys Ollivier <lollivier@baylibre.com>
2017-11-06New machine, url, branch, version argumentslollivier2-20/+60
- Machine is now a mandatory argument: --machine - Change in the URL scheme usage: Now the argument is --url, it should be used with --branch & --version (or --changeid and --patchset which are aliases). The default url is the latest AGL release (dab - 4.0.2) - Build version is derived from the URL, branch and version if not set through command line. Example usage: ./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 Update the README.md following changes on the url scheme and --machine argument. Bug-AGL: SPEC-975 Change-Id: Idd0d539627d56e8d28e1e4990570a929b3fa0f5d Signed-off-by: lollivier <lollivier@baylibre.com>
2017-10-06New arguments to specify build artifacts namesLoys Ollivier2-12/+24
Added new command line arguments to specifiy build artifacts names: - "--rootfs-img": for the rootfs file name - "--kernel-img": for the kernel name - "--dtb-img": for the dtb file name - "--modules-img": for the modules file name Change-Id: I665dee2b326aeaaf35148345f0501e49950ba9aa Signed-off-by: Loys Ollivier <lollivier@baylibre.com>
2017-10-04Add build_version command line optionLoys Ollivier2-2/+7
Add an option to specify the build version from the command line. The kernel_version in the job metadata is updated accordingly if this option is used. Otherwise the default kernel_version is used. Change-Id: Ifc73405d23cb48f48be3d558588bbd20b5063552 Signed-off-by: Loys Ollivier <lollivier@baylibre.com>
2017-10-03Revert "Add version command line option"Kevin Hilman2-7/+2
This reverts commit 2bc4acf27f841ee4e9554320ad03fa5d53f4b34b. Fails with: argparse.ArgumentError: argument --version/-v: conflicting option string(s): --version Change-Id: I93fa8b29f53f10e75c73833072d0d79700d31f22 Signed-off-by: Kevin Hilman <khilman@baylibre.com>
2017-10-03Add version command line optionLoys Ollivier2-2/+7
Add an option to specify the build version from the command line. The kernel_version in the metadata is updated accordingly in the job description if this option is used. Otherwise the default kernel_version is used. Change-Id: I2c8903548a232c9f42453f4f33058c1937fcb001 Signed-off-by: Loys Ollivier <lollivier@baylibre.com>
2017-09-21create-jobs: find templates with relative pathKevin Hilman1-2/+3
Change-Id: I89077a0e84fce087a1e72e3232fac3161b6c9da1 Signed-off-by: Kevin Hilman <khilman@baylibre.com>
2017-09-19rfs-image: provide command line options to setup the image nameJerome Brunet2-3/+20
Provide 2 new command line options: --img-name and --img-ext These two options require one another since the name image will be composed from both of them in the following way: rfs_image = img_name + "-" + yocto-machine + "." + img_ext Change-Id: I2b6d174b4c141cea28ce63c3c7c7beae1a82ed4c Signed-off-by: Jerome Brunet <jbrunet@baylibre.com>
2017-09-19rootfs_type: remove nfsJerome Brunet1-1/+1
NFS is untested and not used at the moment. Remove it for now to avoid unnecessary issues Change-Id: Ide7f0663f3c31cde14dcda3c6e6694e22165bf49 Signed-off-by: Jerome Brunet <jbrunet@baylibre.com>
2017-09-08Merge "create-jobs: Do not require jobid argument"Kevin Hilman1-1/+1
2017-09-08create-jobs: Do not require jobid argumentLoys Ollivier1-1/+1
Do not require jobid argument as it's too specific to one gerrit-based jobs URLs. Change-Id: I93342db3fabd7dc692e345f1fc1a8e5343b06537 Signed-off-by: Loys Ollivier <lollivier@baylibre.com> Signed-off-by: Kevin Hilman <khilman@baylibre.com>
2017-09-08Add callback option to command lineLoys Ollivier2-3/+27
The callback option takes one argument. It is the name of the file located in ./templates/callback/ that contains all the "secret" information such as the callback FQDN, lab name and token. A readme is provided: ./templates/callback/callback_readme.txt Change-Id: Id457d90eba0d1312e43246ca607289ad829fd55f Signed-off-by: Loys Ollivier <lollivier@baylibre.com> Signed-off-by: Kevin Hilman <khilman@baylibre.com>
2017-09-07rootfs_type: add default rootfs type for each deviceJerome Brunet2-4/+6
Add a default rootfs type for each device. the type can still be overridden from the command line. The 'boot' parameter is no longer required with this change Change-Id: I666287d83652bcd81d9619eee75bf9be292d936a Signed-off-by: Jerome Brunet <jbrunet@baylibre.com> Signed-off-by: Kevin Hilman <khilman@baylibre.com>
2017-09-01initial snapshot: LAVA job creation based on templatesKevin Hilman2-0/+141
Change-Id: I5d545d3531f4c4190453724738076bd4eddfc4d6 Signed-off-by: Jerome Brunet <jbrunet@baylibre.com> Signed-off-by: Loys Ollivier <lollivier@baylibre.com> Signed-off-by: Kevin Hilman <khilman@baylibre.com>