variables: GIT_SUBMODULE_STRATEGY: normal stages: - test - cross_distro .test_template: &distro_test script: - meson _build . - cd _build - ninja test flatpak:master: image: registry.gitlab.com/alatiera/gnome-nightly-oci/gnome-master:latest stage: test script: - flatpak-builder --stop-at=nautilus app build-aux/flatpak/org.gnome.Nautilus.json # Make sure to keep this in sync with the Flatpak manifest, all arguments # are passed except the config-args because we build it ourselves - flatpak build app meson --prefix=/app --libdir=/app/lib -Dprofile=development -Dtests=all _build - flatpak build app ninja -C _build install - flatpak-builder --finish-only --repo=repo app build-aux/flatpak/org.gnome.Nautilus.json # Make a Flatpak Nautilus bundle for people to test - flatpak build-bundle repo nautilus-dev.flatpak --runtime-repo=https://sdk.gnome.org/gnome-nightly.flatpakrepo org.gnome.NautilusDevel # Run automatic tests inside the Flatpak env - xvfb-run -a -s "-screen 0 1024x768x24" flatpak build app ninja -C _build test artifacts: paths: - nautilus-dev.flatpak - _build/meson-logs/meson-log.txt - _build/meson-logs/testlog.txt expire_in: 2 days cache: paths: - .flatpak-builder/cache fedora:rawhide: image: fedora:rawhide stage: cross_distro before_script: - dnf install -y 'dnf-command(builddep)' redhat-rpm-config - dnf builddep -y nautilus <<: *distro_test only: - schedules - web - tags ubuntu:devel: image: ubuntu:devel stage: cross_distro before_script: # Ubuntu requires running update to fetch metadata and find packges - apt update - apt install -y gcc meson gettext itstool git libgtk-3-dev libgnome-autoar-0-dev libgnome-desktop-3-dev gobject-introspection libxml2-dev libtracker-control-2.0-dev desktop-file-utils libgexiv2-dev libgail-3-dev libtracker-sparql-2.0-dev libgirepository1.0-dev <<: *distro_test only: - schedules - web - tags opensuse:tumbleweed: image: opensuse:tumbleweed stage: cross_distro before_script: - zypper install -y gcc meson gettext-runtime gettext-tools itstool git gtk3-devel gnome-autoar-devel libgnome-desktop-3-devel gobject-introspection-devel libxml2-devel tracker-devel desktop-file-utils libgexiv2-devel <<: *distro_test only: - schedules - web - tags