bukkit: Add run tasks for testing legacy versions

This commit is contained in:
Jason Penilla 2021-06-19 18:28:01 -07:00 committed by Jason
parent 2a9a32aafe
commit c4966c2b80

View file

@ -1,3 +1,5 @@
import xyz.jpenilla.runpaper.task.RunServerTask
plugins {
id("cloud.example-conventions")
id("com.github.johnrengelman.shadow")
@ -27,5 +29,32 @@ tasks {
}
runServer {
minecraftVersion("1.17")
javaLauncher.set(project.javaToolchains.launcherFor {
languageVersion.set(JavaLanguageVersion.of(16))
})
}
// Setup a run task for each supported version
mapOf(
setOf("1.8.8", "1.9.4", "1.10.2", "1.11.2", "1.12.2") to 8,
setOf("1.13.2", "1.14.4", "1.15.2") to 11,
setOf("1.16.5", "1.17") to 16
).forEach { (minecraftVersions, javaVersion) ->
for (version in minecraftVersions) {
createVersionedRun(version, javaVersion)
}
}
}
fun TaskContainerScope.createVersionedRun(
version: String,
javaVersion: Int
) = register<RunServerTask>("runServer${version.replace(".", "")}") {
group = "cloud"
pluginJars.from(shadowJar.flatMap { it.archiveFile })
minecraftVersion(version)
runDirectory(file("run$version"))
javaLauncher.set(project.javaToolchains.launcherFor {
languageVersion.set(JavaLanguageVersion.of(javaVersion))
})
}