Quality gradle plugin for ekino projects
This plugin configures:
- Check style (via checkstyle)
- Code coverage (via Jacoco)
- Continuous code quality (via SonarQube)
Gradle 7.6.1 and JDK 11 are required.
This plugin checks that import had 3 groups in the below order:
- com
- java
- javax
and after that a latest group with static import
Be careful to configure your IDE code style with the same configuration to avoid errors.
You can override checkstyle version using a dedicated configuration.
Note: The default checkstyle.xml is compatible with 8.24 or later
checkstyle {
toolVersion = "8.41.1"
configFile = file("${project.rootDir}/config/checkstyle.xml")
}
These values can be set in project properties:
- SONARQUBE_URL: Sonarqube server URL. Ex :
http://localhost:9000
- SONARQUBE_TOKEN: login or authentication token of a SonarQube user with Execute Analysis permission on the project
- sonarCoverageExclusions: source files to exclude from code coverage (java extension, wildcard allowed, comma separator). Ex :
**/*Properties.java, **/*Constants.java
- sonarExclusions: source files to exclude from analysis (java extension, wildcard allowed, comma separator). Ex :
**/*Properties.java, **/*Constants.java
Or you can set it in manuel mode on your CI pipeline (because you don't want that each developer publish to sonar)
Add the plugin in your Gradle build script:
Groovy
plugins {
id "com.ekino.oss.gradle.plugin.quality" version "2.1.0"
}
Kotlin
plugins {
id("com.ekino.oss.gradle.plugin.quality") version "2.1.0"
}
This will create the JAR and run the tests
./gradlew build
Add to your local project in the settings.gradle as described in Gradle doc includeBuild '[path/to/the/gradle/plugin]'
This will upload the plugin to Nexus repository
./gradlew build publish