From 793b43eebb488ea0a4a95a5983d5901be3ce73b3 Mon Sep 17 00:00:00 2001 From: Philipp Arras <parras@mpa-garching.mpg.de> Date: Thu, 5 Apr 2018 16:59:08 +0200 Subject: [PATCH] Add docker testing framework --- .gitlab-ci.yml | 15 +++------------ Dockerfile | 17 +++++++++++++++++ 2 files changed, 20 insertions(+), 12 deletions(-) create mode 100644 Dockerfile diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index cc1016a2c..f26089e95 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,5 +1,4 @@ -#image: ubuntu:artful -image: debian:testing-slim +image: parras/nifty:latest stages: - test @@ -11,11 +10,8 @@ variables: test_python2: stage: test script: - - apt-get update > /dev/null - - apt-get install -y git libfftw3-dev openmpi-bin libopenmpi-dev python python-pip python-dev python-nose python-numpy python-matplotlib python-future python-mpi4py python-scipy > /dev/null - - pip install --process-dependency-links parameterized coverage git+https://gitlab.mpcdf.mpg.de/ift/pyHealpix.git > /dev/null - pip install --user . - - OMP_NUM_THREADS=1 mpiexec --allow-run-as-root -n 2 nosetests -q 2>/dev/null + - OMP_NUM_THREADS=1 mpiexec -n 2 nosetests -q 2>/dev/null - nosetests -q --with-coverage --cover-package=nifty4 --cover-branches --cover-erase - > coverage report | grep TOTAL | awk '{ print "TOTAL: "$6; }' @@ -23,18 +19,13 @@ test_python2: test_python3: stage: test script: - - apt-get update > /dev/null - - apt-get install -y git libfftw3-dev openmpi-bin libopenmpi-dev python3 python3-pip python3-dev python3-nose python3-numpy python3-matplotlib python3-future python3-mpi4py python3-scipy > /dev/null - - pip3 install --process-dependency-links parameterized git+https://gitlab.mpcdf.mpg.de/ift/pyHealpix.git > /dev/null - pip3 install --user . - nosetests3 -q - - OMP_NUM_THREADS=1 mpiexec --allow-run-as-root -n 2 nosetests3 -q 2>/dev/null + - OMP_NUM_THREADS=1 mpiexec -n 2 nosetests3 -q 2>/dev/null pages: stage: release script: - - apt-get update > /dev/null - - apt-get install -y git libfftw3-dev python python-pip python-dev python-numpy python-future python-sphinx python-sphinx-rtd-theme python-numpydoc > /dev/null - pip install --user . - sh docs/generate.sh > /dev/null - mv docs/build/ public/ diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 000000000..3fc7ecbbf --- /dev/null +++ b/Dockerfile @@ -0,0 +1,17 @@ +FROM debian:testing-slim + +RUN apt-get update + +# Debian package installations +RUN apt-get install -y git libfftw3-dev openmpi-bin libopenmpi-dev python python-pip python-dev python-nose python-numpy python-matplotlib python-future python-mpi4py python-scipy +RUN apt-get install -y python3 python3-pip python3-dev python3-nose python3-numpy python3-matplotlib python3-future python3-mpi4py python3-scipy +RUN apt-get install -y python-sphinx python-sphinx-rtd-theme python-numpydoc + +# Python module installations +RUN pip install parameterized coverage pyfftw git+https://gitlab.mpcdf.mpg.de/ift/pyHealpix.git +RUN pip3 install parameterized coverage pyfftw git+https://gitlab.mpcdf.mpg.de/ift/pyHealpix.git + +# Create user (openmpi does not like to be run as root) +RUN useradd -ms /bin/bash testinguser +USER testinguser +WORKDIR /home/testinguser -- GitLab