# # Geary CI config. # include: 'https://gitlab.gnome.org/GNOME/citemplates/raw/master/flatpak/flatpak_ci_initiative.yml' variables: # ImapDB and other tests that touch the disk are super slow on CI # runners like gcc150.osuosl.org that use platter drives still. # See Infrastructure/Infrastructure#97. TEST_ARGS: -t 10 # Locale used for unit tests. See notes in test/test-engine.vala and # test/test-client.vala. TEST_LOCALE: en_US.UTF-8 # Build BUILD_DIR: build CONFIG_CMD: meson --buildtype=debug $BUILD_DIR BUILD_CMD: ninja -v -C $BUILD_DIR TEST_CMD: xvfb-run meson test -v --no-stdsplit -C $BUILD_DIR $TEST_ARGS INSTALL_CMD: ninja -v -C $BUILD_DIR install # Fedora packages FEDORA_DEPS: meson vala desktop-file-utils enchant2-devel folks-devel gcr-devel glib2-devel gmime30-devel gnome-online-accounts-devel gspell-devel gsound-devel gtk3-devel iso-codes-devel json-glib-devel itstool libappstream-glib-devel libgee-devel libhandy1-devel libicu-devel libpeas-devel libsecret-devel libstemmer-devel libunwind-devel libxml2-devel libytnef-devel sqlite-devel webkitgtk4-devel FEDORA_TEST_DEPS: glibc-langpack-en gnutls-utils tar Xvfb xz # Ubuntu packages UBUNTU_DEPS: meson build-essential valac desktop-file-utils gettext iso-codes itstool libappstream-glib-dev libenchant-2-dev libfolks-dev libgcr-3-dev libgee-0.8-dev libglib2.0-dev libgmime-3.0-dev libgoa-1.0-dev libgspell-1-dev libgsound-dev libgtk-3-dev libhandy-1-dev libicu-dev libjson-glib-dev libmessaging-menu-dev libpeas-dev libsecret-1-dev libsqlite3-dev libstemmer-dev libunwind-dev libwebkit2gtk-4.0-dev libxml2-dev libytnef0-dev UBUNTU_TEST_DEPS: gnutls-bin librsvg2-common locales xauth xvfb fedora: stage: build image: fedora:rawhide before_script: - dnf update -y --nogpgcheck - dnf install -y --nogpgcheck $FEDORA_DEPS $FEDORA_TEST_DEPS script: - $CONFIG_CMD - $BUILD_CMD - $TEST_CMD - $INSTALL_CMD artifacts: when: 'always' paths: - '$BUILD_DIR/meson-logs/meson-log.txt' - '$BUILD_DIR/meson-logs/testlog.txt' expire_in: 2 days ubuntu: stage: build image: ubuntu:devel before_script: - ln -fs /usr/share/zoneinfo/Etc/UTC /etc/localtime - apt-get update - apt-get install -q -y --no-install-recommends $UBUNTU_DEPS $UBUNTU_TEST_DEPS - locale-gen $TEST_LOCALE script: - $CONFIG_CMD - $BUILD_CMD - $TEST_CMD - $INSTALL_CMD artifacts: when: 'always' paths: - '$BUILD_DIR/meson-logs/meson-log.txt' - '$BUILD_DIR/meson-logs/testlog.txt' expire_in: 2 days flatpak: image: 'registry.gitlab.gnome.org/gnome/gnome-runtime-images/gnome:master' variables: APP_ID: org.gnome.Geary.Devel FLATPAK_MODULE: geary MANIFEST_PATH: org.gnome.Geary.yaml RUNTIME_REPO: 'https://nightly.gnome.org/gnome-nightly.flatpakrepo' TEST_RUN_ARGS: $TEST_ARGS BUNDLE: geary-dev.flatpak extends: .flatpak nightly: extends: '.publish_nightly' dependencies: ['flatpak'] needs: ['flatpak']