From 2bc3ee4e5675b4f6afceb069845e28a7a201d872 Mon Sep 17 00:00:00 2001 From: Michael James Gratton Date: Mon, 11 Jun 2018 10:14:47 +1000 Subject: [PATCH] Add some additional builds. Flatpak build courtesy chergert. --- .gitlab-ci.yml | 85 +++++++++++++++++++++++++++++++++++++++++++------- 1 file changed, 74 insertions(+), 11 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 716b9856..344ff330 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -7,12 +7,23 @@ stages: variables: BUILD_DIR: build - FEDORA_DEPENDENCIES: 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 - gnome-online-accounts-devel itstool + CONFIG_CMD: meson --buildtype=debug build + BUILD_CMD: ninja -v -C $BUILD_DIR + TEST_CMD: meson test -v --no-stdsplit -C $BUILD_DIR engine-tests + 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 + gnome-online-accounts-devel itstool + 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 libgoa-1.0-dev itstool + libmessaging-menu-dev libunity-dev # # Stages @@ -23,9 +34,61 @@ fedora: image: fedora:latest before_script: - dnf update -y --nogpgcheck - - dnf install -y --nogpgcheck $FEDORA_DEPENDENCIES + - dnf install -y --nogpgcheck $FEDORA_DEPS script: - - meson --buildtype=debug build - - ninja -v -C $BUILD_DIR - - meson test -v --no-stdsplit -C $BUILD_DIR engine-tests - - ninja -v -C $BUILD_DIR install + - $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 + 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/