Feature/jenkins timeout (#2151)

* Introduce timeout to the unit tests
This commit is contained in:
Alexander Bock
2022-06-19 13:47:31 +02:00
committed by GitHub
parent 02a2bcf1af
commit a9da9ca87b

221
Jenkinsfile vendored
View File

@@ -73,6 +73,7 @@ linux_gcc_make: {
deleteDir();
gitHelper.checkoutGit(url, branch);
}
stage('linux-gcc-make/build') {
def cmakeCompileOptions = moduleCMakeFlags();
cmakeCompileOptions += ' -DCMAKE_BUILD_TYPE=Release -DCMAKE_CXX_FLAGS:STRING="-DGLM_ENABLE_EXPERIMENTAL"';
@@ -81,12 +82,30 @@ linux_gcc_make: {
compileHelper.build(compileHelper.Make(), compileHelper.Gcc(), cmakeCompileOptions, '', 'build-make');
compileHelper.recordCompileIssues(compileHelper.Gcc());
}
stage('linux-gcc-make/test') {
if (env.RUN_UNIT_TESTS == 'true') {
testHelper.runUnitTests('bin/codegentest');
testHelper.runUnitTests('bin/SGCTTest');
testHelper.runUnitTests('bin/GhoulTest');
testHelper.runUnitTests('bin/OpenSpaceTest');
if (env.RUN_UNIT_TESTS == 'true') {
stage('linux-gcc-make/test-codegen') {
timeout(time: 2, unit: 'MINUTES') {
testHelper.runUnitTests('bin/codegentest');
}
}
stage('linux-gcc-make/test-sgct') {
timeout(time: 2, unit: 'MINUTES') {
testHelper.runUnitTests('bin/SGCTTest');
}
}
stage('linux-gcc-make/test-ghoul') {
timeout(time: 2, unit: 'MINUTES') {
testHelper.runUnitTests('bin/GhoulTest');
}
}
stage('linux-gcc-make/test-openspace') {
timeout(time: 2, unit: 'MINUTES') {
testHelper.runUnitTests('bin/OpenSpaceTest');
}
}
}
cleanWs()
@@ -100,18 +119,37 @@ linux_gcc_ninja: {
deleteDir();
gitHelper.checkoutGit(url, branch);
}
stage('linux-gcc-ninja/build') {
def cmakeCompileOptions = moduleCMakeFlags();
cmakeCompileOptions += '-DMAKE_BUILD_TYPE=Release';
// Not sure why the linking of OpenSpaceTest takes so long
compileHelper.build(compileHelper.Ninja(), compileHelper.Gcc(), cmakeCompileOptions, '', 'build-ninja');
}
stage('linux-gcc-ninja/test') {
if (env.RUN_UNIT_TESTS == 'true') {
testHelper.runUnitTests('bin/codegentest');
testHelper.runUnitTests('bin/SGCTTest');
testHelper.runUnitTests('bin/GhoulTest');
testHelper.runUnitTests('bin/OpenSpaceTest');
if (env.RUN_UNIT_TESTS == 'true') {
stage('linux-gcc-ninja/test-codegen') {
timeout(time: 2, unit: 'MINUTES') {
testHelper.runUnitTests('bin/codegentest');
}
}
stage('linux-gcc-ninja/test-sgct') {
timeout(time: 2, unit: 'MINUTES') {
testHelper.runUnitTests('bin/SGCTTest');
}
}
stage('linux-gcc-ninja/test-ghoul') {
timeout(time: 2, unit: 'MINUTES') {
testHelper.runUnitTests('bin/GhoulTest');
}
}
stage('linux-gcc-ninja/test-openspace') {
timeout(time: 2, unit: 'MINUTES') {
testHelper.runUnitTests('bin/OpenSpaceTest');
}
}
}
cleanWs()
@@ -125,6 +163,7 @@ linux_clang_make: {
deleteDir()
gitHelper.checkoutGit(url, branch);
}
stage('linux-clang-make/build') {
def cmakeCompileOptions = moduleCMakeFlags()
cmakeCompileOptions += ' -DMAKE_BUILD_TYPE=Release'
@@ -132,12 +171,30 @@ linux_clang_make: {
compileHelper.build(compileHelper.Make(), compileHelper.Clang(), cmakeCompileOptions, '', 'build-make');
compileHelper.recordCompileIssues(compileHelper.Clang());
}
stage('linux-clang-make/test') {
if (env.RUN_UNIT_TESTS == 'true') {
testHelper.runUnitTests('bin/codegentest');
testHelper.runUnitTests('bin/SGCTTest');
testHelper.runUnitTests('bin/GhoulTest');
testHelper.runUnitTests('bin/OpenSpaceTest');
if (env.RUN_UNIT_TESTS == 'true') {
stage('linux-clang-make/test-codegen') {
timeout(time: 2, unit: 'MINUTES') {
testHelper.runUnitTests('bin/codegentest');
}
}
stage('linux-clang-make/test-sgct') {
timeout(time: 2, unit: 'MINUTES') {
testHelper.runUnitTests('bin/SGCTTest');
}
}
stage('linux-clang-make/test-ghoul') {
timeout(time: 2, unit: 'MINUTES') {
testHelper.runUnitTests('bin/GhoulTest');
}
}
stage('linux-clang-make/test-openspace') {
timeout(time: 2, unit: 'MINUTES') {
testHelper.runUnitTests('bin/OpenSpaceTest');
}
}
}
cleanWs()
@@ -151,18 +208,37 @@ linux_clang_ninja: {
deleteDir()
gitHelper.checkoutGit(url, branch);
}
stage('linux-clang-ninja/build') {
def cmakeCompileOptions = moduleCMakeFlags()
cmakeCompileOptions += '-DMAKE_BUILD_TYPE=Release'
// Not sure why the linking of OpenSpaceTest takes so long
compileHelper.build(compileHelper.Ninja(), compileHelper.Clang(), cmakeCompileOptions, '', 'build-ninja');
}
stage('linux-clang-ninja/test') {
if (env.RUN_UNIT_TESTS == 'true') {
testHelper.runUnitTests('bin/codegentest');
testHelper.runUnitTests('bin/SGCTTest');
testHelper.runUnitTests('bin/GhoulTest');
testHelper.runUnitTests('bin/OpenSpaceTest');
if (env.RUN_UNIT_TESTS == 'true') {
stage('linux-clang-ninja/test-codegen') {
timeout(time: 2, unit: 'MINUTES') {
testHelper.runUnitTests('bin/codegentest');
}
}
stage('linux-clang-ninja/test-sgct') {
timeout(time: 2, unit: 'MINUTES') {
testHelper.runUnitTests('bin/SGCTTest');
}
}
stage('linux-clang-ninja/test-ghoul') {
timeout(time: 2, unit: 'MINUTES') {
testHelper.runUnitTests('bin/GhoulTest');
}
}
stage('linux-clang-ninja/test-openspace') {
timeout(time: 2, unit: 'MINUTES') {
testHelper.runUnitTests('bin/OpenSpaceTest');
}
}
}
cleanWs()
@@ -176,18 +252,37 @@ windows_msvc: {
deleteDir();
gitHelper.checkoutGit(url, branch);
}
stage('windows-msvc/build') {
compileHelper.build(compileHelper.VisualStudio(), compileHelper.VisualStudio(), moduleCMakeFlags(), '', 'build-msvc');
compileHelper.recordCompileIssues(compileHelper.VisualStudio());
}
stage('windows-msvc/test') {
if (env.RUN_UNIT_TESTS == 'true') {
testHelper.runUnitTests('bin\\Debug\\codegentest');
testHelper.runUnitTests('bin\\Debug\\SGCTTest');
testHelper.runUnitTests('bin\\Debug\\GhoulTest');
testHelper.runUnitTests('bin\\Debug\\OpenSpaceTest');
if (env.RUN_UNIT_TESTS == 'true') {
stage('windows-msvc/test-codegen') {
timeout(time: 2, unit: 'MINUTES') {
testHelper.runUnitTests('bin\\Debug\\codegentest');
}
}
}
stage('windows-msvc/test-sgct') {
timeout(time: 2, unit: 'MINUTES') {
testHelper.runUnitTests('bin\\Debug\\SGCTTest');
}
}
stage('windows-msvc/test-ghoul') {
timeout(time: 2, unit: 'MINUTES') {
testHelper.runUnitTests('bin\\Debug\\GhoulTest');
}
}
stage('windows-msvc/test-openspace') {
timeout(time: 2, unit: 'MINUTES') {
testHelper.runUnitTests('bin\\Debug\\OpenSpaceTest');
}
}
}
cleanWs()
} // node('windows')
}
@@ -219,15 +314,36 @@ macos_make: {
deleteDir();
gitHelper.checkoutGit(url, branch);
}
stage('macos-make/build') {
compileHelper.build(compileHelper.Make(), compileHelper.Clang(), moduleCMakeFlags(), '', 'build-make');
}
stage('macos-make/test') {
if (env.RUN_UNIT_TESTS == 'true') {
testHelper.runUnitTests('bin/Debug/OpenSpaceTest')
testHelper.runUnitTests('bin/Debug/codegentest')
if (env.RUN_UNIT_TESTS == 'true') {
stage('macos-make/test-codegen') {
timeout(time: 2, unit: 'MINUTES') {
testHelper.runUnitTests('bin/Debug/codegentest');\
}
}
}
stage('macos-make/test-sgct') {
timeout(time: 2, unit: 'MINUTES') {
testHelper.runUnitTests('bin/Debug\\SGCTTest');
}
}
stage('macos-make/test-ghoul') {
timeout(time: 2, unit: 'MINUTES') {
testHelper.runUnitTests('bin/Debug\\GhoulTest');
}
}
stage('macos-make/test-openspace') {
timeout(time: 2, unit: 'MINUTES') {
testHelper.runUnitTests('bin/Debug/OpenSpaceTest');
}
}
}
cleanWs()
} // node('macos')
}
@@ -239,16 +355,37 @@ macos_xcode: {
deleteDir();
gitHelper.checkoutGit(url, branch);
}
stage('macos-xcode/build') {
compileHelper.build(compileHelper.Xcode(), compileHelper.Xcode(), moduleCMakeFlags(), '', 'build-xcode');
}
stage('macos-xcode/test') {
if (env.RUN_UNIT_TESTS == 'true') {
testHelper.runUnitTests('bin/Debug/OpenSpaceTest')
testHelper.runUnitTests('bin/Debug/codegentest')
if (env.RUN_UNIT_TESTS == 'true') {
stage('macos-xcode/test-codegen') {
timeout(time: 2, unit: 'MINUTES') {
testHelper.runUnitTests('bin/Debug/codegentest');
}
}
}
cleanWs()
stage('macos-xcode/test-sgct') {
timeout(time: 2, unit: 'MINUTES') {
testHelper.runUnitTests('bin/Debug\\SGCTTest');
}
}
stage('macos-xcode/test-ghoul') {
timeout(time: 2, unit: 'MINUTES') {
testHelper.runUnitTests('bin/Debug\\GhoulTest');
}
}
stage('macos-xcode/test-openspace') {
timeout(time: 2, unit: 'MINUTES') {
testHelper.runUnitTests('bin/Debug/OpenSpaceTest');
}
}
}
cleanWs()
} // node('macos')
}
}