
Apache RAT (Release Audit Tool) Gradle Plugin
Ce plugin permet d'exécuter l'outil d'audit de publication Apache RAT, axé sur les licences.
Dans votre fichier build.gradle(.kts) :
plugins {
id("org.nosphere.apache.rat") version "0.8.1"
}
Le plugin enregistre une tâche nommée rat que vous pouvez configurer dans votre fichier build.gradle(.kts) :
tasks.rat {
// Use the default RAT license header matchers, defaults to `true`
addDefaultMatchers.set(false)
// Add custom substring license header matchers
substringMatcher("family", "category", "pattern-1", "pattern-2")
// Declare approved license families, if used, any non-declared family won't be approved
approvedLicense("MIT")
// Input directory, defaults to '.'
inputDir.set("some/path")
// List of Gradle exclude directives, defaults to ['**/.gradle/**']
excludes.add("**/build/**")
// RatTask 0.5.0+ implements PatternFilterable
exclude { it.file in configurations.someConf.files }
// Rat excludes file, one directive per line
excludeFile.set(layout.projectDirectory.file(".rat-excludes.txt"))
// XML, TXT and HTML reports directory, defaults to 'build/reports/rat'
reportDir.set(file("some/other/path"))
// Custom XSL stylesheet for the HTML report
stylesheet.set(file("custom/rat-html-stylesheet.xsl"))
// Fail the build on rat errors, defaults to true
failOnError.set(false)
}
rat {
// Input directory, defaults to '.'
inputDir.set(file("some/path"))
// List of Gradle exclude directives, defaults to ['**/.gradle/**']
excludes.add("**/build/**")
// Rat excludes file, one directive per line
excludeFile.set(layout.projectDirectory.file(".rat-excludes.txt"))
// XML, TXT and HTML reports directory, defaults to 'build/reports/rat'
reportDir.set(file("some/other/path"))
// Custom XSL stylesheet for the HTML report
stylesheet.set(file("custom/rat-html-stylesheet.xsl"))
// Fail the build on rat errors, defaults to true
failOnError.set(false)
// Prints the list of files with unapproved licences to the console, defaults to false
verbose.set(true)
}
Vous pouvez exécuter la tâche rat en invoquant Gradle :
gradle rat
Si le projet possède une tâche check, la tâche rat est automatiquement enregistrée comme dépendante de celle-ci.
Lorsqu'un audit Rat échoue, une URL cliquable du rapport HTML est affichée :
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':rat'.
> Apache Rat audit failure - 35 unapproved licenses
See file:///path/to/build/reports/rat/index.html

| Plugin | Java min | Gradle min | Gradle max | Configuration Cache | Build Cache |
|---|
0.8.1 | 1.8 | 6.0 | 8.x | 🟢 | 🟢 |
0.8.0 | 1.8 | 6.0 | 8.x | 🟡 | 🟢 |
0.7.1 | 1.8 | 6.0 | 7.x | 🟡 | 🟢 |
0.7.0 | 1.8 | 6.0 | 7.x | 🟡 | 🟢 |
0.6.0 | 1.6 | 4.7 | 6.x | 🟡 | 🟢 |
0.5.3 | 1.6 | 4.7 | 6.x | 🔴 | 🟢 |
0.5.2 | 1.6 | 4.7 | 6.x | 🔴 | 🟢 |
0.5.1 | 1.6 | 4.7 | 5.x | 🔴 | 🟢 |
0.5.0 | 1.6 | 4.7 | 5.x | 🔴 | 🟢 |
0.4.0 | 1.6 | 4.7 | 5.x | 🔴 | 🟢 |
0.3.1 | 1.6 | 2.14 | 4.x | 🔴 | 🟢 |
0.3.0 | 1.6 | 2.14 | 4.x | 🔴 | 🟢 |
0.2.0 | 1.6 | 2.14 | 4.x | 🔴 | 🟢 |
0.1.0 | 1.6 | 2.14 | 4.x | 🔴 | 🟢 |