Populate settings also for buildSrc module.

^KT-45745 In Progress
This commit is contained in:
Yahor Berdnikau
2021-10-12 14:50:53 +02:00
committed by TeamCityServer
parent 38849b7be4
commit 208422d2ec
@@ -259,23 +259,33 @@ private fun setupProjectFromTestResources(
private fun Path.addDefaultBuildFiles() { private fun Path.addDefaultBuildFiles() {
if (Files.exists(resolve("build.gradle"))) { if (Files.exists(resolve("build.gradle"))) {
val settingsFile = resolve("settings.gradle") val settingsFile = resolve("settings.gradle")
if (!Files.exists(settingsFile)) { settingsFile.addPluginManagementToSettings()
settingsFile.toFile().writeText(DEFAULT_GROOVY_SETTINGS_FILE) }
} else {
val settingsContent = settingsFile.toFile().readText() val buildSrc = resolve("buildSrc")
if (!settingsContent if (Files.exists(buildSrc)) {
.lines() val settingsFile = buildSrc.resolve("settings.gradle")
.first { !it.startsWith("//") } settingsFile.addPluginManagementToSettings()
.startsWith("pluginManagement {") }
) { }
settingsFile.toFile().writeText(
""" 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 $DEFAULT_GROOVY_SETTINGS_FILE
$settingsContent $settingsContent
""".trimIndent() """.trimIndent()
) )
}
} }
} }
} }