4e48464bb3
* Add build stage to Jenkinsfile * Run travisbuild in bash rather than sh * Add GCC/Clang differentiation * Use different working directory for each build type. * Correct directory name * Remove travis config file * Always clean workspace afterwards
62 lines
1.8 KiB
Groovy
62 lines
1.8 KiB
Groovy
pipeline {
|
|
agent {
|
|
docker 'cuberite/docker-ci/minimal:latest'
|
|
}
|
|
stages {
|
|
stage("Prepare") {
|
|
steps {
|
|
sh 'git submodule update --init'
|
|
}
|
|
}
|
|
stage("Check") {
|
|
parallel {
|
|
stage("CheckBasicStyle") {
|
|
steps {
|
|
dir("src") {
|
|
sh 'find . -name \\*.cpp -or -name \\*.h > AllFiles.lst'
|
|
sh 'lua CheckBasicStyle.lua'
|
|
sh 'cd Bindings && lua CheckBindingsDependencies.lua'
|
|
}
|
|
}
|
|
}
|
|
stage("clang-tidy") {
|
|
steps {
|
|
sh './clang-tidy.sh -j 3'
|
|
}
|
|
}
|
|
}
|
|
}
|
|
stage("Build") {
|
|
parallel {
|
|
stage("gcc") {
|
|
environment {
|
|
TRAVIS_CUBERITE_BUILD_TYPE = 'Release'
|
|
TRAVIS_JOB_NUMBER = "{$env.BUILD_ID}"
|
|
CC = "gcc"
|
|
CXX = "g++"
|
|
}
|
|
steps {
|
|
sh 'bash ./travisbuild.sh'
|
|
}
|
|
}
|
|
stage("clang") {
|
|
environment {
|
|
TRAVIS_CUBERITE_BUILD_TYPE = 'Debug'
|
|
TRAVIS_JOB_NUMBER = "{$env.BUILD_ID}"
|
|
CC = "clang"
|
|
CXX = "clang++"
|
|
}
|
|
steps {
|
|
sh 'bash ./travisbuild.sh'
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
post {
|
|
always {
|
|
cleanWs()
|
|
}
|
|
}
|
|
}
|