diff --git a/build-logic/src/main/kotlin/extensions.kt b/build-logic/src/main/kotlin/extensions.kt index fecd6ed9..c0e2af63 100644 --- a/build-logic/src/main/kotlin/extensions.kt +++ b/build-logic/src/main/kotlin/extensions.kt @@ -50,7 +50,7 @@ fun Project.latestCommitMessage(): String { fun Project.branchName(): String { val byteOut = ByteArrayOutputStream() exec { - commandLine = listOf("git", "branch") + commandLine = listOf("git", "symbolic-ref", "--short", "HEAD") standardOutput = byteOut } return byteOut.toString(Charsets.UTF_8.name()).trim() diff --git a/universal/build.gradle.kts b/universal/build.gradle.kts index 9c13163a..04ef5920 100644 --- a/universal/build.gradle.kts +++ b/universal/build.gradle.kts @@ -46,76 +46,78 @@ publishShadowJar() val branch = rootProject.branchName() val baseVersion = project.version as String 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" -modrinth { - // val snapshotVersion = rootProject.parseMinecraftSnapshotVersion(project.version as String) - val mcVersions: List = (property("mcVersions") as String) - .split(",") - .map { it.trim() } - //.let { if (snapshotVersion != null) it + snapshotVersion else it } // We're usually too fast for modrinth - - 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") +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()}" } -} + modrinth { + // val snapshotVersion = rootProject.parseMinecraftSnapshotVersion(project.version as String) + val mcVersions: List = (property("mcVersions") as String) + .split(",") + .map { it.trim() } + //.let { if (snapshotVersion != null) it + snapshotVersion else it } // We're usually too fast for modrinth -hangarPublish { - publications.register("plugin") { - version.set(suffixedVersion) - id.set("ViaBackwards") - channel.set(if (isRelease) "Release" else if (isMainBranch) "Snapshot" else "Alpha") + 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) - 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) + 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") + } + } + + 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) { - jar.set(tasks.shadowJar.flatMap { it.archiveFile }) - platformVersions.set(listOf(property("velocityVersion") as String)) - dependencies { - hangar("ViaVersion") { - required.set(true) + register(Platforms.VELOCITY) { + jar.set(tasks.shadowJar.flatMap { it.archiveFile }) + platformVersions.set(listOf(property("velocityVersion") as String)) + dependencies { + hangar("ViaVersion") { + required.set(true) + } } } - } - register(Platforms.WATERFALL) { - jar.set(tasks.shadowJar.flatMap { it.archiveFile }) - platformVersions.set(listOf(property("waterfallVersion") as String)) - dependencies { - hangar("ViaVersion") { - required.set(true) + register(Platforms.WATERFALL) { + jar.set(tasks.shadowJar.flatMap { it.archiveFile }) + platformVersions.set(listOf(property("waterfallVersion") as String)) + dependencies { + hangar("ViaVersion") { + required.set(true) + } } } }