summaryrefslogtreecommitdiff
path: root/.gitlab-ci.yml
diff options
context:
space:
mode:
authorEmmanuele Bassi <ebassi@gnome.org>2020-05-15 13:21:45 +0100
committerEmmanuele Bassi <ebassi@gnome.org>2020-05-17 00:30:07 +0100
commit8070bac06c73836f914c0013ce9ccd8b99b1e42e (patch)
treee9604eb59f6797404b4ca5a2e148453d9b0fd403 /.gitlab-ci.yml
parentbc75965053da23bca009f6cb6d50a539e04d7ae4 (diff)
downloadgtk+-8070bac06c73836f914c0013ce9ccd8b99b1e42e.tar.gz
ci: Use extends instead of YAML anchors
The `extends` keyword is more readable than YAML's weird anchor syntax, and we don't have too many anchors in our job definitions anyway.
Diffstat (limited to '.gitlab-ci.yml')
-rw-r--r--.gitlab-ci.yml97
1 files changed, 48 insertions, 49 deletions
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 84a9e0ddca..141954326a 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -27,29 +27,14 @@ variables:
style-check-diff:
extends: .only-default
- image: registry.gitlab.gnome.org/gnome/gtk/fedora:v16
+ image: registry.gitlab.gnome.org/gnome/gtk/fedora:v17
stage: .pre
allow_failure: true
script:
- .gitlab-ci/run-style-check-diff.sh
-fedora-x86_64:
+.build-fedora-default:
image: registry.gitlab.gnome.org/gnome/gtk/fedora:v17
- stage: build
- variables:
- EXTRA_MESON_FLAGS: "--buildtype=debug --default-library=both"
- script:
- - 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 x11
- - .gitlab-ci/run-tests.sh _build wayland
- - .gitlab-ci/run-tests.sh _build broadway
artifacts:
when: always
reports:
@@ -67,10 +52,34 @@ fedora-x86_64:
- "${CI_PROJECT_DIR}/_build/testsuite/css/output/*/*.syscap"
cache:
key: "$CI_JOB_NAME"
- <<: *cache-paths
+ paths:
+ - _ccache/
+ - subprojects/gdk-pixbuf/
+ - subprojects/glib/
+ - subprojects/graphene/
+ - subprojects/libepoxy/
+ - subprojects/pango/
+
+fedora-x86_64:
+ extends: .build-fedora-default
+ stage: build
+ variables:
+ EXTRA_MESON_FLAGS: "--buildtype=debug --default-library=both"
+ script:
+ - 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 x11
+ - .gitlab-ci/run-tests.sh _build wayland
+ - .gitlab-ci/run-tests.sh _build broadway
release-build:
- image: registry.gitlab.gnome.org/gnome/gtk/fedora:v16
+ extends: .build-fedora-default
stage: build
variables:
EXTRA_MESON_FLAGS: "--buildtype=release"
@@ -83,24 +92,8 @@ release-build:
_build
- ninja -C _build
- .gitlab-ci/run-tests.sh _build x11
- artifacts:
- when: always
- reports:
- junit:
- - "${CI_PROJECT_DIR}/_build/report-x11.xml"
- name: "gtk-${CI_COMMIT_REF_NAME}"
- paths:
- - "${CI_PROJECT_DIR}/_build/meson-logs"
- - "${CI_PROJECT_DIR}/_build/report*.xml"
- - "${CI_PROJECT_DIR}/_build/report*.html"
- - "${CI_PROJECT_DIR}/_build/testsuite/reftests/output/*/*.png"
- - "${CI_PROJECT_DIR}/_build/testsuite/gsk/compare/*/*/*.png"
- - "${CI_PROJECT_DIR}/_build/testsuite/css/output/*/*.syscap"
- cache:
- key: "$CI_JOB_NAME"
- <<: *cache-paths
-.mingw-defaults: &mingw-defaults
+.mingw-defaults:
stage: build
tags:
- win32-ps
@@ -109,15 +102,21 @@ release-build:
- C:\msys64\usr\bin\bash -lc "bash -x ./.gitlab-ci/test-msys2.sh"
cache:
key: "$CI_JOB_NAME"
- <<: *cache-paths
+ paths:
+ - _ccache/
+ - subprojects/gdk-pixbuf/
+ - subprojects/glib/
+ - subprojects/graphene/
+ - subprojects/libepoxy/
+ - subprojects/pango/
msys2-mingw32:
+ extends: .mingw-defaults
variables:
MSYSTEM: "MINGW32"
CHERE_INVOKING: "yes"
- <<: *mingw-defaults
-.flatpak-defaults: &flatpak-defaults
+.flatpak-defaults:
image: registry.gitlab.gnome.org/gnome/gnome-runtime-images/gnome:master
stage: flatpak
allow_failure: true
@@ -131,45 +130,45 @@ msys2-mingw32:
- bash -x ./.gitlab-ci/flatpak-build.sh "${APPID}"
# Manual jobs, for branches and MRs
-.flatpak-manual: &flatpak-manual
- <<: *flatpak-defaults
+.flatpak-manual:
+ extends: .flatpak-defaults
when: manual
# Only build Flatpak bundles automatically on master
-.flatpak-master: &flatpak-master
- <<: *flatpak-defaults
+.flatpak-master:
+ extends: .flatpak-defaults
only:
- master
flatpak-manual:demo:
+ extends: .flatpak-manual
variables:
APPID: org.gtk.Demo4
- <<: *flatpak-manual
flatpak-master:demo:
+ extends: .flatpak-master
variables:
APPID: org.gtk.Demo4
- <<: *flatpak-master
flatpak-manual:widget-factory:
+ extends: .flatpak-manual
variables:
APPID: org.gtk.WidgetFactory4
- <<: *flatpak-manual
flatpak-master:widget-factory:
+ extends: .flatpak-master
variables:
APPID: org.gtk.WidgetFactory4
- <<: *flatpak-master
flatpak-manual:icon-browser:
+ extends: .flatpak-manual
variables:
APPID: org.gtk.IconBrowser4
- <<: *flatpak-manual
flatpak-master:icon-browser:
+ extends: .flatpak-master
variables:
APPID: org.gtk.IconBrowser4
- <<: *flatpak-master
static-scan:
image: registry.gitlab.gnome.org/gnome/gtk/fedora:v16