summaryrefslogtreecommitdiff
path: root/.gitlab
diff options
context:
space:
mode:
authorEmmanuele Bassi <ebassi@gnome.org>2018-04-26 12:16:30 +0100
committerEmmanuele Bassi <ebassi@gnome.org>2018-04-30 18:11:40 +0100
commitd15ba94b2ebfbec6198353352e1b85afdbb1d8e8 (patch)
tree3b1eda25c720f3573385bc85a82112b80269f6b4 /.gitlab
parentb20f359cb75291d4968c0752cf76a84c90551927 (diff)
downloadgdk-pixbuf-d15ba94b2ebfbec6198353352e1b85afdbb1d8e8.tar.gz
Prepare for GitLab CI
Once we migrate GdkPixbuf over to GitLab, we should already have all the required bits in place for running a continuous integration pipeline.
Diffstat (limited to '.gitlab')
-rw-r--r--.gitlab/ci/Dockerfile34
-rwxr-xr-x.gitlab/ci/run-docker.sh11
-rwxr-xr-x.gitlab/ci/test-docker.sh21
3 files changed, 66 insertions, 0 deletions
diff --git a/.gitlab/ci/Dockerfile b/.gitlab/ci/Dockerfile
new file mode 100644
index 000000000..82d583f16
--- /dev/null
+++ b/.gitlab/ci/Dockerfile
@@ -0,0 +1,34 @@
+FROM fedora:28
+
+RUN dnf -y install \
+ ccache \
+ gcc \
+ gcc-c++ \
+ gettext \
+ gettext-devel \
+ git \
+ glib2-devel \
+ gobject-introspection-devel \
+ gtk-doc \
+ itstool \
+ jasper-devel \
+ libjpeg-turbo-devel \
+ libpng-devel \
+ libtiff-devel \
+ libX11-devel \
+ make \
+ meson \
+ redhat-rpm-config \
+ shared-mime-info \
+ && dnf clean all
+
+RUN pip3 install meson
+
+ARG HOST_USER_ID=5555
+ENV HOST_USER_ID ${HOST_USER_ID}
+RUN useradd -u $HOST_USER_ID -ms /bin/bash user
+
+USER user
+WORKDIR /home/user
+
+ENV LANG C.UTF-8
diff --git a/.gitlab/ci/run-docker.sh b/.gitlab/ci/run-docker.sh
new file mode 100755
index 000000000..02d265a49
--- /dev/null
+++ b/.gitlab/ci/run-docker.sh
@@ -0,0 +1,11 @@
+#!/bin/bash
+
+set -e
+
+TAG="registry.gitlab.gnome.org/gnome/gdk-pixbuf/master:v1"
+
+sudo docker build --build-arg HOST_USER_ID="$UID" --tag "${TAG}" \
+ --file "Dockerfile" .
+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.sh b/.gitlab/ci/test-docker.sh
new file mode 100755
index 000000000..53cac9dcb
--- /dev/null
+++ b/.gitlab/ci/test-docker.sh
@@ -0,0 +1,21 @@
+#!/bin/bash
+
+set -e
+
+srcdir=$(pwd)
+
+mkdir -p _ccache
+export CCACHE_BASEDIR="$(pwd)"
+export CCACHE_DIR="${CCACHE_BASEDIR}/_ccache"
+
+ccache --zero-stats
+ccache --show-stats
+export CCACHE_DISABLE=true
+meson \
+ _build $srcdir
+unset CCACHE_DISABLE
+
+cd _build
+
+ninja
+ccache --show-stats