Skip to content

Commit

Permalink
Choice of builder in Jenkins
Browse files Browse the repository at this point in the history
  • Loading branch information
ref-humbold committed Apr 1, 2024
1 parent dcda21c commit 088d6ea
Showing 1 changed file with 53 additions and 21 deletions.
74 changes: 53 additions & 21 deletions Jenkinsfile
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,11 @@ pipeline {
}

parameters {
choice(
name: "builder",
description: "Project builder",
choices: ["Gradle", "ANT"]
)
booleanParam(
name: "archive",
description: "Should artifacts be archived?",
Expand Down Expand Up @@ -43,31 +48,36 @@ pipeline {
stage("Build") {
steps {
echo "#INFO: Building project"
// withAnt(installation: "${env.ANT_NAME}", jdk: "${env.JDK_NAME}") {
// sh "ant resolve jar"
// }
withGradle {
sh "gradle jar"

script {
if(params.builder == "Gradle") {
gradleCommand("jar")
} else {
antCommand("resolve jar")
}
}
}
}

stage("Unit tests") {
steps {
echo "#INFO: Running unit tests"
// withAnt(installation: "${env.ANT_NAME}", jdk: "${env.JDK_NAME}") {
// sh "ant test"
// }
withGradle {
sh "gradle test"

script {
if(params.builder == "Gradle") {
gradleCommand("test")
} else {
antCommand("test")
}
}
}

post {
always {
junit(
// testResults: "${env.ANT_OUTPUT_DIR}/junit/result/TEST-*.xml",
testResults: "${env.GRADLE_OUTPUT_DIR}/test-results/test/TEST-*.xml",
testResults: params.builder == "Gradle"
? "${env.GRADLE_OUTPUT_DIR}/test-results/test/TEST-*.xml"
: "${env.ANT_OUTPUT_DIR}/junit/result/TEST-*.xml",
healthScaleFactor: 1.0,
skipPublishingChecks: true
)
Expand All @@ -84,8 +94,12 @@ pipeline {
}

steps {
// archiveArtifacts(artifacts: "${env.ANT_OUTPUT_DIR}/dist/*.jar", onlyIfSuccessful: true)
archiveArtifacts(artifacts: "${env.GRADLE_OUTPUT_DIR}/libs/*.jar", onlyIfSuccessful: true)
archiveArtifacts(
artifacts: params.builder == "Gradle"
? "${env.GRADLE_OUTPUT_DIR}/libs/*.jar"
: "${env.ANT_OUTPUT_DIR}/dist/*.jar",
onlyIfSuccessful: true
)
}
}

Expand All @@ -99,18 +113,24 @@ pipeline {

steps {
echo "#INFO: Publish Javadoc"
// withAnt(installation: "${env.ANT_NAME}", jdk: "${env.JDK_NAME}") {
// sh "ant docs"
// }
withGradle {
sh "gradle javadoc"

script {
if(params.builder == "Gradle") {
gradleCommand("javadoc")
} else {
antCommand("docs")
}
}
}

post {
always {
// javadoc(javadocDir: "${env.ANT_OUTPUT_DIR}/docs", keepAll: false)
javadoc(javadocDir: "${env.GRADLE_OUTPUT_DIR}/docs/javadoc", keepAll: false)
javadoc(
javadocDir: params.builder == "Gradle"
? "${env.GRADLE_OUTPUT_DIR}/docs/javadoc"
: "${env.ANT_OUTPUT_DIR}/docs",
keepAll: false
)
}
}
}
Expand All @@ -126,3 +146,15 @@ pipeline {
}
}
}

def antCommand(String command) {
withAnt(installation: "${env.ANT_NAME}", jdk: "${env.JDK_NAME}") {
sh "ant ${command}"
}
}

def gradleCommand(String command) {
withGradle {
sh "gradle ${command)}"
}
}

0 comments on commit 088d6ea

Please sign in to comment.