[ci skip] Fix branch check in publishing

This commit is contained in:
Nassim Jahnke 2023-09-26 00:24:36 +10:00
parent c6711919b1
commit 1d35b1cdb2
2 changed files with 65 additions and 63 deletions

View File

@ -50,7 +50,7 @@ fun Project.latestCommitMessage(): String {
fun Project.branchName(): String { fun Project.branchName(): String {
val byteOut = ByteArrayOutputStream() val byteOut = ByteArrayOutputStream()
exec { exec {
commandLine = listOf("git", "branch") commandLine = listOf("git", "symbolic-ref", "--short", "HEAD")
standardOutput = byteOut standardOutput = byteOut
} }
return byteOut.toString(Charsets.UTF_8.name()).trim() return byteOut.toString(Charsets.UTF_8.name()).trim()

View File

@ -46,76 +46,78 @@ publishShadowJar()
val branch = rootProject.branchName() val branch = rootProject.branchName()
val baseVersion = project.version as String val baseVersion = project.version as String
val isRelease = !baseVersion.contains('-') val isRelease = !baseVersion.contains('-')
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()}"
}
val isMainBranch = branch == "master" val isMainBranch = branch == "master"
modrinth { if (!isRelease || isMainBranch) { // Only publish releases from the main branch
// val snapshotVersion = rootProject.parseMinecraftSnapshotVersion(project.version as String) val suffixedVersion = if (isRelease) baseVersion else baseVersion + "+" + System.getenv("GITHUB_RUN_NUMBER")
val mcVersions: List<String> = (property("mcVersions") as String) val changelogContent = if (isRelease) {
.split(",") "See [GitHub](https://github.com/ViaVersion/ViaBackwards) for release notes."
.map { it.trim() } } else {
//.let { if (snapshotVersion != null) it + snapshotVersion else it } // We're usually too fast for modrinth val commitHash = rootProject.latestCommitHash()
"[$commitHash](https://github.com/ViaVersion/ViaBackwards/commit/$commitHash) ${rootProject.latestCommitMessage()}"
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")
loaders.add("bungeecord")
loaders.add("sponge")
autoAddDependsOn.set(false)
detectLoaders.set(false)
dependencies {
optional.project("viaversion")
optional.project("viafabric")
optional.project("viafabricplus")
} }
} modrinth {
// val snapshotVersion = rootProject.parseMinecraftSnapshotVersion(project.version as String)
val mcVersions: List<String> = (property("mcVersions") as String)
.split(",")
.map { it.trim() }
//.let { if (snapshotVersion != null) it + snapshotVersion else it } // We're usually too fast for modrinth
hangarPublish { token.set(System.getenv("MODRINTH_TOKEN"))
publications.register("plugin") { projectId.set("viabackwards")
version.set(suffixedVersion) versionType.set(if (isRelease) "release" else if (isMainBranch) "beta" else "alpha")
id.set("ViaBackwards") versionNumber.set(suffixedVersion)
channel.set(if (isRelease) "Release" else if (isMainBranch) "Snapshot" else "Alpha") versionName.set(suffixedVersion)
changelog.set(changelogContent) changelog.set(changelogContent)
apiKey.set(System.getenv("HANGAR_TOKEN")) uploadFile.set(tasks.shadowJar.flatMap { it.archiveFile })
platforms { gameVersions.set(mcVersions)
register(Platforms.PAPER) { loaders.add("fabric")
jar.set(tasks.shadowJar.flatMap { it.archiveFile }) loaders.add("paper")
platformVersions.set(listOf(property("mcVersionRange") as String)) loaders.add("folia")
dependencies { loaders.add("velocity")
hangar("ViaVersion") { loaders.add("bungeecord")
required.set(true) loaders.add("sponge")
autoAddDependsOn.set(false)
detectLoaders.set(false)
dependencies {
optional.project("viaversion")
optional.project("viafabric")
optional.project("viafabricplus")
}
}
hangarPublish {
publications.register("plugin") {
version.set(suffixedVersion)
id.set("ViaBackwards")
channel.set(if (isRelease) "Release" else if (isMainBranch) "Snapshot" else "Alpha")
changelog.set(changelogContent)
apiKey.set(System.getenv("HANGAR_TOKEN"))
platforms {
register(Platforms.PAPER) {
jar.set(tasks.shadowJar.flatMap { it.archiveFile })
platformVersions.set(listOf(property("mcVersionRange") as String))
dependencies {
hangar("ViaVersion") {
required.set(true)
}
} }
} }
} register(Platforms.VELOCITY) {
register(Platforms.VELOCITY) { jar.set(tasks.shadowJar.flatMap { it.archiveFile })
jar.set(tasks.shadowJar.flatMap { it.archiveFile }) platformVersions.set(listOf(property("velocityVersion") as String))
platformVersions.set(listOf(property("velocityVersion") as String)) dependencies {
dependencies { hangar("ViaVersion") {
hangar("ViaVersion") { required.set(true)
required.set(true) }
} }
} }
} register(Platforms.WATERFALL) {
register(Platforms.WATERFALL) { jar.set(tasks.shadowJar.flatMap { it.archiveFile })
jar.set(tasks.shadowJar.flatMap { it.archiveFile }) platformVersions.set(listOf(property("waterfallVersion") as String))
platformVersions.set(listOf(property("waterfallVersion") as String)) dependencies {
dependencies { hangar("ViaVersion") {
hangar("ViaVersion") { required.set(true)
required.set(true) }
} }
} }
} }