summaryrefslogtreecommitdiff
path: root/.gitlab-ci
Commit message (Collapse)AuthorAgeFilesLines
* gitlab CI: pre-install all packages we needPeter Hutterer2022-11-162-8/+5
| | | | | | | | | | | | Running "dnf install" during a job can lead to issues when the image is old - package renames/replacements/etc. may require a dnf upgrade to get those packages sorted first before our dnf install works. This hasn't been a problem for us because we had weekly rebuilds of the images scheduled and were usually on the latest package set but let's do this properly anyway. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
* gitlab CI: update freebsd to 13.1Peter Hutterer2022-11-161-2/+2
| | | | | | | | | | This gets rid of of the following error: ld-elf.so.1: /lib/libc.so.7: version FBSD_1.7 required by /usr/local/lib/libpython3.9.so.1.0 not found Too tired to debug what is really going on, so let's pretend the update is the best way to fix this. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
* gitlab CI: don't install valgrind, it's already in the templatePeter Hutterer2022-11-151-2/+0
| | | | | | This has been a noop for quite a while, so we might as well skip it. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
* CI: drop the job count for the valgrind test suite to 2Peter Hutterer2022-09-021-0/+2
| | | | | | | Too many timing-related failures with 4 or (the default) 8 jobs, clearly our runners aren't fast enough. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
* CI: in b2c, compile on the host, then test in qemuBenjamin Tissoires2022-09-026-5/+64
| | | | | | | | Looks like we are having clock skew issues on qemu, so given that we just need qemu in the image, we can compile on the host (reliable) and then only start the tests in qemu. Signed-off-by: Benjamin Tissoires <benjamin.tissoires@gmail.com>
* CI: start a full systemd environment before running the testsuiteBenjamin Tissoires2022-09-022-1/+70
| | | | Signed-off-by: Benjamin Tissoires <benjamin.tissoires@gmail.com>
* CI: include systemd-udev in the fedora imageBenjamin Tissoires2022-09-021-1/+2
| | | | | | | This will allow us to have the udevadm tool and systemd-udevd available while running inside qemu Signed-off-by: Benjamin Tissoires <benjamin.tissoires@gmail.com>
* CI: rely on b2c to start qemu testsBenjamin Tissoires2022-09-022-29/+30
| | | | | | | | This allows us to not have to create a specific image, and also should be more reliable because we don't have to boot a full distribution each time we just start our test suite. Signed-off-by: Benjamin Tissoires <benjamin.tissoires@gmail.com>
* CI: do not retry the qemu runsBenjamin Tissoires2022-09-011-3/+0
| | | | | | They should be more reliable now, so no need to try them twice Signed-off-by: Benjamin Tissoires <benjamin.tissoires@gmail.com>
* CI: remove unused testBenjamin Tissoires2022-09-011-2/+0
| | | | | | | | I am pretty sure this one guard is a leftover from a previous version. That is because use_for_custom_build_tests is true when use_for_qemu_tests is, so probably a useless test here. Signed-off-by: Benjamin Tissoires <benjamin.tissoires@gmail.com>
* CI: make freebsd slightly more in line with othersBenjamin Tissoires2022-09-012-11/+14
| | | | | | | | | | the combination of want_qemu and skip_container is not very straight forward. What we actually have, is that freebsd is only qemu based, so there is no point in really having a `_QEMU` tag for it. Signed-off-by: Benjamin Tissoires <benjamin.tissoires@gmail.com>
* CI: remove one occurrence of fedora instead of distro.nameBenjamin Tissoires2022-09-011-1/+1
| | | | | | | For .{{distro.name}}-build@template, everything is parametrized with the distro name, so having plain 'fedora' might bite us in the future. Signed-off-by: Benjamin Tissoires <benjamin.tissoires@gmail.com>
* CI: prettify the include of templatesBenjamin Tissoires2022-09-011-6/+5
| | | | | | Makes the resulting file easier to read Signed-off-by: Benjamin Tissoires <benjamin.tissoires@gmail.com>
* gitlab-ci: add commandline options to the meson-build.sh scriptPeter Hutterer2022-08-311-6/+38
| | | | | | | | The various --skip-build, --skip-test and --skip-setup skip the respective step, the --run-test argument runs the test even where MESON_TEST_ARGS is nil. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
* gitlab-ci: explicitly call "meson setup" to improve readabilityPeter Hutterer2022-08-311-1/+1
| | | | Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
* gitlab-ci: export MESON_TESTTHREADS so meson actually sees itPeter Hutterer2022-08-311-1/+1
| | | | | | | Unlike NINJA_ARGS this isn't passed into meson, it's picked from the env. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
* gitlab ci: drop EOL'd ubuntu 21.10Peter Hutterer2022-08-031-1/+0
| | | | Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
* gitlab CI: dnf remove gtk4-devel for the no-debug-gui deps jobPeter Hutterer2022-06-281-1/+1
| | | | | | | | We've long preferred GTK4 and that's installed on our images, so let's make sure that gets removed together with GTK3 (which isn't actually installed anyway). Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
* gitlab CI: drop the manual meson to junit conversionPeter Hutterer2022-06-143-133/+2
| | | | | | | Meson supports this natively since version 0.55 which is available in all our tested distributions. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
* gitlab CI: bump to F35 and F36, as well as Ubuntu 21.10 and 22.04Peter Hutterer2022-06-112-7/+12
| | | | | | | | F33 and F34 are both EOL. This also fixes the RPM build job to automatically use the latest Fedora version and adds wayland-protocols-devel which is now needed. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
* test: install libinput-test-utils as part of install-testsPeter Hutterer2022-05-091-0/+1
| | | | | | | | This tests a bunch of internal utility functions that may work differently depending on compiler flags, etc. Let's make that test available so it can be verified on an installed system. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
* tools: add a libinput test tool as entry point for our test suitesPeter Hutterer2022-05-091-0/+2
| | | | | | | | | | | | | We already install libinput-test-suite if the meson option install-tests is set, see commit be7045cdc70d8c026d981997852cc706dab3d5b8 test: make the test suite runner available as installed binary To make other tests easily available and more discoverable, add a new tool "libinput test" with the matching man page. This will also help us to enforce some of the namespacing a bit better. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
* gitlab CI: fail the sanity check stage if the fork is not publicPeter Hutterer2022-02-241-0/+14
| | | | Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
* gitlab CI: update to latest CI templatesPeter Hutterer2022-01-271-1/+1
| | | | | | | | This include ci-templates commit 0c312d9c7255f which hopefully fixes our current headaches with the one non-signed-off commit that somehow managed to find its way into the repo. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
* test: use MESON_TESTTHREADS to determine the number of jobsPeter Hutterer2021-08-031-1/+2
| | | | | | | | | | | | meson uses MESON_TESTTHREADS to determine the number of parallel test jobs. Since our main test suite cannot be run in parallel anyway, use that same variable in litest to determine how many jobs we should fork off. In the CI pipeline, we can use FDO_CI_CONCURRENT to pass that down so we don't end up running a billion jobs on a test runner. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
* ci: update to GTK 4 when availableJosé Expósito2021-08-031-4/+4
| | | | | | | | | Update GTK to version 4 on Fedora, Arch and Alpine Linux. Not updating Debian and FreeBSD because the package is not available yet and Ubuntu because it is not available on 20.10. Signed-off-by: José Expósito <jose.exposito89@gmail.com>
* debug-gui: pointer locking on WaylandJosé Expósito2021-08-031-0/+1
| | | | | | Use the pointer constraints protocol to lock the pointer on Wayland. Signed-off-by: José Expósito <jose.exposito89@gmail.com>
* meson.build: disable documentation by defaultPeter Hutterer2021-08-031-3/+3
| | | | | | | | | | | | This does little other than drag in a whole bunch of dependencies. The libinput documentation is designed to be consumed online, so there's no need building it on every machine. We leave the dependencies installed in the images because it's a lot easier to remove them and test if the build still works than adding them and dragging in every updated package since we built the image. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
* doc: add common failed pipeline errorsJosé Expósito2021-07-301-2/+10
| | | | | | | Add a section in the contributing documentation with common pipeline errors and how to fix them and point to this page when the CI fails. Signed-off-by: José Expósito <jose.exposito89@gmail.com>
* gitlab CI: drop dependencies between jobsPeter Hutterer2021-07-291-2/+3
| | | | | | | | None of our jobs rely on the artifacts of a previous job, so let's not pass those around. Make this part of the default policy and include it from every job. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
* gitlab CI: debug the meson_build scriptPeter Hutterer2021-07-281-0/+1
| | | | Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
* gitlab CI: use the ci-templates FreeBSD templatesPeter Hutterer2021-07-283-82/+43
| | | | | | | | Replace our cross-compilation for FreeBSD with a proper template. FreeBSD doesn't do normal containers so we need a bunch of if/else to skip the container builds. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
* gitlab CI: move the SUITES handling to the template where it mattersPeter Hutterer2021-07-281-1/+2
| | | | | | | | | | Should have been part of 9133693b15eb8211c7b08eb2f486a88d915715f6. This fixes an issue with calls to meson_build.sh with an otherwise empty MESON_TEST_ARGS - thanks to the space before $SUITES it would no longer the zero-string condition in meson_build.sh. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
* gitlab CI: update to latest ci-templatesPeter Hutterer2021-07-282-2/+2
| | | | Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
* gitlab CI: split the qemu meson build parts out as separate templatePeter Hutterer2021-07-281-11/+17
| | | | | | | | This was part of the test-suite-vm template but to make it easily re-usable split out the parts that are just about building in a qemu image from the parts that are specific to running the test suites. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
* gitlab CI: name the qemu tags per distributionPeter Hutterer2021-07-281-3/+3
| | | | | | | | Having only one qemu tag worked only because we only had one distribution using qemu. If we have multiple of those we just duplicate/overwrite the variable so let's not do that. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
* gitlab CI: add a comment to explain how to actually edit the CIPeter Hutterer2021-06-171-0/+4
| | | | | | We tell users not to edit it, but don't tell them how to change it. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
* gitlab CI: use FDO_CI_CONCURRENT in our meson build scriptPeter Hutterer2021-05-251-0/+3
| | | | | | | | | | Always prefix the ninja args with the FDO_CI_CONCURRENT values (i.e. how many jobs the runner tells us). Note that this variable is currently not passed through to the qemu jobs, so inside the VM we'll still use the ninja default values. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
* gitlab CI: add a JUnit XML report for scan-buildPeter Hutterer2021-05-123-6/+139
| | | | | | | | Use a scan-build wrapper to generate plist files, then parse those into a JUnit xml format. This makes the errors appear on the main MR page as opposed to being hidden in the artifacts somewhere. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
* gitlab CI: bump from Fedora 32 to 34Peter Hutterer2021-05-122-4/+4
| | | | Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
* Change various references to the master branch to mainPeter Hutterer2021-04-292-3/+3
| | | | Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
* gitlab CI: switch to Ubuntu 21.04Peter Hutterer2021-04-231-1/+1
| | | | Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
* tools: add a tool to print a libinput recording as a tablePeter Hutterer2021-02-231-0/+2
| | | | | | | This makes it easier to visualize changes in various axes or key states that should not be there, doubly so for long recordings. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
* gitlab CI: move the no-libwacom test suite into its own stagePeter Hutterer2021-02-151-0/+2
| | | | | | Easier to spot visually in the GUI that way Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
* gitlab CI: add a job to make sure we're running all test suitesPeter Hutterer2021-02-121-0/+23
| | | | | | Only needs to run when meson.build or the CI script update Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
* test: drop the custom group namesPeter Hutterer2021-02-121-14/+15
| | | | | | | | | | | | | | The group names are forced by check (they are called suite names there) but for our test suite they provide very little benefit. Much easier to just use the filename a test is in as group name. This removes the pure substring match for --filter-group, it's now fnmatch only. group names are short enough that the typing isn't an issue and we don't want to run tests twice (e.g. 'pad' is also in 'touchpad'). This patch caused #574 until it got fixed in d838e3a3a4c Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
* gitlab CI: make the test suite names a listPeter Hutterer2021-02-122-25/+25
| | | | Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
* gitlab CI: run the scan-build analysis jobs in scriptPeter Hutterer2021-02-121-1/+2
| | | | | | | | after_script ignores any exit status so we can't actually fail the job here Fixes #573 Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
* gitlab CI: rename the VM stage "test-suite"Peter Hutterer2021-02-111-2/+2
| | | | | | A much more sensible name than "vm" Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
* Create /etc/libinput on installPeter Hutterer2021-02-081-0/+1
| | | | | | | | | | Users that need to create the local-overrides.quirks are sometimes hesitant to do so because /etc/libinput doesn't exist by default. Let's create it on install. Related #568 Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>