Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/AckeeCZ/danger-kotlin-detekt
Plugin for danger-kotlin processing outputs of detekt tool
https://github.com/AckeeCZ/danger-kotlin-detekt
danger danger-kotlin dangerfile detekt kotlin
Last synced: 1 day ago
JSON representation
Plugin for danger-kotlin processing outputs of detekt tool
- Host: GitHub
- URL: https://github.com/AckeeCZ/danger-kotlin-detekt
- Owner: AckeeCZ
- Created: 2021-03-17T06:52:27.000Z (over 3 years ago)
- Default Branch: master
- Last Pushed: 2021-03-19T10:28:14.000Z (over 3 years ago)
- Last Synced: 2024-08-03T14:07:45.336Z (3 months ago)
- Topics: danger, danger-kotlin, dangerfile, detekt, kotlin
- Language: Kotlin
- Homepage:
- Size: 64.5 KB
- Stars: 7
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
- awesome-danger - danger-kotlin-detekt - Process outputs of detekt tool (Plugins / Kotlin (danger-kotlin))
README
[ ![Maven Central](https://maven-badges.herokuapp.com/maven-central/io.github.ackeecz/danger-kotlin-detekt/badge.svg)](https://maven-badges.herokuapp.com/maven-central/io.github.ackeecz/danger-kotlin-detekt)
# danger-kotlin detekt plugin
Plugin for [danger-kotlin](https://github.com/danger/kotlin) processing outputs
of [detekt](https://github.com/detekt/detekt) tool## Installation
Put
```kotlin
@file:DependsOn("io.github.ackeecz:danger-kotlin-detekt:x.y.z")
```to the top of your Dangerfile
## Usage
First you need to register the plugin via
```kotlin
register plugin DetektPlugin
```and then you can use it through it's single public method
```kotlin
DetektPlugin.parseAndReport(detektReportFile)
````parseAndReport` method accepts varargs of files pointing to the detekt reports.
Example Dangerfile
```kotlin
@file:DependsOn("io.github.ackeecz:danger-kotlin-detekt:x.y.z")import io.github.ackeecz.danger.detekt.DetektPlugin
import systems.danger.kotlin.danger
import systems.danger.kotlin.registerimport java.nio.file.Files
import java.nio.file.Paths
import java.util.function.BiPredicate
import java.util.stream.Collectorsregister plugin DetektPlugin
danger(args) {
val detektReports = Files.find(Paths.get(""), 10, BiPredicate { path, attributes ->
val fileName = path.toFile().name
fileName.endsWith("detekt.xml")
}).map { it.toFile() }.collect(Collectors.toList())DetektPlugin.parseAndReport(*detektReports.toTypedArray())
}
```This will find all files in the depth of 10 relative to current directory that ends with `detekt.xml`
and it will pass them to the plugin.## Customization
Currently, there is no customization of reports. It sends inline commit to the git server directly. When some
customization is needed it will be added.