1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66
|
@Library("osconfig") _
properties([disableConcurrentBuilds()])
// from shared library
target = osconfig()
docker_args = docker_args()
currentBuild.description = "Pipelined " + target
node("linux") {
artefacts = pwd() + "/artefacts"
target_dir = artefacts + "/" + target
stage("Checkout sources") {
checkout scm
checkout_private()
}
stage("Building target ${target}") {
withDockerContainer(image: "jenkins-${target}", args: docker_args) {
// from shared library
build(target, target_dir)
}
}
stage("Publish and test") {
parallel(
"Publish": {
// from shared library - only publish for normal branch, not for PR
if (! BRANCH_NAME.startsWith('PR')) {
publish(BRANCH_NAME, target, target_dir)
}
},
"Unit testing": {
ut_result = "no-result"
withDockerContainer(image: "jenkins-${target}", args: docker_args) {
ut_result = run_ut(target)
}
junit(testResults: ut_result)
},
"Installtest": {
withDockerContainer(image: "jenkins-${target}-basic", args: docker_args) {
// from shared library
installtest_nopython(target, target_dir)
}
})
}
}
|