diff options
author | Bent Bisballe Nyeng <deva@aasimon.org> | 2025-02-06 17:57:52 +0100 |
---|---|---|
committer | Bent Bisballe Nyeng <deva@aasimon.org> | 2025-02-06 17:57:52 +0100 |
commit | 5b0d6fc33c89c2e13d6f041de8077ae206a686f6 (patch) | |
tree | e1b17b717e61a0d8ae153c0970b1bb8a6e442081 | |
parent | 60cce51f54078a1d10b02f138288d0888a8c707e (diff) |
Parallel builds
-rw-r--r-- | Jenkinsfile | 123 |
1 files changed, 64 insertions, 59 deletions
diff --git a/Jenkinsfile b/Jenkinsfile index 561d0cf..a558359 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -1,69 +1,74 @@ pipeline { agent any stages { - //////////////////////////////////////////////////// - stage('MacOSX clang') { - agent { label 'macos' } - steps { - echo 'Cleaning workspace ...' - sh 'git clean -d -x -f' - echo 'Building (clang) ...' - sh 'CXX=/usr/local/opt/llvm/bin/clang++ LDFLAGS="-L/usr/local/opt/llvm/lib/c++ -L/usr/local/opt/llvm/lib/unwind -lunwind" ./bootstrap.sh' - echo 'Testing (clang) ...' - sh './ctor check' - echo 'Testing suite (clang) ...' - sh '(cd test/suite; CTORDIR=../../build CXX=/usr/local/opt/llvm/bin/clang++ LDFLAGS="-L/usr/local/opt/llvm/lib/c++ -L/usr/local/opt/llvm/lib/unwind -lunwind" ./test.sh)' - } - post { - always { - xunit(thresholds: [ skipped(failureThreshold: '0'), - failed(failureThreshold: '0') ], - tools: [ CppUnit(pattern: 'build/test/*.xml') ]) + stage('all targets') + { + parallel { + //////////////////////////////////////////////////// + stage('MacOSX clang') { + agent { label 'macos' } + steps { + echo 'Cleaning workspace ...' + sh 'git clean -d -x -f' + echo 'Building (clang) ...' + sh 'CXX=/usr/local/opt/llvm/bin/clang++ LDFLAGS="-L/usr/local/opt/llvm/lib/c++ -L/usr/local/opt/llvm/lib/unwind -lunwind" ./bootstrap.sh' + echo 'Testing (clang) ...' + sh './ctor check' + echo 'Testing suite (clang) ...' + sh '(cd test/suite; CTORDIR=../../build CXX=/usr/local/opt/llvm/bin/clang++ LDFLAGS="-L/usr/local/opt/llvm/lib/c++ -L/usr/local/opt/llvm/lib/unwind -lunwind" ./test.sh)' + } + post { + always { + xunit(thresholds: [ skipped(failureThreshold: '0'), + failed(failureThreshold: '0') ], + tools: [ CppUnit(pattern: 'build/test/*.xml') ]) + } + } } - } - } - //////////////////////////////////////////////////// - stage('Linux gcc') { - agent { label 'linux && gcc && c++20' } - steps { - echo 'Cleaning workspace ...' - sh 'git clean -d -x -f' - echo 'Building (gcc) ...' - sh 'CXX=g++ ./bootstrap.sh' - echo 'Testing (gcc) ...' - sh './ctor check' - echo 'Testing suite (gcc) ...' - sh '(cd test/suite; CTORDIR=../../build CXX=g++ ./test.sh)' - } - post { - always { - xunit(thresholds: [ skipped(failureThreshold: '0'), - failed(failureThreshold: '0') ], - tools: [ CppUnit(pattern: 'build/test/*.xml') ]) + //////////////////////////////////////////////////// + stage('Linux gcc') { + agent { label 'linux && gcc && c++20' } + steps { + echo 'Cleaning workspace ...' + sh 'git clean -d -x -f' + echo 'Building (gcc) ...' + sh 'CXX=g++ ./bootstrap.sh' + echo 'Testing (gcc) ...' + sh './ctor check' + echo 'Testing suite (gcc) ...' + sh '(cd test/suite; CTORDIR=../../build CXX=g++ ./test.sh)' + } + post { + always { + xunit(thresholds: [ skipped(failureThreshold: '0'), + failed(failureThreshold: '0') ], + tools: [ CppUnit(pattern: 'build/test/*.xml') ]) + } + } } - } - } - //////////////////////////////////////////////////// - stage('Linux clang') { - agent { label 'linux && clang && c++20' } - steps { - echo 'Cleaning workspace ...' - sh 'git clean -d -x -f' - echo 'Building (clang) ...' - sh 'CXX=clang++ ./bootstrap.sh' - echo 'Testing (clang) ...' - sh './ctor check' - echo 'Testing suite (clang) ...' - sh '(cd test/suite; CTORDIR=../../build CXX=clang++ ./test.sh)' - } - post { - always { - xunit(thresholds: [ skipped(failureThreshold: '0'), - failed(failureThreshold: '0') ], - tools: [ CppUnit(pattern: 'build/test/*.xml') ]) + //////////////////////////////////////////////////// + stage('Linux clang') { + agent { label 'linux && clang && c++20' } + steps { + echo 'Cleaning workspace ...' + sh 'git clean -d -x -f' + echo 'Building (clang) ...' + sh 'CXX=clang++ ./bootstrap.sh' + echo 'Testing (clang) ...' + sh './ctor check' + echo 'Testing suite (clang) ...' + sh '(cd test/suite; CTORDIR=../../build CXX=clang++ ./test.sh)' + } + post { + always { + xunit(thresholds: [ skipped(failureThreshold: '0'), + failed(failureThreshold: '0') ], + tools: [ CppUnit(pattern: 'build/test/*.xml') ]) + } + } } + //////////////////////////////////////////////////// } } - //////////////////////////////////////////////////// } } |