Skip to content

Commit bd0d5f0

Browse files
authored
move log config so that logging works when detector is disabled (#298)
1 parent 9f7c5f0 commit bd0d5f0

File tree

1 file changed

+24
-23
lines changed

1 file changed

+24
-23
lines changed

affectedmoduledetector/src/main/kotlin/com/dropbox/affectedmoduledetector/AffectedModuleDetector.kt

Lines changed: 24 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -147,12 +147,36 @@ abstract class AffectedModuleDetector(protected val logger: Logger?) {
147147
val instance = AffectedModuleDetectorWrapper()
148148
rootProject.extensions.add(ROOT_PROP_NAME, instance)
149149

150+
val config =
151+
requireNotNull(
152+
rootProject.extensions.findByType(AffectedModuleConfiguration::class.java)
153+
) {
154+
"Root project ${rootProject.path} must have the AffectedModuleConfiguration " +
155+
"extension added."
156+
}
157+
158+
val distDir = if (config.logFolder != null) {
159+
val distDir = File(config.logFolder!!)
160+
if (!distDir.exists()) {
161+
distDir.mkdirs()
162+
}
163+
distDir
164+
} else {
165+
rootProject.rootDir
166+
}
167+
168+
val outputFile = distDir.resolve(config.logFilename).also {
169+
it.writeText("")
170+
}
171+
val logger = FileLogger(outputFile)
172+
150173
val enabled = isProjectEnabled(rootProject)
151174
if (!enabled) {
152175
val provider =
153176
setupWithParams(rootProject) { spec ->
154177
val params = spec.parameters
155178
params.acceptAll = true
179+
params.log = logger
156180
}
157181
instance.wrapped = provider
158182
return
@@ -171,29 +195,6 @@ abstract class AffectedModuleDetector(protected val logger: Logger?) {
171195
}
172196
}
173197

174-
val config =
175-
requireNotNull(
176-
rootProject.extensions.findByType(AffectedModuleConfiguration::class.java)
177-
) {
178-
"Root project ${rootProject.path} must have the AffectedModuleConfiguration " +
179-
"extension added."
180-
}
181-
182-
val distDir = if (config.logFolder != null) {
183-
val distDir = File(config.logFolder!!)
184-
if (!distDir.exists()) {
185-
distDir.mkdirs()
186-
}
187-
distDir
188-
} else {
189-
rootProject.rootDir
190-
}
191-
192-
val outputFile = distDir.resolve(config.logFilename).also {
193-
it.writeText("")
194-
}
195-
val logger = FileLogger(outputFile)
196-
197198
val modules =
198199
getModulesProperty(
199200
rootProject

0 commit comments

Comments
 (0)