Terra/settings.gradle.kts
2025-01-05 16:58:28 +01:00

51 lines
1.5 KiB
Plaintext

rootProject.name = "Terra"
fun includeImmediateChildren(dir: File, type: String) {
dir.walkTopDown().maxDepth(1).forEach {
if (!it.isDirectory || !File(it, "build.gradle.kts").exists()) return@forEach
val addonDir = it.relativeTo(file(".")).path.replace("/", ":").replace("\\", ":")
logger.info("Including $type directory \"$addonDir\" as subproject.")
include(addonDir)
}
}
includeImmediateChildren(file("common/api"), "API")
includeImmediateChildren(file("common/implementation"), "implementation")
includeImmediateChildren(file("common/addons"), "addon")
includeImmediateChildren(file("platforms"), "platform")
includeImmediateChildren(file("platforms/bukkit/nms"), "Bukkit NMS")
include(":platforms:bukkit:common")
include(":platforms:minestom:example")
pluginManagement {
repositories {
gradlePluginPortal()
maven("https://maven.fabricmc.net") {
name = "Fabric Maven"
}
maven("https://maven.architectury.dev/") {
name = "Architectury Maven"
}
maven("https://files.minecraftforge.net/maven/") {
name = "Forge Maven"
}
maven("https://maven.quiltmc.org/repository/release/") {
name = "Quilt"
}
}
}
// settings.gradle.kts
val isCiServer = System.getenv().containsKey("CI")
// Cache build artifacts, so expensive operations do not need to be re-computed
buildCache {
local {
isEnabled = !isCiServer
}
}