aboutsummaryrefslogtreecommitdiffstats
path: root/.gitlab-ci/bare-metal
Commit message (Collapse)AuthorAgeFilesLines
* docs: Move the gitlab-ci docs to RST.Eric Anholt2020-07-081-124/+0
| | | | | | | | | I tried not to edit too much meaning in the process, but I did shuffle some stuff around to work as structured documentation. Reviewed-by: Eric Engestrom <[email protected]> Reviewed-by: Erik Faye-Lund <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5510>
* ci/bare-metal: Fail early when we get stuck powering on a cheza.Eric Anholt2020-06-261-1/+2
| | | | | | | I think I've seen about 3 of this error total so far, but waiting 60 minutes for the scripts to give up wastes marge time. Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5651>
* ci: Add a freedreno a630 tracie run.Eric Anholt2020-06-251-0/+5
| | | | | | | | | This job runs in about one minute on the current set of traces, and has successfully revealed some bugs in our current rendering. Takes about 7 minutes currently. Reviewed-by: Tomeu Vizoso <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5433>
* ci: Include trace replay support in ARM rootfses.Rohan Garg2020-06-251-1/+2
| | | | | | | | | | | | | | Builds the renderdoc and apitrace programs so we can replay GL traces on DUTs. [Separated out from 5472's commit that also enabled the jobs in LAVA, dropped unnecessary python packages from arm_build, fixed up arm64_test build, traces-db in baremetal, new commit message by anholt] Signed-off-by: Rohan Garg <[email protected]> Signed-off-by: Tomeu Vizoso <[email protected]> Reviewed-by: Eric Anholt <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5433>
* ci/bare-metal: Skip setting of unset variables at startup.Eric Anholt2020-06-251-1/+3
| | | | | | | | It's silly to be setting (and logging the setting of!) all the env vars we *didn't* set in a job. Reviewed-by: Tomeu Vizoso <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5433>
* ci/bare-metal: Terminate the job with an error on kernel panic.Eric Anholt2020-06-122-2/+6
| | | | | | | | | Otherwise, we'll time out after 60 minutes of waiting for the run to complete. Reviewed-by: Christian Gmeiner <[email protected]> Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/2651 Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5393>
* ci/bare-metal: Stop fetching the git tree.Eric Anholt2020-06-125-9/+17
| | | | | | | | | | | | | | Like for LAVA, make the tradeoff of moving the test scripts and data (55k) into the artifacts in order to make the per-build jobs not have to pull down the git tree (hundreds of MB when you don't hit a cached container for your specific user, which I see happen multiple times a day in my CI runs). To do this, we have to be a bit more careful in some places about our working directory potentially being dirty. Reviewed-by: Christian Gmeiner <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5393>
* ci/bare-metal: Use the deqp-runner bits straight out of the artifacts.Eric Anholt2020-06-122-12/+2
| | | | | | | | | | | | We've already uploaded and downloaded them from fd.o and put them in the rootfs, so we can clean up the extra prep work. Our test job now extends from .test so that the artifacts' install dir with all the scripts is extracted. This required moving the dependency on meson-testing to the x86 test-gl/test-vk job blocks. Reviewed-by: Christian Gmeiner <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5393>
* ci/bare-metal: Make which test to run configurable.Eric Anholt2020-06-122-1/+2
| | | | | | | I'll use this to run tracie in a new job I'm working on. Reviewed-by: Christian Gmeiner <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5393>
* ci/bare-metal: Reword the final output of the init script on the board.Eric Anholt2020-06-123-6/+6
| | | | | | | I'm going to be adding tracie, which isn't deqp. Reviewed-by: Christian Gmeiner <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5393>
* ci: Use rsync for initial nfsroot population on cheza.Eric Anholt2020-06-093-6/+6
| | | | | | | | | | rm -rf and then copying over all the contents again is a waste of time when we'll almost always be using the same rootfs. Saves about 30s of job time. Closes: #3065 Reviewed-by: Christian Gmeiner <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5266>
* ci: Enable pre-merge fractional vulkan CTS runs on the turnip driver.Eric Anholt2020-06-091-0/+2
| | | | | | | | | Test 1/50th of the CTS on a630 pre-merge, since we've got hardware that can do it and infrastructure that should handle instability with a less-mature driver. Reviewed-by: Christian Gmeiner <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5266>
* ci: Build the full VK CTS for baremetal testing.Eric Anholt2020-06-091-2/+6
| | | | | | | | | | | | I'm going to enable the VK CTS on cheza, so swap the deqp we have in the container. build-deqp-vk already included GLES deqp binaries and data, and is a newer branch than the last opengl-es-cts tag. This brings a few things back over from build-deqp-gl for testlog extraction, and copyes out the GLES mustpass lists. Reviewed-by: Christian Gmeiner <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5266>
* ci: add U-Boot specific fetch stringsChristian Gmeiner2020-06-051-1/+5
| | | | | | | | | | | | | U-Boot's fastboot over udp generates the following output: Listening for fastboot command on x.y.z.w Also add a general 'data abort' error string seen with an too old U-Boot version: https://github.com/u-boot/u-boot/commit/95712af Signed-off-by: Christian Gmeiner <[email protected]> Reviewed-by: Eric Anholt <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5258>
* ci: extend expect-output.shChristian Gmeiner2020-06-053-6/+27
| | | | | | | | | | | We need to support different fastboot fetch strings for different bootloader solutions. Lets extend expect-output.sh to support multiple fetch strings (-f) and add support for error catch strings (-e) to stop the CI run early. Signed-off-by: Christian Gmeiner <[email protected]> Reviewed-by: Eric Anholt <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5258>
* ci: bare-metal: make it possible to use a script for serialChristian Gmeiner2020-06-021-4/+12
| | | | | | | | Makes it possible to use e.g. a ser2net script to talk to the devices. Signed-off-by: Christian Gmeiner <[email protected]> Reviewed-by: Eric Anholt <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5268>
* ci: Add scripts for controlling bare-metal chezas.Eric Anholt2020-05-295-73/+232
| | | | | | | | | | | | This will let us: - deploy kernels for testing code depending on new kernel featuers - Ensure a pristine state in the HW before starting our tests - Avoid disk rot on the chezas taking them out (we'd lost 3/9 in a few months). Reviewed-by: Kristian H. Kristensen <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5247>
* ci: Move baremetal DEQP_NO_SAVE_RESULTS setup to the yml.Eric Anholt2020-05-282-1/+1
| | | | | | | I'm going to want it unset (artifacts enabled) for the cheza jobs. Reviewed-by: Kristian H. Kristensen <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5225>
* ci: Improve baremetal's logging of the job env var passthrough.Eric Anholt2020-05-221-0/+4
| | | | | | | Trying to read the sh -x script output was rough, just cat the file once we're done setting it up. Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5089>
* ci: Enable a fractional run with UBO-to-constbuf disabled on a3xx.Eric Anholt2020-05-221-0/+3
| | | | | | | This gets us coverage of an important case in the HW that the CTS otherwise basically doesn't hit. Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5089>
* ci: Don't forget to set NIR_VALIDATE in baremetal runs.Eric Anholt2020-05-221-0/+2
| | | | | | | | | | | | | Given that a530 doesn't have cpufreq, we really don't have the time to be running the validator on all of deqp. This also helps explain why I had to go to such a small fraction on the a3xx gles3 run (which we can now increase). However, a3xx gles2 seems to be fast enough that we can leave it enabled and get coverage for older chips. Because we run more tests now, clear out some stale xfails from the a3xx list. Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5089>
* ci: Fix the nick used in IRC reporting.Eric Anholt2020-05-061-0/+1
| | | | | | | | | | | | robclark found that we needed unique IDs when multiple runners were trying to report flakes at the same time, but it turns out due to nick limits (16 chars on freenode) we were just getting all the runners appended with "-142" (or whatever the prefix of the pipelines are these days). And, for the new flake reporting from baremetal, all the runners ended up being just "google-freedreno". Reviewed-by: Rob Clark <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4896>
* ci: Improve the flakes reports on IRC.Eric Anholt2020-05-061-0/+2
| | | | | | | | | We were incorrectly taking the merge-request on non-MR pipelines (the master build after merge) due to a missing '$'. And, for those pipelines, it would be nice to note whether they're for master or a stable branch. Reviewed-by: Rob Clark <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4896>
* ci: Enable IRC flake reporting on freedreno baremetal boards.Eric Anholt2020-05-062-0/+8
| | | | | | | | | The IRC channel is useful for me to track and ban flaky tests before they irritate people too much. Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/2654 Reviewed-by: Rob Clark <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4896>
* ci: Clean up setup of the job-specific env vars in baremetal testing.Eric Anholt2020-05-062-10/+16
| | | | | | | Avoids copy and paste errors when adding more vars. Reviewed-by: Rob Clark <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4896>
* ci: bare-metal: power down device after testsChristian Gmeiner2020-04-282-0/+19
| | | | | | | | Helps to save electricity. Signed-off-by: Christian Gmeiner <[email protected]> Reviewed-by: Eric Anholt <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4754>
* ci: Add sanity checking that dEQP gets the expected GL_RENDERER.Eric Anholt2020-04-272-0/+2
| | | | | | | | | | It's easy to get something wrong in the driver build or container or something that results in falling back to swrast, and then your only clue was runtime and how your failure cases suspiciously match a swrast driver's. Reviewed-by: Tomeu Vizoso <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4621>
* ci: Enable --compact-display false on all dEQP runs.Eric Anholt2020-04-271-1/+0
| | | | | | | | We always want to see status updates happening in the logs, otherwise it can like maybe your machine hung until the run actually completes. Reviewed-by: Tomeu Vizoso <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4621>
* gitlab-ci: Place files from the Mesa repo into the build tarballTomeu Vizoso2020-03-262-4/+3
| | | | | | | | | | | | | | | | | | There's some files from the .gitlab-ci directory that are needed in the test stage and that, because the Mesa repository isn't checked out in that stage, need to be made available through other means. Because those files are going to be needed in LAVA devices, place them ino the tarball containing the built files so it's available to both gitlab-ci runners and LAVA devices. Before those files were passed in the artifacts of the Gitlab CI job, but this commit places them into the built tarball so scripts later in the pipeline don't need to account for this discrepancy. Signed-off-by: Tomeu Vizoso <[email protected]> Reviewed-by: Eric Anholt <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4295>
* ci: Enable testing GLES2-3 on a530 (Dragonboard 820c).Eric Anholt2020-03-172-4/+6
| | | | | | | | | Following on from the db410c conversion to baremetal testing, reuse the same scripts in the same rack to run 7 db820c boards (#4/8 is failing in the bootloader for unknown reasons). Reviewed-by: Kristian H. Kristensen <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4177>
* ci: Make a simple little bare-metal fastboot mode for db410c.Eric Anholt2020-03-118-0/+295
This supports powering up the device (using an external tool you provide based on your particular lab), talking over serial to wait for the fastboot prompt, and then booting a fastboot image on a target device. I was previously relying on LAVA for this, but that ran afoul of corporate policies related to the AGPL. However, LAVA wasn't doing too much for us, given that gitlab already has a job scheduler and tagging and runners. We were spending a lot of engineering on making the two systems match up, when we can just have gitlab do it directly. Lightly-reviewed-by: Kristian H. Kristensen <[email protected]> Tested-by: Marge Bot <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4076> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4076>