Register BuildReportsService as task completion listener
This will trigger service instantiation on configuration cache reuse even when all tasks are up-to-date. ^KT-27301 In Progress
This commit is contained in:
+7
-4
@@ -241,13 +241,16 @@ class ConfigurationCacheIT : AbstractConfigurationCacheIT() {
|
||||
@DisplayName("with build report")
|
||||
@GradleTest
|
||||
fun testBuildReportSmokeTestForConfigurationCache(gradleVersion: GradleVersion) {
|
||||
project("simpleProject", gradleVersion) {
|
||||
val buildOptions = defaultBuildOptions.copy(buildReport = listOf(BuildReportType.FILE))
|
||||
build("assemble", buildOptions = buildOptions) {
|
||||
project(
|
||||
"simpleProject",
|
||||
gradleVersion,
|
||||
buildOptions = defaultBuildOptions.copy(buildReport = listOf(BuildReportType.FILE))
|
||||
) {
|
||||
build("assemble") {
|
||||
assertBuildReportPathIsPrinted()
|
||||
}
|
||||
|
||||
build("assemble", buildOptions = buildOptions) {
|
||||
build("assemble") {
|
||||
assertBuildReportPathIsPrinted()
|
||||
}
|
||||
}
|
||||
|
||||
+6
-3
@@ -90,9 +90,12 @@ abstract class DefaultKotlinBasePlugin : KotlinBasePlugin {
|
||||
|
||||
KotlinGradleBuildServices.registerIfAbsent(project.gradle).get().detectKotlinPluginLoadedInMultipleProjects(project, kotlinPluginVersion)
|
||||
|
||||
BuildMetricsService.registerIfAbsent(project)?.also {
|
||||
BuildEventsListenerRegistryHolder.getInstance(project).listenerRegistry.onTaskCompletion(it)
|
||||
BuildReportsService.registerIfAbsent(project, it)
|
||||
BuildMetricsService.registerIfAbsent(project)?.also { buildMetricsService ->
|
||||
val buildEventsListenerRegistryHolder = BuildEventsListenerRegistryHolder.getInstance(project)
|
||||
buildEventsListenerRegistryHolder.listenerRegistry.onTaskCompletion(buildMetricsService)
|
||||
BuildReportsService.registerIfAbsent(project, buildMetricsService).also {
|
||||
buildEventsListenerRegistryHolder.listenerRegistry.onTaskCompletion(it)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user