40 lines
1.2 KiB
Groovy
40 lines
1.2 KiB
Groovy
/*
|
|
* This is a multibranch workflow file for defining how this project should be
|
|
* built, tested and deployed
|
|
*/
|
|
|
|
node {
|
|
stage 'Clean workspace'
|
|
/* Running on a fresh Docker instance makes this redundant, but just in
|
|
* case the host isn't configured to give us a new Docker image for every
|
|
* build, make sure we clean things before we do anything
|
|
*/
|
|
deleteDir()
|
|
|
|
|
|
stage 'Checkout source'
|
|
/*
|
|
* Represents the SCM configuration in a "Workflow from SCM" project build. Use checkout
|
|
* scm to check out sources matching Jenkinsfile with the SCM details from
|
|
* the build that is executing this Jenkinsfile.
|
|
*
|
|
* when not in multibranch: https://issues.jenkins-ci.org/browse/JENKINS-31386
|
|
*/
|
|
checkout scm
|
|
|
|
|
|
stage 'Build and test'
|
|
/* if we can't install everything we need for Ruby in less than 15 minutes
|
|
* we might as well just give up
|
|
*/
|
|
timeout(30) {
|
|
sh './gradlew -iS'
|
|
}
|
|
|
|
stage 'Capture test results and artifacts'
|
|
step([$class: 'JUnitResultArchiver', testResults: 'build/test-results/**/*.xml'])
|
|
step([$class: 'ArtifactArchiver', artifacts: 'build/libs/*.jar', fingerprint: true])
|
|
}
|
|
|
|
// vim: ft=groovy
|