[pygobject/ci-gtk4] ci: add a gtk4 job. Fixes #249
- From: Christoph Reiter <creiter src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [pygobject/ci-gtk4] ci: add a gtk4 job. Fixes #249
- Date: Tue, 25 Sep 2018 07:47:03 +0000 (UTC)
commit 07f69456b59a979d328ff537352df2b1a0623eda
Author: Christoph Reiter <reiter christoph gmail com>
Date: Sat Sep 22 22:03:27 2018 +0200
ci: add a gtk4 job. Fixes #249
.gitlab-ci.yml | 6 ++++++
.gitlab-ci/Dockerfile.gtk4 | 36 ++++++++++++++++++++++++++++++++++++
.gitlab-ci/run-docker-gtk4.sh | 10 ++++++++++
.gitlab-ci/test-docker-gtk4.sh | 15 +++++++++++++++
4 files changed, 67 insertions(+)
---
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 3a25c6a6..a1a569b7 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -117,6 +117,12 @@ xenial-i386-py2:
script:
- bash -x ./.gitlab-ci/test-docker-old.sh
+gtk4:
+ stage: build_and_test
+ image: registry.gitlab.gnome.org/gnome/pygobject/gtk4:v1
+ script:
+ - bash -x ./.gitlab-ci/test-docker-gtk4.sh
+
gnome-master:
allow_failure: true
stage: build_and_test
diff --git a/.gitlab-ci/Dockerfile.gtk4 b/.gitlab-ci/Dockerfile.gtk4
new file mode 100644
index 00000000..7b650d1b
--- /dev/null
+++ b/.gitlab-ci/Dockerfile.gtk4
@@ -0,0 +1,36 @@
+FROM registry.gitlab.gnome.org/gnome/pygobject/main:v8
+
+USER root
+
+RUN python3 -m pip install meson
+
+ENV DEBIAN_FRONTEND noninteractive
+RUN apt-get update && apt-get install -y \
+ libfribidi-dev \
+ libgraphene-1.0-dev \
+ libgstreamer-plugins-bad1.0-dev \
+ libgtk-3-dev \
+ libwayland-dev \
+ libxml2-dev \
+ wayland-protocols \
+ && rm -rf /var/lib/apt/lists/*
+
+RUN git clone https://gitlab.freedesktop.org/wayland/wayland.git \
+ && cd wayland \
+ && git checkout 1.16.0 \
+ && ./autogen.sh --disable-documentation \
+ && make -j8 && make install \
+ && cd .. \
+ && rm -Rf wayland
+
+RUN git clone https://gitlab.gnome.org/GNOME/gtk.git \
+ && cd gtk \
+ && git checkout 273189fc \
+ && meson -Dprefix=/usr -Dbuild-tests=false -Ddemos=false -Dbuild-examples=false -Dprint-backends=none
_build \
+ && ninja -C _build \
+ && ninja -C _build install \
+ && cd .. \
+ && rm -Rf gtk
+
+USER user
+ENV PYENV_VERSION 3.7.0-debug
diff --git a/.gitlab-ci/run-docker-gtk4.sh b/.gitlab-ci/run-docker-gtk4.sh
new file mode 100755
index 00000000..f6c979d0
--- /dev/null
+++ b/.gitlab-ci/run-docker-gtk4.sh
@@ -0,0 +1,10 @@
+#!/bin/bash
+
+set -e
+
+TAG="registry.gitlab.gnome.org/gnome/pygobject/gtk4:v1"
+
+sudo docker build --tag "${TAG}" --file "Dockerfile.gtk4" .
+sudo docker run --rm --security-opt label=disable \
+ --volume "$(pwd)/..:/home/user/app" --workdir "/home/user/app" \
+ --tty --interactive "${TAG}" bash
diff --git a/.gitlab-ci/test-docker-gtk4.sh b/.gitlab-ci/test-docker-gtk4.sh
new file mode 100755
index 00000000..e36c715d
--- /dev/null
+++ b/.gitlab-ci/test-docker-gtk4.sh
@@ -0,0 +1,15 @@
+#!/bin/bash
+
+set -e
+
+# ccache setup
+mkdir -p _ccache
+export CCACHE_BASEDIR="$(pwd)"
+export CCACHE_DIR="${CCACHE_BASEDIR}/_ccache"
+
+# test
+python -m pip install git+https://github.com/pygobject/pycairo.git
+python -m pip install pytest pytest-faulthandler
+g-ir-inspect Gtk --version=4.0 --print-typelibs
+export TEST_GTK_VERSION=4.0
+xvfb-run -a python setup.py test
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]