diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index eae45d02ddbce0094752d6a8e83d3478f9132ec5..7f5fdaa1cc86e37d2830e71ffe8da18a6e079ee0 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -15,8 +15,8 @@ config:ubuntu_zesty: image: keckj/hysop:ubuntu_zesty stage: configure script: - - "sh ci/scripts/config.sh ./build/gcc-6 gcc-6 g++-6 gfortran-6" - - "sh ci/scripts/config.sh ./build/clang-6 clang-6.0 clang++-6.0 gfortran-6" + - "sh ci/scripts/config.sh ./build/gcc-6 ./install/gcc-6 gcc-6 g++-6 gfortran-6" + - "sh ci/scripts/config.sh ./build/clang-6 ./install/clang-6 clang-6.0 clang++-6.0 gfortran-6" dependencies: - env:ubuntu_zesty artifacts: @@ -27,7 +27,7 @@ build:ubuntu_zesty: image: keckj/hysop:ubuntu_zesty stage: build script: - - "sh ci/scripts/build.sh ./build/gcc-6 gcc-6 g++-6 gfortran-6" + - "sh ci/scripts/build.sh ./build/gcc-6 gcc-6 g++-6 gfortran-6" - "sh ci/scripts/build.sh ./build/clang-6 clang-6.0 clang++-6.0 gfortran-6" dependencies: - config:ubuntu_zesty @@ -39,7 +39,7 @@ install:ubuntu_zesty: image: keckj/hysop:ubuntu_zesty stage: install script: - - "sh ci/scripts/install.sh ./build/gcc-6" + - "sh ci/scripts/install.sh ./build/gcc-6 ./install/gcc-6" dependencies: - build:ubuntu_zesty artifacts: @@ -55,10 +55,9 @@ test:ubuntu_zesty: - mkdir -p "/home/hysoprunner" - chown hysoprunner:hysoprunner "/home/hysoprunner" - chmod u+rw "/home/hysoprunner" - - chown hysoprunner:hysoprunner "/root/.local/lib/python2.7/site-packages/hysop" - - chmod u+rx "/root/.local/lib/python2.7/site-packages/hysop" - - export PYTHON_PATH="/root/.local/lib/python2.7/site-packages/hysop" - - su hysoprunner -c "sh ci/scripts/test.sh" + - chown hysoprunner:hysoprunner "./install/gcc-6/lib/python2.7/site-packages/hysop" + - chmod u+rx "./install/gcc-6/python2.7/site-packages/hysop" + - su hysoprunner -c "sh ci/scripts/test.sh ./install/gcc-6" dependencies: - install:ubuntu_zesty cache: diff --git a/ci/scripts/build.sh b/ci/scripts/build.sh index 1b894cab18e6caaf12d23afe32601ac74e51cffa..a10c8bd2c2e9ed91e9e16699510e2e7b0581acf9 100644 --- a/ci/scripts/build.sh +++ b/ci/scripts/build.sh @@ -1,7 +1,7 @@ #!/bin/bash set -e -if [ $# -ne 4 ]; then +if [ $# -ne 5 ]; then echo "Usage ./build build_folder CC CXX FC" exit 1 fi diff --git a/ci/scripts/config.sh b/ci/scripts/config.sh index d49b319e2068473b3a1519dd0c1ca9d0786e16db..6bec62e67ace7dfd108bf4b2e7fda488cf51ba4a 100644 --- a/ci/scripts/config.sh +++ b/ci/scripts/config.sh @@ -2,7 +2,7 @@ set -e if [ $# -ne 4 ]; then - echo "Usage ./config build_folder CC CXX FC" + echo "Usage ./config build_folder install_folder CC CXX FC" exit 1 fi @@ -11,12 +11,18 @@ if [ -d "$1" ]; then exit 1 fi +if [ -d "$2" ]; then + echo "Folder $2 already exists." + exit 1 +fi + ROOT_DIR="$(pwd)" BUILD_DIR="$1" +INSTALL_DIR="$2" mkdir -p $BUILD_DIR cd $BUILD_DIR -CC="$2" CXX="$3" FC="$4" cmake -DCMAKE_BUILD_TYPE=Release $ROOT_DIR +CC="$3" CXX="$4" FC="$5" cmake -DCMAKE_BUILD_TYPE=Release -DHYSOP_INSTALL=$INSTALL_DIR $ROOT_DIR if [ ! -f Makefile ]; then echo "The makefile has not been generated." diff --git a/ci/scripts/install.sh b/ci/scripts/install.sh index 1c79f78c8268b4e0eb88189eb16952330f6b79bb..ba708d3e5e72b908fd6a60f93d3c6dd0872b1b13 100644 --- a/ci/scripts/install.sh +++ b/ci/scripts/install.sh @@ -2,8 +2,8 @@ #!/bin/bash set -e -if [ $# -ne 1 ]; then - echo "Usage ./install build_folder" +if [ $# -ne 2 ]; then + echo "Usage ./install build_folder install_folder" exit 1 fi @@ -12,10 +12,17 @@ if [ ! -d "$1" ]; then exit 1 fi +if [ ! -d "$2" ]; then + echo "Folder {} does not exist." + exit 1 +fi + BUILD_FOLDER="$1" +INSTALL_FOLDER="$2" cd $BUILD_FOLDER make install +export PYTHONPATH=$INSTALL_FOLDER python -c 'import hysop; print hysop' exit 0 diff --git a/ci/scripts/test.sh b/ci/scripts/test.sh index ebaa018856b22f8fcc2edc89b1d053644ad3b12b..f960eee247f3ad750d085883ef38b3f1781f8cc9 100644 --- a/ci/scripts/test.sh +++ b/ci/scripts/test.sh @@ -1,11 +1,17 @@ #!/bin/bash set -e -if [ $# -ne 0 ]; then - echo "Usage ./test" +if [ $# -ne 1 ]; then + echo "Usage ./test install_folder" exit 1 fi +if [ ! -d "$0" ]; then + echo "Folder {} does not exist." + exit 1 +fi + +export PYTHONPATH=$0 python -c 'import hysop; print hysop' python './hysop/operator/test_transpose.py' exit 0