install.sh 1.57 KB
Newer Older
1
2
3
4
5
6
7
8
9
10
11
# This script is executed via the line:
#   source devtools/ci/jenkins/install.sh
# in a bash shell with the -lex options turned on

echo "Using the following SWIG (`which swig`) version:"
swig -version

echo "Using cmake (`which cmake`) version":
cmake --version

echo "Using clang (`which clang`) version:"
Jason Swails's avatar
Typo  
Jason Swails committed
12
clang --version
13

14
module load cuda/${CUDA_VERSION} conda/jenkins
15
16
17
18
19

# Constants
CONDAENV=openmm-test-3.5
INSTALL_DIRECTORY="${WORKSPACE}/openmm-install"
SRC_DIRECTORY="${WORKSPACE}/openmm-src" # set in the Jenkins configuration
Jason Swails's avatar
Jason Swails committed
20
export OPENMM_CUDA_COMPILER=`which nvcc`
21
22
23
24

# Create a conda environment, but clean up after one first. If it doesn't exist, don't complain.
# But since we are invoking this shell with -e (exit on all errors), we need || true to prevent this
# command from crashing the whole shell
25
26
27
create_conda_env() {
  conda create -yn ${CONDAENV} python=3.5 --no-default-packages --quiet
}
28
conda remove -yn ${CONDAENV} --all --quiet || true
29
create_conda_env || create_conda_env # Crappy way to work around conda concurrency restrictions
30
31
32
33
conda install -yn ${CONDAENV} numpy scipy pytest --quiet
source activate ${CONDAENV} # enter our new environment

# Build OpenMM
Jason Swails's avatar
Jason Swails committed
34
cd "${SRC_DIRECTORY}"
Jason Swails's avatar
Jason Swails committed
35
cmake -DCMAKE_INSTALL_PREFIX="${INSTALL_DIRECTORY}" -DCMAKE_CXX_COMPILER=clang++ -DCMAKE_C_COMPILER=clang .
36
37
38
39
40
make -j4 install
make PythonInstall

# Now run the tests
python -m simtk.testInstallation
Jason Swails's avatar
Jason Swails committed
41
cd python/tests && py.test -v && cd ../..
42
python devtools/run-ctest.py --job-duration=120 --timeout 300
Jason Swails's avatar
Jason Swails committed
43
44
45

# Now remove the conda environment
source deactivate
46
conda remove -yn ${CONDAENV} --all --quiet