Compare commits
10 Commits
4b57b3d45a
...
5c649f3481
| Author | SHA1 | Date | |
|---|---|---|---|
| 5c649f3481 | |||
| 0f83b57066 | |||
| 137ab417ec | |||
| 260354a009 | |||
| 407bc6311c | |||
| 39a361ec41 | |||
| 9ec20b53e3 | |||
| a86ddef535 | |||
| b3e3a68736 | |||
| f26cfa6950 |
58
Jenkinsfile
vendored
58
Jenkinsfile
vendored
@ -2,21 +2,57 @@ pipeline {
|
|||||||
agent any
|
agent any
|
||||||
|
|
||||||
stages {
|
stages {
|
||||||
stage('build') {
|
// stage('Build') {
|
||||||
|
// steps {
|
||||||
|
// withChecks(name: 'build', includeStage: false) {
|
||||||
|
// withGradle {
|
||||||
|
// sh """
|
||||||
|
// ./gradlew clean testClasses --no-daemon
|
||||||
|
// """
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
// } // Build
|
||||||
|
|
||||||
|
stage('Build') {
|
||||||
steps {
|
steps {
|
||||||
withChecks(name: 'build', includeStage: true) {
|
withChecks(name: 'Test', includeStage: false) {
|
||||||
sh './gradlew clean testClasses'
|
withGradle {
|
||||||
|
sh """
|
||||||
|
./gradlew clean test jacocoTestReport jacocoTestCoverageVerification --no-daemon
|
||||||
|
"""
|
||||||
}
|
}
|
||||||
withChecks(name: 'unit-tests', includeStage: true) {
|
recordCoverage(tools: [[parser: 'JACOCO', pattern: '**/build/reports/jacoco/test/jacoco*.xml']],
|
||||||
sh './gradlew test'
|
id: 'jacoco',
|
||||||
}
|
name: 'Jacoco Coverage',
|
||||||
withChecks(name: 'test-coverage', includeStage: true) {
|
sourceCodeRetention: 'EVERY_BUILD',
|
||||||
sh './gradlew jacocoTestReport jacocoTestCoverageVerification'
|
qualityGates: [
|
||||||
junit '**/build/test-results/test/TEST-*.xml'
|
[threshold: 40.0, metric: 'CLASS', baseline: 'PROJECT'],
|
||||||
|
[threshold: 40.0, metric: 'METHOD', baseline: 'PROJECT'],
|
||||||
|
[threshold: 40.0, metric: 'LINE', baseline: 'PROJECT'],
|
||||||
|
[threshold: 40.0, metric: 'BRANCH', baseline: 'PROJECT']])
|
||||||
|
junit testResults: '**/build/test-results/test/TEST-*.xml'
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
} // Test
|
||||||
|
|
||||||
|
stage('Reports') {
|
||||||
|
steps {
|
||||||
|
script {
|
||||||
|
// junit skipPublishingChecks: true, testResults: '**/build/test-results/test/TEST-*.xml'
|
||||||
|
// archiveArtifacts artifacts: '**/coverage-sources.zip', allowEmptyArchive: false, fingerprint: false, onlyIfSuccessful: false
|
||||||
|
publishHTML (target: [
|
||||||
|
allowMissing: true,
|
||||||
|
alwaysLinkToLastBuild: false,
|
||||||
|
keepAll: true,
|
||||||
|
reportDir: 'app/build/reports/jacoco/test/html',
|
||||||
|
reportFiles: 'index.html',
|
||||||
|
reportName: 'Coverage Report'
|
||||||
|
])
|
||||||
|
// def pmd = scanForIssues tool: [$class: 'Pmd'], pattern: 'lib/build/reports/pmd/*.xml'
|
||||||
|
// publishIssues issues: [pmd]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
} // Post
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -37,28 +37,36 @@ jacoco {
|
|||||||
toolVersion = "0.8.12"
|
toolVersion = "0.8.12"
|
||||||
}
|
}
|
||||||
|
|
||||||
tasks.jacocoTestCoverageVerification {
|
tasks.jacocoTestReport {
|
||||||
violationRules {
|
reports {
|
||||||
rule {
|
xml.required.set(true)
|
||||||
limit {
|
csv.required.set(false)
|
||||||
minimum = "0.4".toBigDecimal()
|
html.required.set(true)
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
rule {
|
|
||||||
isEnabled = false
|
|
||||||
element = "CLASS"
|
|
||||||
includes = listOf("jenkins.test.*")
|
|
||||||
|
|
||||||
limit {
|
|
||||||
counter = "LINE"
|
|
||||||
value = "TOTALCOUNT"
|
|
||||||
maximum = "0.3".toBigDecimal()
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//tasks.jacocoTestCoverageVerification {
|
||||||
|
// violationRules {
|
||||||
|
// rule {
|
||||||
|
// limit {
|
||||||
|
// minimum = "0.2".toBigDecimal()
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
//
|
||||||
|
// rule {
|
||||||
|
// isEnabled = false
|
||||||
|
// element = "CLASS"
|
||||||
|
// includes = listOf("jenkins.test.*")
|
||||||
|
//
|
||||||
|
// limit {
|
||||||
|
// counter = "LINE"
|
||||||
|
// value = "TOTALCOUNT"
|
||||||
|
// minimum = "0.3".toBigDecimal()
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
//}
|
||||||
|
|
||||||
application {
|
application {
|
||||||
// Define the main class for the application.
|
// Define the main class for the application.
|
||||||
mainClass.set("jenkins.test.App")
|
mainClass.set("jenkins.test.App")
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user