geary/.gitlab-ci.yml
Michael Gratton a47e0fcede Plugin: Add new sent-sound plugin
Optional plugin to play the sent-mail sound from the desktop's system
sound theme when an email is sent.

Fixes #598
2020-03-21 17:19:18 +11:00

110 lines
3 KiB
YAML

#
# Geary CI config.
#
include: 'https://gitlab.gnome.org/GNOME/citemplates/raw/master/flatpak/flatpak_ci_initiative.yml'
variables:
# Flatpak CI vars
BUNDLE: geary-dev.flatpak
# 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 libhandy-devel libpeas-devel
libsecret-devel libunwind-devel libxml2-devel libytnef-devel
sqlite-devel webkitgtk4-devel
FEDORA_TEST_DEPS: glibc-langpack-en tar xz Xvfb
# 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-0.0-dev libjson-glib-dev libmessaging-menu-dev
libpeas-dev libsecret-1-dev libsqlite3-dev libunwind-dev
libwebkit2gtk-4.0-dev libxml2-dev libytnef0-dev
UBUNTU_TEST_DEPS: 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:
- 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
MESON_ARGS: "-Dprofile=development"
RUNTIME_REPO: 'https://nightly.gnome.org/gnome-nightly.flatpakrepo'
TEST_RUN_ARGS: $TEST_ARGS
extends: .flatpak
review:
stage: deploy
dependencies:
- flatpak
extends: .review
stop_review:
stage: deploy
extends: .stop_review
nightly:
extends: '.publish_nightly'
only:
refs:
- mainline