diff --git a/.gitignore b/.gitignore
index 55e199a0f4b29de5943e31ca5c56364466de0164..1a16224df6a7b2a3adc436548674fa7665c4471b 100644
--- a/.gitignore
+++ b/.gitignore
@@ -11,6 +11,7 @@ CTestTestfile.cmake
 *.cxx
 .*
 !.gitignore
+!.gitlab-ci.yml
 CMakeCache.txt
 version.hh
 config.hh
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
new file mode 100644
index 0000000000000000000000000000000000000000..88e3c289db71365ab7139a28ca47eed5c35b3993
--- /dev/null
+++ b/.gitlab-ci.yml
@@ -0,0 +1,145 @@
+# these are the different stages for our pipelines
+# jobs in the same stage run in parallel 
+# next stage doesn't start until previous stage finishes with 'OK'
+# by now we only do build and test, we could add another stage "deploy" if
+# needed
+stages:
+  - test
+
+# CentOS6 STAGE
+test:centos6.6:
+  stage: test
+  image: centos:6.6
+  before_script:
+    - echo "Running centos6.6 'before_script'..."
+    - yum -y -q -e 0 install tcl
+    - yum -y -q -e 0 install glibc-common
+    - yum -y -q -e 0 install glibc-devel
+    - yum -y -q -e 0 install libjpeg-turbo
+    - yum -y -q -e 0 install freetype
+    - yum -y -q -e 0 install libpng
+    - yum -y -q -e 0 install mesa-libGL-devel
+    - yum -y -q -e 0 install mesa-libGLU-devel
+    - mkdir -p /scicore/soft/modules
+    - ln -s /export/soft/apps/centos6/generic /scicore/soft/apps
+    - ln -s /export/soft/modules/centos6/generic/all /scicore/soft/modules
+    - source /export/soft/lua_lmod/centos6/lmod/lmod/init/bash
+    - module use /scicore/soft/modules/all
+    - module load CMake/2.8.12-goolf-1.4.10
+    - module load Python/2.7.5-goolf-1.4.10
+    - module load OpenBLAS/0.2.6-gompi-1.4.10-LAPACK-3.4.2
+    - module load Eigen/3.2.1-goolf-1.4.10
+    - module load numpy/1.9.1-goolf-1.4.10-Python-2.7.5
+    - module load Boost/1.53.0-goolf-1.4.10-Python-2.7.5
+    - module load OpenMM/6.1-Linux64
+    - module load PyQt/4.11.4-goolf-1.4.10-Python-2.7.5
+    - module load LibTIFF/4.0.3-goolf-1.4.10
+    - module load libpng/1.6.17-goolf-1.4.10
+    - module load zlib/1.2.8-goolf-1.4.10
+    - module load Perl/5.16.3-goolf-1.4.10
+    - module load HH-suite/2.0.16-goolf-1.4.10-Boost-1.53.0
+    - echo "... done running centos6.6 'before_script'."
+  script:
+  - echo "Testing on CentOS 6..."
+  - echo "    Building OST..."
+  - mkdir build-ci
+  - cd build-ci
+  - cmake .. -DENABLE_MM=1
+             -DOPEN_MM_LIBRARY=$EBROOTOPENMM/lib/libOpenMM.so
+             -DOPEN_MM_PLUGIN_DIR=$EBROOTOPENMM/lib/plugins
+             -DOPEN_MM_INCLUDE_DIR=$EBROOTOPENMM/include
+             -DCOMPILE_TMTOOLS=1
+             -DENABLE_GFX=ON
+             -DENABLE_GUI=OFF
+             -DUSE_NUMPY=1
+             -DUSE_RPATH=1
+             -DPYTHON_ROOT=$EBROOTPYTHON
+             -DEIGEN3_INCLUDE_DIR=$EBROOTEIGEN/include
+             -DFFTW_LIBRARY=$EBROOTFFTW/lib/libfftw3f.a
+             -DFFTW_INCLUDE_DIR=$EBROOTFFTW/include
+             -DBOOST_ROOT=$EBROOTBOOST
+             -DQT_QMAKE_EXECUTABLE=$EBROOTQT/bin/qmake
+             -DPNG_LIBRARY=$EBROOTLIBPNG/lib/libpng.so
+             -DPNG_INCLUDE_DIR=$EBROOTLIBPNG/include
+             -DPNG_PNG_INCLUDE_DIR=$EBROOTLIBPNG/include
+             -DZLIB_LIBRARY=$EBROOTZLIB/lib/libz.so
+             -DZLIB_INCLUDE_DIR=$EBROOTZLIB/include
+             -DTIFF_INCLUDE_DIR=$EBROOTLIBTIFF/include
+             -DTIFF_LIBRARY=$EBROOTLIBTIFF/lib/libtiff.so
+             -DOPTIMIZE=1
+  - make -j 2
+  - echo "    ... done building OST."
+  - echo "    Running unit tests for OST..."  
+  - make check
+  - echo "    ... done running unit tests for OST..." 
+  - echo "... done testing on CentOS 6."
+
+# CentOS7 STAGE
+test:centos7.3:
+  stage: test
+  image: centos:7.3.1611
+  before_script:
+    - echo "Running centos7.3 'before_script'..."
+    - yum -y -q -e 0 install tcl
+    - yum -y -q -e 0 install glibc-common
+    - yum -y -q -e 0 install glibc-devel
+    - yum -y -q -e 0 install make
+    - yum -y -q -e 0 install libicu
+    - yum -y -q -e 0 install libjpeg-turbo
+    - yum -y -q -e 0 install mesa-libGL-devel
+    - yum -y -q -e 0 install mesa-libGLU-devel
+    - yum -y -q -e 0 install freetype
+    - yum -y -q -e 0 install libpng
+    - mkdir -p /scicore/soft/modules
+    - ln -s /export/soft/apps/centos7/generic /scicore/soft/apps
+    - ln -s /export/soft/modules/centos7/generic/all /scicore/soft/modules
+    - source /export/soft/lua_lmod/centos7/lmod/lmod/init/bash
+    - module use /scicore/soft/modules/all
+    - module load CMake/3.4.3-goolf-1.7.20
+    - module load Python/2.7.11-goolf-1.7.20
+    - module load OpenBLAS/0.2.13-GCC-4.8.4-LAPACK-3.5.0
+    - module load Eigen/3.2.8-goolf-1.7.20
+    - module load numpy/1.10.1-goolf-1.7.20-Python-2.7.11
+    - module load Boost/1.53.0-goolf-1.7.20-Python-2.7.11
+    - module load PyQt/4.11.4-goolf-1.7.20-Python-2.7.11
+    - module load LibTIFF/.4.0.4-goolf-1.7.20
+    - module load Perl/5.22.2-goolf-1.7.20
+    - module load HH-suite/2.0.16-goolf-1.7.20-Boost-1.53.0-Python-2.7.11
+    - module load OpenMM/6.1-goolf-1.7.20-Python-2.7.11
+    - echo "... done running centos7.3 'before_script'."
+  script:
+  - echo "Testing on CentOS 7..."
+  - echo "    Building OST..."
+  - mkdir build-ci
+  - cd build-ci
+  - cmake .. -DENABLE_MM=1
+             -DOPEN_MM_LIBRARY=$EBROOTOPENMM/lib/libOpenMM.so
+             -DOPEN_MM_PLUGIN_DIR=$EBROOTOPENMM/lib/plugins
+             -DOPEN_MM_INCLUDE_DIR=$EBROOTOPENMM/include
+             -DCOMPILE_TMTOOLS=1
+             -DENABLE_GFX=ON
+             -DENABLE_GUI=OFF
+             -DUSE_NUMPY=1
+             -DUSE_RPATH=1
+             -DPYTHON_ROOT=$EBROOTPYTHON
+             -DEIGEN3_INCLUDE_DIR=$EBROOTEIGEN/include
+             -DFFTW_LIBRARY=$EBROOTFFTW/lib/libfftw3f.a
+             -DFFTW_INCLUDE_DIR=$EBROOTFFTW/include
+             -DBOOST_ROOT=$EBROOTBOOST
+             -DQT_QMAKE_EXECUTABLE=$EBROOTQT/bin/qmake
+             -DPNG_LIBRARY=$EBROOTLIBPNG/lib/libpng.so
+             -DPNG_INCLUDE_DIR=$EBROOTLIBPNG/include
+             -DPNG_PNG_INCLUDE_DIR=$EBROOTLIBPNG/include
+             -DZLIB_LIBRARY=$EBROOTZLIB/lib/libz.so
+             -DZLIB_INCLUDE_DIR=$EBROOTZLIB/include
+             -DTIFF_INCLUDE_DIR=$EBROOTLIBTIFF/include
+             -DTIFF_LIBRARY=$EBROOTLIBTIFF/lib/libtiff.so
+             -DOPTIMIZE=1
+             -DCMAKE_C_FLAGS='-L/scicore/soft/apps/LibTIFF/4.0.4-goolf-1.7.20/lib/ -L/scicore/soft/apps/libpng/1.6.18-goolf-1.7.20/lib/ -L/scicore/soft/apps/Boost/1.53.0-goolf-1.7.20-Python-2.7.11/lib/ -L/scicore/soft/apps/Qt/4.8.6-goolf-1.7.20/lib/ -Wno-unused-local-typedefs'
+             -DCMAKE_CXX_FLAGS='-L/scicore/soft/apps/LibTIFF/4.0.4-goolf-1.7.20/lib/ -L/scicore/soft/apps/libpng/1.6.18-goolf-1.7.20/lib/ -L/scicore/soft/apps/Boost/1.53.0-goolf-1.7.20-Python-2.7.11/lib/ -L/scicore/soft/apps/Qt/4.8.6-goolf-1.7.20/lib/ -Wno-unused-local-typedefs'
+  - make -j 2
+  - echo "    ... done building OST."
+  - echo "    Running unit tests for OST..."  
+  - make check
+  - echo "    ... done running unit tests for OST..." 
+  - echo "... done testing on CentOS 7."