summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSam Thursfield <sam@afuera.me.uk>2018-07-15 23:01:01 +0200
committerSam Thursfield <sam@afuera.me.uk>2018-07-16 12:39:11 +0200
commit19f1e85b607aa86a057007034cf0980bdf0b5b21 (patch)
tree90db037f1c1cd85e8200a45e9f5e9c5d1944af48
parentc48800c81077f7fe572caee497e8cf3b93062c42 (diff)
downloadtracker-19f1e85b607aa86a057007034cf0980bdf0b5b21.tar.gz
ci: Use a custom base image with packages we need preinstalled
The images are built from this project: https://gitlab.gnome.org/samthursfield/tracker-oci-images
-rw-r--r--.gitlab-ci.yml64
1 files changed, 4 insertions, 60 deletions
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index c2ab622ca..9c18caf9c 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -1,74 +1,18 @@
stages:
- test
-# Note that using Fedora 28 triggered some weird compiler bug for me:
-#
-# GISCAN Tracker_C-2.0.gir
-# annobin: Tracker_2.0.c: Error: plugin built for compiler version (8.0.1) but run with compiler version (8.1.1)
-# cc1: error: fail to initialize plugin /usr/lib/gcc/x86_64-redhat-linux/8/plugin/annobin.so
-# Traceback (most recent call last):
-# File "/usr/lib64/python3.6/distutils/unixccompiler.py", line 127, in _compile
-# extra_postargs)
-# File "/usr/lib64/python3.6/distutils/ccompiler.py", line 909, in spawn
-# spawn(cmd, dry_run=self.dry_run)
-# File "/usr/lib64/python3.6/distutils/spawn.py", line 36, in spawn
-# _spawn_posix(cmd, search_path, dry_run=dry_run)
-# File "/usr/lib64/python3.6/distutils/spawn.py", line 159, in _spawn_posix
-# % (cmd, exit_status))
-# distutils.errors.DistutilsExecError: command 'gcc' failed with exit status 1
-#
-test-autotools-fedora27:
+test-autotools-fedora-latest:
stage: test
- image: fedora:27
-
- before_script:
- # This takes a long time, we could prebuild a Docker image that already
- # contains this stuff instead, and use that.
- - dnf install -y 'dnf-command(builddep)' dbus-devel dbus-x11 libseccomp-devel make redhat-rpm-config
- - dnf builddep -y tracker
-
- # This shouldn't be needed, but currently is.
- #
- # Some of the tests depend on the GSettings schemas being installed.
- #
- # Some of the tests also seem to interact with the session-wide Tracker
- # instance!
- - dnf install -y tracker
-
- # tests/libtracker-common/tracker-file-utils-test will fail if run as root,
- # as it makes assertions about a path being unwritable. Better to test as a
- # normal user in any case.
- - useradd -Um tracker
- - chown -R tracker:tracker .
+ image: registry.gitlab.gnome.org/sthursfield/tracker-oci-images/amd64/fedora:latest
script:
- su tracker -c './autogen.sh --disable-functional-tests --prefix=/usr'
- su tracker -c 'make -j'
- LANG=en_US.UTF8 VERBOSE=1 su tracker -c 'dbus-launch make check'
-test-meson-fedora27:
+test-meson-fedora28:
stage: test
- image: fedora:27
-
- before_script:
- # This takes a long time, we could prebuild a Docker image that already
- # contains this stuff instead, and use that.
- - dnf install -y 'dnf-command(builddep)' dbus-devel dbus-x11 libseccomp-devel meson redhat-rpm-config
- - dnf builddep -y tracker
-
- # This shouldn't be needed, but currently is.
- #
- # Some of the tests depend on the GSettings schemas being installed.
- #
- # Some of the tests also seem to interact with the session-wide Tracker
- # instance!
- - dnf install -y tracker
-
- # tests/libtracker-common/tracker-file-utils-test will fail if run as root,
- # as it makes assertions about a path being unwritable. Better to test as a
- # normal user in any case.
- - useradd -Um tracker
- - chown -R tracker:tracker .
+ image: registry.gitlab.gnome.org/sthursfield/tracker-oci-images/amd64/fedora:latest
script:
- su tracker -c 'mkdir build'