69 lines
1.4 KiB
YAML
69 lines
1.4 KiB
YAML
image: gradle:6.7-jdk15
|
|
|
|
stages:
|
|
- build
|
|
- staticAnalysis
|
|
- test
|
|
|
|
variables:
|
|
# Disable the Gradle daemon to ensure isolated runs of the CI pipeline.
|
|
GRADLE_OPTS: "-Dorg.gradle.daemon=false"
|
|
|
|
# Default build cache settings to extend from
|
|
.build_cached:
|
|
cache:
|
|
key: "gradle-build"
|
|
paths:
|
|
# Only cache the gradle directory, as we do not use a shared cache
|
|
- .gradle/
|
|
policy: pull
|
|
|
|
build-example-microservice:
|
|
extends:
|
|
- .build_cached
|
|
needs:
|
|
- gradle_build
|
|
dependencies:
|
|
- gradle_build
|
|
stage: build
|
|
script:
|
|
gradle example-microservice:assemble example-microservice:testClasses
|
|
|
|
checkStyle-example-microservice:
|
|
extends:
|
|
- .build_cached
|
|
needs:
|
|
- gradle_build
|
|
dependencies:
|
|
- gradle_build
|
|
stage: staticAnalysis
|
|
script:
|
|
gradle example-microservice:checkstyleMain example-microservice:checkStyleTest
|
|
allow_failure: true
|
|
|
|
|
|
PMD-example-microservice:
|
|
extends:
|
|
- .build_cached
|
|
needs:
|
|
- gradle_build
|
|
dependencies:
|
|
- gradle_build
|
|
stage: staticAnalysis
|
|
script:
|
|
gradle example-microservice:pmdMain
|
|
allow_failure: true
|
|
|
|
test-example-microservice:
|
|
extends:
|
|
- .build_cached
|
|
needs:
|
|
- gradle_build
|
|
dependencies:
|
|
- gradle_build
|
|
stage: test
|
|
script:
|
|
- gradle example-microservice:test example-microservice:jacocoTestReport
|
|
- cat example-microservice/build/reports/jacoco/test/html/index.html | grep -Po "Total.*?([0-9]{1,3})%"
|
|
coverage: /([0-9]{1,3})%/
|
|
|