stages: - build - test - weeklytest - deploy build:fedora: image: fedora:28 stage: build script: - dnf install -y gcc meson gettext itstool redhat-rpm-config git gtk3-devel gnome-autoar-devel gnome-desktop3-devel gobject-introspection-devel libselinux-devel libxml2-devel tracker-devel desktop-file-utils libgexiv2-devel gcovr # Waiting for gcovr 3.5 to be released. - pip install git+https://github.com/gcovr/gcovr.git - meson _build . -Db_coverage=true artifacts: paths: - _build test:fedora: image: fedora:28 stage: test dependencies: - build:fedora script: # Coverage data contains paths relative to the build directory, # so changing to it makes writing filter expressions easier. # # _build/src/ contains generated sources, so that is filtered out as well. - cd _build - ninja test - gcovr --root=. --exclude=src/ --exclude=../data/ --exclude=../eel/check-program.c --exclude=../eel/eel-debug.c --exclude=../eel/eel-lib-self-check-functions.c --exclude=../eel/eel-self-checks.c --exclude=../src/animation/ --exclude=../src/gtk/ --exclude=../src/nautilus-lib-self-check-functions.c --exclude=../src/nautilus-self-check-functions.c --exclude=../subprojects/libgd/ --exclude=../test/ coverage: '/^TOTAL.*\s+(\d+\%)$/' build:flatpak: image: flatpak/flatpak-builder:gnome-3-28 stage: build script: # This should be removed once the base image works with git submodules - dnf install -y git - export - flatpak-builder --force-clean --repo=repo app build-aux/flatpak/org.gnome.Nautilus.json - flatpak build-bundle repo nautilus-dev.flatpak org.gnome.Nautilus artifacts: paths: - nautilus-dev.flatpak expire_in: 2 days build:rawhide: image: fedora:rawhide stage: weeklytest script: - dnf install -y gcc meson gettext itstool redhat-rpm-config git gtk3-devel gnome-autoar-devel gnome-desktop3-devel gobject-introspection-devel libselinux-devel libxml2-devel tracker-devel desktop-file-utils libgexiv2-devel - meson _build . - cd _build - ninja test only: - schedules build:ubuntu: image: ubuntu:devel stage: weeklytest script: - apt install -y gcc meson gettext itstool git gtk3-devel gnome-autoar-devel gnome-desktop3-devel gobject-introspection-devel libselinux-devel libxml2-devel tracker-devel desktop-file-utils libgexiv2-devel - meson _build . - cd _build - ninja test only: - schedules build:suse: image: opensuse:tumbleweed stage: weeklytest script: - dnf install -y gcc meson gettext itstool git gtk3-devel gnome-autoar-devel gnome-desktop3-devel gobject-introspection-devel libselinux-devel libxml2-devel tracker-devel desktop-file-utils libgexiv2-devel - meson _build . - cd _build - ninja test only: - schedules