From 208422d2ece47638b6cb6da62eea75144e24ec55 Mon Sep 17 00:00:00 2001 From: Yahor Berdnikau Date: Tue, 12 Oct 2021 14:50:53 +0200 Subject: [PATCH] Populate settings also for buildSrc module. ^KT-45745 In Progress --- .../kotlin/gradle/testbase/testDsl.kt | 36 ++++++++++++------- 1 file changed, 23 insertions(+), 13 deletions(-) diff --git a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/testbase/testDsl.kt b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/testbase/testDsl.kt index 2c7385ed323..a10967b8855 100644 --- a/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/testbase/testDsl.kt +++ b/libraries/tools/kotlin-gradle-plugin-integration-tests/src/test/kotlin/org/jetbrains/kotlin/gradle/testbase/testDsl.kt @@ -259,23 +259,33 @@ private fun setupProjectFromTestResources( private fun Path.addDefaultBuildFiles() { if (Files.exists(resolve("build.gradle"))) { val settingsFile = resolve("settings.gradle") - if (!Files.exists(settingsFile)) { - settingsFile.toFile().writeText(DEFAULT_GROOVY_SETTINGS_FILE) - } else { - val settingsContent = settingsFile.toFile().readText() - if (!settingsContent - .lines() - .first { !it.startsWith("//") } - .startsWith("pluginManagement {") - ) { - settingsFile.toFile().writeText( - """ + settingsFile.addPluginManagementToSettings() + } + + val buildSrc = resolve("buildSrc") + if (Files.exists(buildSrc)) { + val settingsFile = buildSrc.resolve("settings.gradle") + settingsFile.addPluginManagementToSettings() + } +} + +private fun Path.addPluginManagementToSettings() { + if (!Files.exists(this)) { + toFile().writeText(DEFAULT_GROOVY_SETTINGS_FILE) + } else { + val settingsContent = toFile().readText() + if (!settingsContent + .lines() + .first { !it.startsWith("//") } + .startsWith("pluginManagement {") + ) { + toFile().writeText( + """ $DEFAULT_GROOVY_SETTINGS_FILE $settingsContent """.trimIndent() - ) - } + ) } } }