diff options
Diffstat (limited to 'Jenkinsfile')
-rw-r--r-- | Jenkinsfile | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/Jenkinsfile b/Jenkinsfile new file mode 100644 index 0000000..c95b0eb --- /dev/null +++ b/Jenkinsfile @@ -0,0 +1,56 @@ +pipeline { + agent { label 'c++20' } + + stages { + stage('Clean') { + steps { + echo 'Cleaning workspace ...' + sh 'rm -Rf build*' + } + } + stage('Build-gcc') { + steps { + echo 'Building (gcc) ...' + sh 'BUILDDIR=build-gcc CXX=g++ ./bootstrap.sh' + } + } + stage('Test-gcc') { + steps { + echo 'Testing (gcc) ...' + sh './ctor check' + } + } + stage('Test-suite-gcc') { + steps { + echo 'Testing suite (gcc) ...' + sh '(cd test/suite; CTORDIR=../../build-gcc CXX=g++ ./test.sh)' + } + } + stage('Build-clang') { + steps { + echo 'Building (clang) ...' + sh 'BUILDDIR=build-clang CXX=clang++ ./bootstrap.sh' + } + } + stage('Test-clang') { + steps { + echo 'Testing (clang) ...' + sh './ctor check' + } + } + stage('Test-suite-clang') { + steps { + echo 'Testing suite (clang) ...' + sh '(cd test/suite; CTORDIR=../../build-clang CXX=clang++ ./test.sh)' + } + } + } + + post { + always { + xunit(thresholds: [ skipped(failureThreshold: '0'), + failed(failureThreshold: '0') ], + tools: [ CppUnit(pattern: 'build-*/test/*.xml') ]) + } + } +} |