Populate default settings even when 'build.gradle' file is missing.
^KT-45745 In Progress
This commit is contained in:
committed by
TeamCityServer
parent
c669749915
commit
031c5f47d9
+14
-10
@@ -257,29 +257,33 @@ private fun setupProjectFromTestResources(
|
||||
}
|
||||
|
||||
private fun Path.addDefaultBuildFiles() {
|
||||
if (Files.exists(resolve("build.gradle"))) {
|
||||
val settingsFile = resolve("settings.gradle")
|
||||
settingsFile.addPluginManagementToSettings()
|
||||
}
|
||||
addPluginManagementToSettings()
|
||||
|
||||
val buildSrc = resolve("buildSrc")
|
||||
if (Files.exists(buildSrc)) {
|
||||
val settingsFile = buildSrc.resolve("settings.gradle")
|
||||
settingsFile.addPluginManagementToSettings()
|
||||
buildSrc.addPluginManagementToSettings()
|
||||
}
|
||||
}
|
||||
|
||||
private fun Path.addPluginManagementToSettings() {
|
||||
if (!Files.exists(this)) {
|
||||
toFile().writeText(DEFAULT_GROOVY_SETTINGS_FILE)
|
||||
val settingsGradle = resolve("settings.gradle")
|
||||
val settingsGradleKts = resolve("settings.gradle.kts")
|
||||
val fileToUpdate = when {
|
||||
Files.exists(settingsGradle) -> settingsGradle
|
||||
Files.exists(settingsGradleKts) -> settingsGradleKts
|
||||
else -> null
|
||||
}
|
||||
|
||||
if (fileToUpdate == null) {
|
||||
settingsGradle.toFile().writeText(DEFAULT_GROOVY_SETTINGS_FILE)
|
||||
} else {
|
||||
val settingsContent = toFile().readText()
|
||||
val settingsContent = fileToUpdate.toFile().readText()
|
||||
if (!settingsContent
|
||||
.lines()
|
||||
.first { !it.startsWith("//") }
|
||||
.startsWith("pluginManagement {")
|
||||
) {
|
||||
toFile().writeText(
|
||||
fileToUpdate.toFile().writeText(
|
||||
"""
|
||||
$DEFAULT_GROOVY_SETTINGS_FILE
|
||||
|
||||
|
||||
Reference in New Issue
Block a user