Mirror von
https://github.com/ViaVersion/ViaVersion.git
synchronisiert 2024-11-20 06:50:08 +01:00
a48c3a6ec2
Bungee support is half broken due to not having the same injection points as Velocity and has become less and less stable with every update. The Sponge plugin has been almost entirely unused
98 Zeilen
3.6 KiB
Plaintext
98 Zeilen
3.6 KiB
Plaintext
plugins {
|
|
id("io.papermc.hangar-publish-plugin") version "0.1.2"
|
|
id("com.modrinth.minotaur") version "2.+"
|
|
}
|
|
|
|
dependencies {
|
|
api(projects.viaversionCommon)
|
|
api(projects.viaversionBukkit)
|
|
api(projects.viaversionVelocity)
|
|
api(projects.viaversionFabric)
|
|
}
|
|
|
|
tasks {
|
|
shadowJar {
|
|
manifest {
|
|
attributes["paperweight-mappings-namespace"] = "mojang"
|
|
}
|
|
archiveClassifier.set("")
|
|
archiveFileName.set("ViaVersion-${project.version}.jar")
|
|
destinationDirectory.set(rootProject.projectDir.resolve("build/libs"))
|
|
}
|
|
sourcesJar {
|
|
duplicatesStrategy = DuplicatesStrategy.EXCLUDE
|
|
rootProject.subprojects.forEach { subproject ->
|
|
if (subproject == project) return@forEach
|
|
val platformSourcesJarTask = subproject.tasks.findByName("sourcesJar") as? Jar ?: return@forEach
|
|
dependsOn(platformSourcesJarTask)
|
|
from(zipTree(platformSourcesJarTask.archiveFile))
|
|
}
|
|
}
|
|
}
|
|
|
|
publishShadowJar()
|
|
|
|
val branch = rootProject.branchName()
|
|
val baseVersion = project.version as String
|
|
val isRelease = !baseVersion.contains('-')
|
|
val isMainBranch = branch == "master"
|
|
if (!isRelease || isMainBranch) { // Only publish releases from the main branch
|
|
val suffixedVersion = if (isRelease) baseVersion else baseVersion + "+" + System.getenv("GITHUB_RUN_NUMBER")
|
|
val changelogContent = if (isRelease) {
|
|
"See [GitHub](https://github.com/ViaVersion/ViaVersion) for release notes."
|
|
} else {
|
|
val commitHash = rootProject.latestCommitHash()
|
|
"[$commitHash](https://github.com/ViaVersion/ViaVersion/commit/$commitHash) ${rootProject.latestCommitMessage()}"
|
|
}
|
|
|
|
modrinth {
|
|
val mcVersions: List<String> = (property("mcVersions") as String)
|
|
.split(",")
|
|
.map { it.trim() }
|
|
token.set(System.getenv("MODRINTH_TOKEN"))
|
|
projectId.set("viaversion")
|
|
versionType.set(if (isRelease) "release" else if (isMainBranch) "beta" else "alpha")
|
|
versionNumber.set(suffixedVersion)
|
|
versionName.set(suffixedVersion)
|
|
changelog.set(changelogContent)
|
|
uploadFile.set(tasks.shadowJar.flatMap { it.archiveFile })
|
|
gameVersions.set(mcVersions)
|
|
loaders.add("fabric")
|
|
loaders.add("paper")
|
|
loaders.add("folia")
|
|
loaders.add("velocity")
|
|
loaders.add("bungeecord")
|
|
loaders.add("sponge")
|
|
autoAddDependsOn.set(false)
|
|
detectLoaders.set(false)
|
|
dependencies {
|
|
optional.project("viafabric")
|
|
optional.project("viafabricplus")
|
|
}
|
|
}
|
|
|
|
hangarPublish {
|
|
publications.register("plugin") {
|
|
version.set(suffixedVersion)
|
|
id.set("ViaVersion")
|
|
channel.set(if (isRelease) "Release" else if (isMainBranch) "Snapshot" else "Alpha")
|
|
changelog.set(changelogContent)
|
|
apiKey.set(System.getenv("HANGAR_TOKEN"))
|
|
platforms {
|
|
paper {
|
|
jar.set(tasks.shadowJar.flatMap { it.archiveFile })
|
|
platformVersions.set(listOf(property("mcVersionRange") as String))
|
|
}
|
|
velocity {
|
|
jar.set(tasks.shadowJar.flatMap { it.archiveFile })
|
|
platformVersions.set(listOf(property("velocityVersion") as String))
|
|
}
|
|
waterfall {
|
|
jar.set(tasks.shadowJar.flatMap { it.archiveFile })
|
|
platformVersions.set(listOf(property("waterfallVersion") as String))
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|