# # Geary CI config. # stages: - build variables: BUILD_DIR: build CONFIG_CMD: meson --buildtype=debug build BUILD_CMD: ninja -v -C $BUILD_DIR TEST_CMD: xvfb-run meson test -v --no-stdsplit -C $BUILD_DIR INSTALL_CMD: ninja -v -C $BUILD_DIR install FEDORA_DEPS: vala gobject-introspection-devel meson desktop-file-utils libcanberra-devel libgee-devel glib2-devel gmime-devel gtk3-devel libnotify-devel sqlite-devel webkitgtk4-devel libsecret-devel libxml2-devel vala-tools gcr-devel enchant-devel libunwind-devel iso-codes-devel gnome-online-accounts-devel itstool FEDORA_TEST_DEPS: Xvfb tar xz UBUNTU_DEPS: valac libgirepository1.0-dev meson desktop-file-utils libcanberra-dev libgee-0.8-dev libglib2.0-dev libgmime-2.6-dev libgtk-3-dev libsecret-1-dev libxml2-dev libnotify-dev libsqlite3-dev libwebkit2gtk-4.0-dev libgcr-3-dev libenchant-dev libunwind-dev iso-codes libgoa-1.0-dev itstool gettext libmessaging-menu-dev libunity-dev UBUNTU_TEST_DEPS: xauth xvfb # # Stages # fedora: stage: build image: fedora:latest before_script: - dnf update -y --nogpgcheck - dnf install -y --nogpgcheck $FEDORA_DEPS $FEDORA_TEST_DEPS script: - $CONFIG_CMD - $BUILD_CMD - $TEST_CMD - $INSTALL_CMD ubuntu: stage: build image: ubuntu:rolling before_script: - apt-get update - apt-get install -q -y --no-install-recommends $UBUNTU_DEPS $UBUNTU_TEST_DEPS script: - $CONFIG_CMD - $BUILD_CMD - $TEST_CMD - $INSTALL_CMD deb-package: stage: build image: ubuntu:rolling before_script: - apt-get update - apt-get install -q -y --no-install-recommends packaging-dev $UBUNTU_DEPS script: - dpkg-buildpackage -b -us -uc flatpack-package: image: registry.gitlab.gnome.org/gnome/gnome-runtime-images/gnome:master stage: build variables: GIT_SUBMODULE_STRATEGY: normal FLATPAK_ARTIFACT: geary-git.flatpak script: - flatpak-builder flatpak-build org.gnome.Geary.json - flatpak build-export flatpak-repo flatpak-build --update-appstream - flatpak build-bundle flatpak-repo $FLATPAK_ARTIFACT --runtime-repo=https://sdk.gnome.org/gnome-nightly.flatpakrepo org.gnome.Geary artifacts: paths: - $FLATPAK_ARTIFACT expire_in: 2 days cache: # JOB_NAME - Each job will have it's own cache # COMMIT_REF_SLUG = Lowercase name of the branch # ^ Keep diffrerent caches for each branch key: "$CI_JOB_NAME-$CI_COMMIT_REF_SLUG" paths: # Cache .flatpak-builder - .flatpak-builder/cache/ - .flatpak-builder/downloads/ - .flatpak-builder/git/