image: fedora:rawhide stages: - build - test - deploy variables: DEPENDENCIES: accountsservice-devel cheese-libs-devel chrpath clutter-gtk-devel colord-devel colord-gtk-devel cups-devel desktop-file-utils docbook-style-xsl gdk-pixbuf2-devel gettext git glib2-devel gnome-bluetooth-libs-devel gnome-desktop3-devel gnome-online-accounts-devel gnome-settings-daemon-devel grilo-devel gsettings-desktop-schemas-devel gtk3-devel ibus-devel intltool libcanberra-devel libgtop2-devel libgudev-devel libnma-devel libpwquality-devel libsmbclient-devel libsoup-devel libwacom-devel libX11-devel libXi-devel libxml2-devel libxslt libXxf86misc-devel meson ModemManager-glib-devel NetworkManager-libnm-devel polkit-devel pulseaudio-libs-devel upower-devel python3-dbusmock xorg-x11-server-Xvfb mesa-dri-drivers before_script: - dnf update -y --nogpgcheck && dnf install -y --nogpgcheck $DEPENDENCIES ## # Stage: Build # # Checks if GNOME Control Center is properly building and installing. This is the # most important stage of the CI, and no MR should ever be merged if it breaks # any of them. ## build: stage: build script: - meson . _build - ninja -C _build - ninja -C _build install ## # Stage: Test # # Runs the unit tests. ## test: stage: test script: - meson . _build - ninja -C _build - meson test -C _build --verbose --no-stdsplit ## # Stage: Deploy # # Checks if the released version is in a good shape. ## deploy: stage: deploy script: - meson . _build - ninja -C _build - meson test -C _build - ninja dist -C _build only: - tags