Skip to content
Snippets Groups Projects
Commit 64ecd511 authored by Martin Christoph Hierholzer's avatar Martin Christoph Hierholzer
Browse files

doTest(): run all shell commands in the same sudo environment, so the...

doTest(): run all shell commands in the same sudo environment, so the environment variables incl. LD_PRELOAD are properly used
parent 99b31c8f
No related branches found
No related tags found
No related merge requests found
......@@ -167,15 +167,10 @@ def doBuild(String label, String buildType) {
sudo -H -E -u msk_jenkins mkdir -p /scratch/install
cd /scratch/build-${JOB_NAME}
# We might run only part of the project from a sub-directory. If it is empty the trailing / does not confuse cmake
if [ -z "\${RUN_FROM_SUBDIR}" ]; then
SUBDIR=""
else
SUBDIR="${env.RUN_FROM_SUBDIR}"
fi
for VAR in ${env.JOB_VARIABLES}; do
export `eval echo \${VAR}`
done
sudo -H -E -u msk_jenkins cmake /scratch/source/\${SUBDIR} -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=${buildType} -DSUPPRESS_AUTO_DOC_BUILD=true \${CMAKE_EXTRA_ARGS}
sudo -H -E -u msk_jenkins cmake /scratch/source/\${RUN_FROM_SUBDIR} -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=${buildType} -DSUPPRESS_AUTO_DOC_BUILD=true \${CMAKE_EXTRA_ARGS}
sudo -H -E -u msk_jenkins make ${env.MAKEOPTS}
"""
}
......@@ -196,6 +191,7 @@ def doTest(String label, String buildType) {
// Prefix test names with label and buildType, so we can distinguish them later
// Copy test results files to the workspace, otherwise they are not available to the xunit plugin
sh """
cat > /scratch/script <<EOF
cd /scratch/build-${JOB_NAME}
if [ -z "\${CTESTOPTS}" ]; then
CTESTOPTS="${env.MAKEOPTS}"
......@@ -203,9 +199,12 @@ def doTest(String label, String buildType) {
for VAR in ${env.JOB_VARIABLES} \${TEST_VARIABLES}; do
export `eval echo \${VAR}`
done
sudo -H -E -u msk_jenkins ctest --no-compress-output \${CTESTOPTS} -T Test -V || true
sudo -H -E -u msk_jenkins sed -i Testing/*/Test.xml -e 's_\\(^[[:space:]]*<Name>\\)\\(.*\\)\\(</Name>\\)\$_\\1${label}.${buildType}.\\2\\3_'
sudo -H -E -u msk_jenkins cp -r /scratch/build-${JOB_NAME}/Testing "${WORKSPACE}"
ctest --no-compress-output \${CTESTOPTS} -T Test -V || true
sed -i Testing/*/Test.xml -e 's_\\(^[[:space:]]*<Name>\\)\\(.*\\)\\(</Name>\\)\$_\\1${label}.${buildType}.\\2\\3_'
cp -r /scratch/build-${JOB_NAME}/Testing "${WORKSPACE}"
EOF
chmod +x /scratch/script
sudo -H -E -u msk_jenkins /scratch/script
"""
// Publish test result directly (works properly even with multiple publications from parallel branches)
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment