-
Notifications
You must be signed in to change notification settings - Fork 21
/
Copy pathsettings.gradle.kts
111 lines (97 loc) · 3.14 KB
/
settings.gradle.kts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
/*
* Copyright (c) 2024-2025. lWoHvYe(Hongyan Wang)
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/*
* This file was generated by the Gradle 'init' task.
*/
pluginManagement {
// Include 'plugins build' to define convention plugins.
includeBuild("build-logic")
repositories {
gradlePluginPortal()
}
}
plugins {
id("com.gradle.develocity") version "3.19"
id("org.gradle.toolchains.foojay-resolver-convention") version ("0.8.0")
}
dependencyResolutionManagement {
repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
repositories {
gradlePluginPortal()
flatDir {
dirs(rootProject.projectDir.resolve("ex-lib"))
}
}
versionCatalogs {
create("libs") {
}
}
}
rootProject.name = "valentine-p2p"
val javaVersion = JavaVersion.current()
println("Current Java version: $javaVersion")
val buildFiles = fileTree(rootDir) {
val excludes = gradle.startParameter.projectProperties["excludeProjects"]?.split(",")
include("**/*.gradle", "**/*.gradle.kts")
exclude(
"build",
"**/gradle",
"settings.gradle",
"settings.gradle.kts",
"buildSrc",
"build-logic",
"/build.gradle",
"/build.gradle.kts",
".*",
"out"
)
// exclude kotlin module when Jvm is not compatible
if (javaVersion.isCompatibleWith(JavaVersion.VERSION_23)) {
exclude("**/*-kotlin.gradle.kts")
}
if (excludes != null) {
exclude(*excludes.toTypedArray())
}
}
buildFiles.forEach { buildFile ->
val isDefaultName = buildFile.name == "build.gradle" || buildFile.name == "build.gradle.kts"
val isKotlin = buildFile.name.endsWith(".kts")
if (isDefaultName) {
val buildFilePath = buildFile.parentFile.absolutePath
val projectPath = buildFilePath.replace(rootDir.absolutePath, "").replace(File.separator, ":")
include(projectPath)
} else {
val projectName =
if (isKotlin) {
buildFile.name.replace(".gradle.kts", "")
} else {
buildFile.name.replace(".gradle", "")
}
val projectPath = ":$projectName"
include(projectPath)
val project = findProject(projectPath)
project?.name = projectName
project?.projectDir = buildFile.parentFile
project?.buildFileName = buildFile.name
}
}
develocity {
buildScan {
publishing.onlyIf { providers.environmentVariable("CI").getOrElse("false").toBoolean() }
termsOfUseUrl.set("https://gradle.com/terms-of-service")
termsOfUseAgree.set("yes")
}
}