diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 2c3b35b62e..7f5ef322da 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -12,11 +12,38 @@ stages: - subprojects/libepoxy/ - subprojects/pango/ -fedora-x86_64: &fedora-x86_64-defaults +# Common variables +variables: + COMMON_MESON_FLAGS: "--fatal-meson-warnings --werror" + MESON_TEST_TIMEOUT_MULTIPLIER: 2 + G_MESSAGES_DEBUG: all + +fedora-x86_64: image: registry.gitlab.gnome.org/gnome/gtk/master:v10 stage: build + variables: + EXTRA_MESON_FLAGS: "--buildtype=debug --default-library=both" script: - - bash -x ./.gitlab-ci/test-docker.sh + - meson ${COMMON_MESON_FLAGS} ${EXTRA_MESON_FLAGS} + -Dx11-backend=true + -Dwayland-backend=true + -Dbroadway-backend=true + -Dvulkan=yes + -Dprofiler=true + _build + - ninja -C _build + - .gitlab-ci/run-tests.sh _build + - .gitlab-ci/meson-junit-report.py + --project-name=gtk + --job-id="${CI_JOB_NAME}" + --output=_build/report.xml + _build/meson-logs/testlog.json + - .gitlab-ci/meson-html-report.py + --project-name=gtk + --job-id="${CI_JOB_NAME}" + --reftest-output-dir="_build/testsuite/reftests/output" + --output=_build/report.html + _build/meson-logs/testlog.json artifacts: when: always reports: @@ -34,10 +61,19 @@ fedora-x86_64: &fedora-x86_64-defaults key: "$CI_JOB_NAME" <<: *cache-paths -fedora-x86_64-staticlibs: +fedora-x86_64-release: + image: registry.gitlab.gnome.org/gnome/gtk/master:v10 + stage: build variables: - EXTRA_MESON_FLAGS: "-Ddefault_library=both" - <<: *fedora-x86_64-defaults + EXTRA_MESON_FLAGS: "--buildtype=release" + script: + - meson ${COMMON_MESON_FLAGS} ${EXTRA_MESON_FLAGS} + -Dx11-backend=true + -Dwayland-backend=true + -Dbroadway-backend=true + -Dvulkan=yes + _build + - ninja -C _build .mingw-defaults: &mingw-defaults stage: build diff --git a/.gitlab-ci/Dockerfile b/.gitlab-ci/fedora.Dockerfile similarity index 99% rename from .gitlab-ci/Dockerfile rename to .gitlab-ci/fedora.Dockerfile index d8cabe1a9d..a9006c01f2 100644 --- a/.gitlab-ci/Dockerfile +++ b/.gitlab-ci/fedora.Dockerfile @@ -61,6 +61,7 @@ RUN dnf -y install \ ninja-build \ pango-devel \ pcre-devel \ + pygments \ python3 \ python3-jinja2 \ python3-pip \ diff --git a/.gitlab-ci/run-tests.sh b/.gitlab-ci/run-tests.sh new file mode 100755 index 0000000000..ad3a4a7491 --- /dev/null +++ b/.gitlab-ci/run-tests.sh @@ -0,0 +1,11 @@ +#!/bin/bash + +set -e + +builddir=$1 + +cd ${builddir} +xvfb-run -a -s "-screen 0 1024x768x24" \ + meson test --print-errorlogs \ + --suite=gtk + --no-suite=gtk:a11y