ViaBackwards/universal/build.gradle.kts

100 lines
3.7 KiB
Plaintext
Raw Normal View History

2021-05-29 09:32:55 +02:00
plugins {
2024-03-22 20:48:31 +01:00
id("io.papermc.hangar-publish-plugin") version "0.1.2"
2023-08-10 16:26:51 +02:00
id("com.modrinth.minotaur") version "2.+"
2021-05-29 09:32:55 +02:00
}
dependencies {
api(projects.viabackwardsCommon)
api(projects.viabackwardsBukkit)
api(projects.viabackwardsVelocity)
api(projects.viabackwardsFabric)
api(projects.viabackwardsSponge)
}
2021-05-29 09:32:55 +02:00
2021-02-18 14:34:33 +01:00
tasks {
2021-05-29 09:32:55 +02:00
shadowJar {
manifest {
attributes["paperweight-mappings-namespace"] = "mojang"
}
2021-02-18 14:34:33 +01:00
archiveFileName.set("ViaBackwards-${project.version}.jar")
destinationDirectory.set(rootProject.projectDir.resolve("build/libs"))
2021-02-23 11:29:18 +01:00
}
2021-02-18 14:34:33 +01:00
}
2021-05-29 09:32:55 +02:00
2023-08-10 16:26:51 +02:00
val branch = rootProject.branchName()
val baseVersion = project.version as String
val isRelease = !baseVersion.contains('-')
2023-08-10 16:26:51 +02:00
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/ViaBackwards) for release notes."
} else {
val commitHash = rootProject.latestCommitHash()
"[$commitHash](https://github.com/ViaVersion/ViaBackwards/commit/$commitHash) ${rootProject.latestCommitMessage()}"
2023-08-10 16:26:51 +02:00
}
modrinth {
// val snapshotVersion = rootProject.parseMinecraftSnapshotVersion(project.version as String)
val mcVersions: List<String> = (property("mcVersions") as String)
2024-05-13 10:24:32 +02:00
.split(",")
.map { it.trim() }
//.let { if (snapshotVersion != null) it + snapshotVersion else it } // We're usually too fast for modrinth
2023-08-10 16:26:51 +02:00
token.set(System.getenv("MODRINTH_TOKEN"))
projectId.set("viabackwards")
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")
autoAddDependsOn.set(false)
detectLoaders.set(false)
dependencies {
required.project("viaversion")
optional.project("viafabric")
optional.project("viarewind")
}
}
hangarPublish {
publications.register("plugin") {
2024-03-22 20:48:31 +01:00
version = suffixedVersion
id = "ViaBackwards"
channel = if (isRelease) "Release" else if (isMainBranch) "Snapshot" else "Alpha"
changelog = changelogContent
apiKey = System.getenv("HANGAR_TOKEN")
platforms {
2024-03-22 20:48:31 +01:00
paper {
jar = tasks.shadowJar.flatMap { it.archiveFile }
platformVersions = listOf(property("mcVersionRange") as String)
dependencies {
hangar("ViaVersion") {
2024-03-22 20:48:31 +01:00
required = true
}
hangar("ViaRewind") {
required = false
}
2023-08-10 16:26:51 +02:00
}
}
2024-03-22 20:48:31 +01:00
velocity {
jar = tasks.shadowJar.flatMap { it.archiveFile }
platformVersions = listOf(property("velocityVersion") as String)
dependencies {
hangar("ViaVersion") {
2024-03-22 20:48:31 +01:00
required = true
}
hangar("ViaRewind") {
required = false
}
2023-08-10 16:26:51 +02:00
}
}
}
}
}
}