KT-48620: Avoid build scan listener creation without --scan property
This commit is contained in:
+5
-6
@@ -12,7 +12,6 @@ import org.gradle.api.invocation.Gradle
|
|||||||
import org.gradle.api.logging.Logging
|
import org.gradle.api.logging.Logging
|
||||||
import com.gradle.scan.plugin.BuildScanExtension
|
import com.gradle.scan.plugin.BuildScanExtension
|
||||||
import org.gradle.api.provider.Provider
|
import org.gradle.api.provider.Provider
|
||||||
import org.gradle.build.event.BuildEventsListenerRegistry
|
|
||||||
import org.gradle.tooling.events.OperationCompletionListener
|
import org.gradle.tooling.events.OperationCompletionListener
|
||||||
import org.jetbrains.kotlin.gradle.logging.kotlinDebug
|
import org.jetbrains.kotlin.gradle.logging.kotlinDebug
|
||||||
import org.jetbrains.kotlin.gradle.plugin.internal.state.TaskExecutionResults
|
import org.jetbrains.kotlin.gradle.plugin.internal.state.TaskExecutionResults
|
||||||
@@ -23,7 +22,6 @@ import org.jetbrains.kotlin.gradle.plugin.statistics.ReportStatisticsToBuildScan
|
|||||||
import org.jetbrains.kotlin.gradle.plugin.statistics.ReportStatisticsToElasticSearch
|
import org.jetbrains.kotlin.gradle.plugin.statistics.ReportStatisticsToElasticSearch
|
||||||
import org.jetbrains.kotlin.gradle.report.configureReporting
|
import org.jetbrains.kotlin.gradle.report.configureReporting
|
||||||
import org.jetbrains.kotlin.gradle.utils.isConfigurationCacheAvailable
|
import org.jetbrains.kotlin.gradle.utils.isConfigurationCacheAvailable
|
||||||
import java.util.*
|
|
||||||
|
|
||||||
//Support Gradle 6 and less. Move to
|
//Support Gradle 6 and less. Move to
|
||||||
internal class KotlinGradleBuildServices private constructor(
|
internal class KotlinGradleBuildServices private constructor(
|
||||||
@@ -78,15 +76,16 @@ internal class KotlinGradleBuildServices private constructor(
|
|||||||
val kotlinGradleEsListenerProvider = project.provider {
|
val kotlinGradleEsListenerProvider = project.provider {
|
||||||
val listeners = project.rootProject.objects.listProperty(ReportStatistics::class.java)
|
val listeners = project.rootProject.objects.listProperty(ReportStatistics::class.java)
|
||||||
.value(listOf<ReportStatistics>(ReportStatisticsToElasticSearch))
|
.value(listOf<ReportStatistics>(ReportStatisticsToElasticSearch))
|
||||||
project.rootProject.extensions.findByName("buildScan")
|
if (project.gradle.startParameter.isBuildScan) {
|
||||||
?.also { listeners.add(ReportStatisticsToBuildScan(it as BuildScanExtension)) }
|
project.rootProject.extensions.findByName("buildScan")
|
||||||
KotlinBuildEsStatListener(project.rootProject.name, listeners.get(), UUID.randomUUID().toString())
|
?.also { listeners.add(ReportStatisticsToBuildScan(it as BuildScanExtension)) }
|
||||||
|
}
|
||||||
|
KotlinBuildEsStatListener(project.rootProject.name, listeners.get())
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if (instance != null) {
|
if (instance != null) {
|
||||||
log.kotlinDebug(ALREADY_INITIALIZED_MESSAGE)
|
log.kotlinDebug(ALREADY_INITIALIZED_MESSAGE)
|
||||||
// instance!!.gradleListenerProviders.forEach { listenerRegistry.onTaskCompletion(it) }
|
|
||||||
return instance!!
|
return instance!!
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+4
-1
@@ -17,6 +17,7 @@ import org.jetbrains.kotlin.gradle.plugin.stat.CompileStatData
|
|||||||
import org.jetbrains.kotlin.gradle.plugin.stat.ReportStatistics
|
import org.jetbrains.kotlin.gradle.plugin.stat.ReportStatistics
|
||||||
import org.jetbrains.kotlin.incremental.ChangedFiles
|
import org.jetbrains.kotlin.incremental.ChangedFiles
|
||||||
import java.net.InetAddress
|
import java.net.InetAddress
|
||||||
|
import java.util.*
|
||||||
|
|
||||||
enum class TaskExecutionState {
|
enum class TaskExecutionState {
|
||||||
SKIPPED,
|
SKIPPED,
|
||||||
@@ -28,9 +29,11 @@ enum class TaskExecutionState {
|
|||||||
;
|
;
|
||||||
}
|
}
|
||||||
|
|
||||||
class KotlinBuildEsStatListener(val projectName: String, val reportStatistics: List<ReportStatistics>, val buildUuid: String) :
|
class KotlinBuildEsStatListener(val projectName: String, val reportStatistics: List<ReportStatistics>) :
|
||||||
OperationCompletionListener, AutoCloseable, TaskExecutionListener {
|
OperationCompletionListener, AutoCloseable, TaskExecutionListener {
|
||||||
|
|
||||||
|
val buildUuid: String = UUID.randomUUID().toString()
|
||||||
|
|
||||||
val label by lazy { CompilerSystemProperties.KOTLIN_STAT_LABEl_PROPERTY.value }
|
val label by lazy { CompilerSystemProperties.KOTLIN_STAT_LABEl_PROPERTY.value }
|
||||||
val hostName: String? by lazy {
|
val hostName: String? by lazy {
|
||||||
try {
|
try {
|
||||||
|
|||||||
Reference in New Issue
Block a user