40 lines
1.0 KiB
Groovy
40 lines
1.0 KiB
Groovy
#!groovy
|
|
|
|
node('freebsd') {
|
|
// freebsd 10.3 + pkg install git openjdk cmake icu pkgconf swig30 python3
|
|
timestamps {
|
|
try {
|
|
timeout(time: 30, unit: 'MINUTES') {
|
|
def srcdir = pwd()
|
|
def tmpdir = pwd([tmp: true])
|
|
stage('Checkout') {
|
|
step([$class: 'WsCleanup'])
|
|
checkout scm
|
|
sh 'git submodule update --init --recursive'
|
|
}
|
|
stage('Build') {
|
|
dir("$tmpdir/build") {
|
|
sh "cmake $srcdir -DWANT_PERL=ON -DWANT_PYTHON=ON -DCMAKE_INSTALL_PREFIX=$tmpdir/install-prefix"
|
|
sh 'make VERBOSE=1 all'
|
|
}
|
|
}
|
|
stage('Unit test') {
|
|
dir("$tmpdir/build") {
|
|
sh 'make unittest'
|
|
}
|
|
}
|
|
stage('Integration test') {
|
|
dir("$tmpdir/build") {
|
|
sh 'make install'
|
|
// TODO: run make inttest
|
|
}
|
|
}
|
|
}
|
|
currentBuild.result = 'SUCCESS'
|
|
} catch (err) {
|
|
echo "Error: ${err}"
|
|
currentBuild.result = 'FAILURE'
|
|
}
|
|
}
|
|
}
|