Skip to content

Commit 5f013c3

Browse files
SONARKT-594 Run root-level Gradle checks (S6631 and S6474) on the root module only
1 parent b0af12a commit 5f013c3

File tree

2 files changed

+9
-10
lines changed

2 files changed

+9
-10
lines changed

its/ruling/src/test/resources/expected/kotlin/kotlin-language-server/kotlin-S6474.json

Lines changed: 0 additions & 6 deletions
This file was deleted.

sonar-kotlin-gradle/src/main/java/org/sonarsource/kotlin/gradle/KotlinGradleSensor.kt

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@ import org.sonarsource.kotlin.api.sensors.AbstractKotlinSensor
3030
import org.sonarsource.kotlin.api.sensors.AbstractKotlinSensorExecuteContext
3131
import org.sonarsource.kotlin.api.visiting.KtChecksVisitor
3232
import java.io.File
33+
import java.nio.file.Files
3334

3435
const val GRADLE_PROJECT_ROOT_PROPERTY = "sonar.kotlin.gradleProjectRoot"
3536
const val MISSING_SETTINGS_RULE_KEY = "S6631"
@@ -71,10 +72,14 @@ class KotlinGradleSensor(
7172
)
7273
)
7374

74-
sensorContext.config()[GRADLE_PROJECT_ROOT_PROPERTY].ifPresent {
75-
checkForMissingGradleSettings(File(it), sensorContext)
76-
checkForMissingVerificationMetadata(File(it), sensorContext)
77-
}
75+
sensorContext.config()[GRADLE_PROJECT_ROOT_PROPERTY]
76+
.map { File(it) }
77+
// Only run checks on the root module, where Gradle project root == baseDir
78+
.filter { Files.isSameFile(it.toPath(), sensorContext.fileSystem().baseDir().toPath()) }
79+
.ifPresent {
80+
checkForMissingGradleSettings(it, sensorContext)
81+
checkForMissingVerificationMetadata(it, sensorContext)
82+
}
7883

7984
return fileSystem.inputFiles(mainFilePredicate)
8085
}

0 commit comments

Comments
 (0)