Newer
Older
function log()
{
local TIMESTAMP=$(date +"%Y%m%dT%T.%N")
echo "${TIMESTAMP} " "$@" | tee -a summitdev.log
}
mkdir -p ${HOME}/dashboards/summitdev/adios2
cd ${HOME}/dashboards/summitdev/adios2
module purge
module load git cmake lsf-tools
CTEST=$(which ctest)
if [ ! -d source/.git ]
then
git clone https://github.com/ornladios/adios2.git source
else
pushd source
git fetch --all -p
git checkout -f master
git pull --ff-only
popd
fi
SCRIPT_DIR=${PWD}/source/scripts/dashboard/nightly
# First run the serial tests
${CTEST} -VV -S ${SCRIPT_DIR}/summitdev-gcc-nompi.cmake 2>&1 1>summitdev-gcc-nompi.log
${CTEST} -VV -S ${SCRIPT_DIR}/summitdev-xl-nompi.cmake 2>&1 1>summitdev-xl-nompi.log
${CTEST} -VV -S ${SCRIPT_DIR}/summitdev-pgi-nompi.cmake 2>&1 1>summitdev-pgi-nompi.log
# Now run the configure and build steps for the MPI tests
log "Running Parallel GCC Build"
${CTEST} -VV -S ${SCRIPT_DIR}/summitdev-gcc-spectrum.cmake \
-Ddashboard_full=OFF \
-Ddashboard_fresh=ON \
-Ddashboard_do_checkout=ON \
-Ddashboard_do_update=ON \
-Ddashboard_do_configure=ON \
-Ddashboard_do_build=ON 2>&1 1>summitdev-gcc-spectrum.log
log "Running Parallel XL Build"
${CTEST} -VV -S ${SCRIPT_DIR}/summitdev-xl-spectrum.cmake \
-Ddashboard_full=OFF \
-Ddashboard_fresh=ON \
-Ddashboard_do_checkout=ON \
-Ddashboard_do_update=ON \
-Ddashboard_do_configure=ON \
-Ddashboard_do_build=ON 2>&1 1>summitdev-xl-spectrum.log
log "Running Parallel PGI Build"
${CTEST} -VV -S ${SCRIPT_DIR}/summitdev-pgi-spectrum.cmake \
-Ddashboard_full=OFF \
-Ddashboard_fresh=ON \
-Ddashboard_do_checkout=ON \
-Ddashboard_do_update=ON \
-Ddashboard_do_configure=ON \
-Ddashboard_do_build=ON 2>&1 1>summitdev-pgi-spectrum.log
# Now run the MPI tests in a batch job
log "Submitting Parallel Tests"
JOBID=$(bsub -J "adios2_nightly[1-3]" ${SCRIPT_DIR}/summitdev-spectrum-tests.lsf | awk '{print $2}' | sed 's|<\([0-9]*\)>|\1|')
while true
do
NJOBS=$(bjobs 2>/dev/null | grep "^${JOBID} " | wc -l)
log "Test jobs active in queue for job array ${JOBID}: ${NJOBS}"
if [ ${NJOBS} -eq 0 ]
then
break
fi
sleep 30
done
# Finaly submit the test results from the batch job
log "Submitting Parallel GCC Test Results"
${CTEST} -VV -S ${SCRIPT_DIR}/summitdev-gcc-spectrum.cmake \
-Ddashboard_full=OFF \
-Ddashboard_do_test=ON \
-Ddashboard_do_submit_only=ON 2>&1 1>>summitdev-gcc-spectrum.log
log "Submitting Parallel XL Test Results"
${CTEST} -VV -S ${SCRIPT_DIR}/summitdev-xl-spectrum.cmake \
-Ddashboard_full=OFF \
-Ddashboard_do_test=ON \
-Ddashboard_do_submit_only=ON 2>&1 1>>summitdev-xl-spectrum.log
log "Submitting Parallel PGI Test Results"
${CTEST} -VV -S ${SCRIPT_DIR}/summitdev-pgi-spectrum.cmake \
-Ddashboard_full=OFF \
-Ddashboard_do_test=ON \
-Ddashboard_do_submit_only=ON 2>&1 1>>summitdev-pgi-spectrum.log