From: Colin Walters Date: Fri, 28 Apr 2017 13:32:35 +0000 (-0400) Subject: ci: Add a context for testing flatpak X-Git-Tag: archive/raspbian/2022.1-3+rpi1~1^2~321^2^2~64 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=e60b9bc0492358d41e9646df608a40c3f6729f7c;p=ostree.git ci: Add a context for testing flatpak This was part of the philosophy behind https://wiki.gnome.org/Initiatives/GnomeGoals/InstalledTests - libraries like libostree don't need to replicate everything in unit tests, we can use the tests from our dependencies directly too. We'll also get API break coverage testing too. Closes: #818 Approved by: jlebon --- diff --git a/.redhat-ci.yml b/.redhat-ci.yml index e5604040..8b58f80c 100644 --- a/.redhat-ci.yml +++ b/.redhat-ci.yml @@ -135,3 +135,26 @@ tests: artifacts: - test-suite.log + +--- + +inherit: false +branches: + - master + - auto + - try + +context: f25-flatpak +required: false + +# This test case wants an "unprivileged container with bubblewrap", +# which we don't have right now; so just provision a VM and do a +# docker --privileged run. +host: + distro: fedora/25/atomic + +tests: + - docker run --rm --privileged -v $(pwd):/srv/code registry.fedoraproject.org/fedora:25 /bin/sh -c "cd /srv/code && ./ci/flatpak.sh" + +artifacts: + - test-suite.log diff --git a/ci/flatpak.sh b/ci/flatpak.sh new file mode 100755 index 00000000..f7edba3e --- /dev/null +++ b/ci/flatpak.sh @@ -0,0 +1,38 @@ +#!/bin/bash +# Build and run flatpak's unit tests using the just-built ostree for this PR. + +set -xeuo pipefail + +build() { + env NOCONFIGURE=1 ./autogen.sh + ./configure --prefix=/usr --libdir=/usr/lib64 "$@" + make -j 8 +} + +codedir=$(pwd) + +# Core prep +dnf -y install dnf-plugins-core +dnf install -y @buildsys-build +dnf install -y 'dnf-command(builddep)' + +# build+install ostree +dnf builddep -y ostree +build +make install +tmpd=$(mktemp -d) +cd ${tmpd} +# Frozen to a tag for now on general principle +git clone --recursive --depth=1 -b 0.9.3 https://github.com/flatpak/flatpak +cd flatpak +dnf builddep -y flatpak +# And runtime deps +dnf install -y flatpak && rpm -e flatpak +dnf install which attr fuse parallel # for the test suite +build +# We want to capture automake results from flatpak +cleanup() { + mv test-suite.log ${codedir} || true +} +trap cleanup EXIT +make -j 8 check