[pygobject] gitlab-ci: add a pypy2 job. See #180



commit 7f52d94a0192716aba9bdaacddf2fa8e2cbc5ea0
Author: Christoph Reiter <reiter christoph gmail com>
Date:   Sat Mar 24 20:45:59 2018 +0100

    gitlab-ci: add a pypy2 job. See #180
    
    This just builds things and doesn't run anything

 .gitlab-ci.yml            |  5 +++++
 .gitlab-ci/Dockerfile     |  1 +
 .gitlab-ci/test-docker.sh | 23 ++++++++++++++++-------
 3 files changed, 22 insertions(+), 7 deletions(-)
---
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index e4468607..3ffa293d 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -90,6 +90,11 @@ python3.7:
     PYENV_VERSION: "3.7.0b2"
   <<: *defaults
 
+pypy2:
+  variables:
+    PYENV_VERSION: "pypy2.7-5.10.0"
+  <<: *defaults
+
 xenial-i386-py2:
   stage: build_and_test
   image: lazka/pygobject:pyenv-old
diff --git a/.gitlab-ci/Dockerfile b/.gitlab-ci/Dockerfile
index cd486a2d..9798b3e4 100644
--- a/.gitlab-ci/Dockerfile
+++ b/.gitlab-ci/Dockerfile
@@ -44,5 +44,6 @@ RUN pyenv install 3.4.7
 RUN pyenv install 3.5.5
 RUN pyenv install 3.6.4
 RUN pyenv install 3.7.0b2
+RUN pyenv install pypy2.7-5.10.0
 
 ENV PATH="/usr/lib/ccache:${PATH}"
diff --git a/.gitlab-ci/test-docker.sh b/.gitlab-ci/test-docker.sh
index 6d09b22d..0b8a5d7b 100755
--- a/.gitlab-ci/test-docker.sh
+++ b/.gitlab-ci/test-docker.sh
@@ -8,17 +8,11 @@ python --version
 mkdir -p _ccache
 export CCACHE_BASEDIR="$(pwd)"
 export CCACHE_DIR="${CCACHE_BASEDIR}/_ccache"
-
-python -m pip install git+https://github.com/pygobject/pycairo.git
-python -m pip install flake8 pytest pytest-faulthandler coverage
-
 PYVER=$(python -c "import sys; sys.stdout.write(''.join(map(str, sys.version_info[:3])))")
+PYIMPL=$(python -c "import sys, platform; sys.stdout.write(platform.python_implementation())")
 SOURCE_DIR="$(pwd)"
 PY_PREFIX="$(python -c 'import sys; sys.stdout.write(sys.prefix)')"
 COV_DIR="${SOURCE_DIR}/coverage"
-
-mkdir -p "${COV_DIR}"
-
 export PKG_CONFIG_PATH="${PY_PREFIX}/lib/pkgconfig"
 export MALLOC_CHECK_=3
 export MALLOC_PERTURB_=$((${RANDOM} % 255 + 1))
@@ -26,6 +20,21 @@ export G_SLICE="debug-blocks"
 export COVERAGE_FILE="${COV_DIR}/.coverage.${PYVER}"
 export CFLAGS="-coverage -ftest-coverage -fprofile-arcs"
 
+if [[ "${PYIMPL}" == "PyPy" ]]; then
+    # https://bitbucket.org/pypy/pypy/issues/2776
+    export MALLOC_CHECK_=
+    python -m pip install pycairo pytest
+else
+    python -m pip install git+https://github.com/pygobject/pycairo.git
+    python -m pip install flake8 pytest pytest-faulthandler coverage
+fi;
+
+if [[ "${PYIMPL}" == "PyPy" ]]; then
+    python setup.py build_tests
+    exit 0;
+fi;
+
+mkdir -p "${COV_DIR}"
 rm -Rf /tmp/build
 mkdir /tmp/build
 cd /tmp/build


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]