Skip to content

Commit

Permalink
Try publishing to CurseForge using the mod-publish-plugin
Browse files Browse the repository at this point in the history
  • Loading branch information
mezz committed Sep 6, 2024
1 parent 067ff1c commit af7722b
Show file tree
Hide file tree
Showing 5 changed files with 47 additions and 74 deletions.
8 changes: 4 additions & 4 deletions .jenkins/Jenkinsfile
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ pipeline {
}

environment {
ORG_GRADLE_PROJECT_curseforge_apikey = credentials("jei-curseforge-key")
ORG_GRADLE_PROJECT_curseforgeApikey = credentials("jei-curseforge-key")
ORG_GRADLE_PROJECT_modrinthToken = credentials("modrinth-auth-token")
ORG_GRADLE_PROJECT_BUILD_NUMBER = "${env.BUILD_NUMBER}"
}
Expand Down Expand Up @@ -50,9 +50,9 @@ pipeline {

stage('Publish CurseForge') {
steps {
sh "./gradlew :Fabric:publishCurseForge"
sh "./gradlew :Forge:publishCurseForge"
sh "./gradlew :NeoForge:publishCurseForge"
sh "./gradlew :Fabric:publishCurseforge"
sh "./gradlew :Forge:publishCurseforge"
sh "./gradlew :NeoForge:publishCurseforge"
}
}

Expand Down
36 changes: 14 additions & 22 deletions Fabric/build.gradle.kts
Original file line number Diff line number Diff line change
@@ -1,15 +1,12 @@
import me.modmuss50.mpp.PublishModTask
import net.darkhax.curseforgegradle.TaskPublishCurseForge
import org.gradle.api.tasks.testing.logging.TestExceptionFormat
import org.gradle.api.tasks.testing.logging.TestLogEvent
import net.darkhax.curseforgegradle.Constants as CFG_Constants

plugins {
java
idea
`maven-publish`
id("fabric-loom")
id("net.darkhax.curseforgegradle")
id("me.modmuss50.mod-publish-plugin")
}

Expand Down Expand Up @@ -40,6 +37,8 @@ val modrinthId: String by extra

// set by ORG_GRADLE_PROJECT_modrinthToken in Jenkinsfile
val modrinthToken: String? by project
// set by ORG_GRADLE_PROJECT_curseforgeApikey in Jenkinsfile
val curseforgeApikey: String? by project

val baseArchivesName = "${modId}-${minecraftVersion}-fabric"
base {
Expand Down Expand Up @@ -198,24 +197,6 @@ tasks.named<Jar>("sourcesJar") {
archiveClassifier.set("sources")
}

tasks.register<TaskPublishCurseForge>("publishCurseForge") {
dependsOn(tasks.remapJar)
dependsOn(":Changelog:makeChangelog")

disableVersionDetection()

apiToken = project.findProperty("curseforge_apikey") ?: "0"

val mainFile = upload(curseProjectId, tasks.remapJar.get().archiveFile)
mainFile.changelogType = CFG_Constants.CHANGELOG_HTML
mainFile.changelog = file("../Changelog/changelog.html")
mainFile.releaseType = CFG_Constants.RELEASE_TYPE_BETA
mainFile.addJavaVersion("Java $modJavaVersion")
mainFile.addGameVersion(minecraftVersion)
mainFile.addGameVersion(minecraftVersionRangeStart)
mainFile.addModLoader("Fabric")
}

publishMods {
file.set(tasks.remapJar.get().archiveFile)
changelog.set(provider { file("../Changelog/changelog.md").readText() })
Expand All @@ -224,6 +205,17 @@ publishMods {
displayName.set("${project.version} for Fabric $minecraftVersion")
version.set(project.version.toString())

curseforge {
projectId = curseProjectId
accessToken.set(curseforgeApikey ?: "0")
changelog.set(provider { file("../Changelog/changelog.html").readText() })
minecraftVersionRange {
start = minecraftVersionRangeStart
end = minecraftVersion
}
javaVersions.add(JavaVersion.toVersion(modJavaVersion))
}

modrinth {
projectId = modrinthId
accessToken = modrinthToken
Expand All @@ -234,7 +226,7 @@ publishMods {
}
}
tasks.withType<PublishModTask> {
dependsOn(tasks.jar, ":Changelog:makeMarkdownChangelog")
dependsOn(tasks.jar, ":Changelog:makeChangelog", ":Changelog:makeMarkdownChangelog")
}

tasks.named<Test>("test") {
Expand Down
36 changes: 14 additions & 22 deletions Forge/build.gradle.kts
Original file line number Diff line number Diff line change
@@ -1,10 +1,8 @@
import me.modmuss50.mpp.PublishModTask
import net.darkhax.curseforgegradle.TaskPublishCurseForge
import net.minecraftforge.gradle.common.tasks.DownloadMavenArtifact
import net.minecraftforge.gradle.common.tasks.JarExec
import org.gradle.api.tasks.testing.logging.TestExceptionFormat
import org.gradle.api.tasks.testing.logging.TestLogEvent
import net.darkhax.curseforgegradle.Constants as CFG_Constants

plugins {
id("java")
Expand All @@ -13,7 +11,6 @@ plugins {
id("maven-publish")
id("net.minecraftforge.gradle")
id("org.parchmentmc.librarian.forgegradle")
id("net.darkhax.curseforgegradle")
id("me.modmuss50.mod-publish-plugin")
}

Expand All @@ -32,6 +29,8 @@ val modrinthId: String by extra

// set by ORG_GRADLE_PROJECT_modrinthToken in Jenkinsfile
val modrinthToken: String? by project
// set by ORG_GRADLE_PROJECT_curseforgeApikey in Jenkinsfile
val curseforgeApikey: String? by project

val baseArchivesName = "${modId}-${minecraftVersion}-forge"
base {
Expand Down Expand Up @@ -174,24 +173,6 @@ val sourcesJarTask = tasks.named<Jar>("sourcesJar") {
archiveClassifier.set("sources")
}

tasks.register<TaskPublishCurseForge>("publishCurseForge") {
dependsOn(tasks.jar)
dependsOn(":Changelog:makeChangelog")

disableVersionDetection()

apiToken = project.findProperty("curseforge_apikey") ?: "0"

val mainFile = upload(curseProjectId, tasks.jar.get().archiveFile)
mainFile.changelogType = CFG_Constants.CHANGELOG_HTML
mainFile.changelog = file("../Changelog/changelog.html")
mainFile.releaseType = CFG_Constants.RELEASE_TYPE_BETA
mainFile.addJavaVersion("Java $modJavaVersion")
mainFile.addGameVersion(minecraftVersion)
mainFile.addGameVersion(minecraftVersionRangeStart)
mainFile.addModLoader("Forge")
}

publishMods {
file.set(tasks.jar.get().archiveFile)
changelog.set(provider { file("../Changelog/changelog.md").readText() })
Expand All @@ -200,6 +181,17 @@ publishMods {
displayName.set("${project.version} for Forge $minecraftVersion")
version.set(project.version.toString())

curseforge {
projectId = curseProjectId
accessToken.set(curseforgeApikey ?: "0")
changelog.set(provider { file("../Changelog/changelog.html").readText() })
minecraftVersionRange {
start = minecraftVersionRangeStart
end = minecraftVersion
}
javaVersions.add(JavaVersion.toVersion(modJavaVersion))
}

modrinth {
projectId = modrinthId
accessToken = modrinthToken
Expand All @@ -210,7 +202,7 @@ publishMods {
}
}
tasks.withType<PublishModTask> {
dependsOn(tasks.jar, ":Changelog:makeMarkdownChangelog")
dependsOn(tasks.jar, ":Changelog:makeChangelog", ":Changelog:makeMarkdownChangelog")
}

tasks.named<Test>("test") {
Expand Down
38 changes: 15 additions & 23 deletions NeoForge/build.gradle.kts
Original file line number Diff line number Diff line change
@@ -1,15 +1,12 @@
import me.modmuss50.mpp.PublishModTask
import net.darkhax.curseforgegradle.TaskPublishCurseForge
import org.gradle.api.tasks.testing.logging.TestExceptionFormat
import org.gradle.api.tasks.testing.logging.TestLogEvent
import net.darkhax.curseforgegradle.Constants as CFG_Constants

plugins {
id("java")
id("idea")
id("eclipse")
id("maven-publish")
id("net.darkhax.curseforgegradle")
id("me.modmuss50.mod-publish-plugin")
id("net.neoforged.moddev")
}
Expand All @@ -28,6 +25,8 @@ val modrinthId: String by extra

// set by ORG_GRADLE_PROJECT_modrinthToken in Jenkinsfile
val modrinthToken: String? by project
// set by ORG_GRADLE_PROJECT_curseforgeApikey in Jenkinsfile
val curseforgeApikey: String? by project

val baseArchivesName = "${modId}-${minecraftVersion}-neoforge"
base {
Expand Down Expand Up @@ -151,43 +150,36 @@ val sourcesJarTask = tasks.named<Jar>("sourcesJar") {
archiveClassifier.set("sources")
}

tasks.register<TaskPublishCurseForge>("publishCurseForge") {
dependsOn(tasks.jar)
dependsOn(":Changelog:makeChangelog")

disableVersionDetection()

apiToken = project.findProperty("curseforge_apikey") ?: "0"

val mainFile = upload(curseProjectId, tasks.jar.get().archiveFile)
mainFile.changelogType = CFG_Constants.CHANGELOG_HTML
mainFile.changelog = file("../Changelog/changelog.html")
mainFile.releaseType = CFG_Constants.RELEASE_TYPE_BETA
mainFile.addJavaVersion("Java $modJavaVersion")
mainFile.addGameVersion(minecraftVersion)
mainFile.addGameVersion(minecraftVersionRangeStart)
mainFile.addModLoader("NeoForge")
}

publishMods {
file.set(tasks.jar.get().archiveFile)
changelog.set(provider { file("../Changelog/changelog.md").readText() })
type = BETA
modLoaders.add("neoforge")
displayName.set("${project.version} for NeoForge $minecraftVersion")
version.set(project.version.toString())

curseforge {
projectId = curseProjectId
accessToken.set(curseforgeApikey ?: "0")
changelog.set(provider { file("../Changelog/changelog.html").readText() })
minecraftVersionRange {
start = minecraftVersionRangeStart
end = minecraftVersion
}
javaVersions.add(JavaVersion.toVersion(modJavaVersion))
}

modrinth {
projectId = modrinthId
accessToken = modrinthToken
changelog.set(provider { file("../Changelog/changelog.md").readText() })
minecraftVersionRange {
start = minecraftVersionRangeStart
end = minecraftVersion
}
}
}
tasks.withType<PublishModTask> {
dependsOn(tasks.jar, ":Changelog:makeMarkdownChangelog")
dependsOn(tasks.jar, ":Changelog:makeChangelog", ":Changelog:makeMarkdownChangelog")
}

tasks.named<Test>("test") {
Expand Down
3 changes: 0 additions & 3 deletions build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -11,9 +11,6 @@ plugins {
// https://projects.neoforged.net/neoforged/moddevgradle
id("net.neoforged.moddev") version("2.0.26-beta") apply(false)

// https://plugins.gradle.org/plugin/net.darkhax.curseforgegradle
id("net.darkhax.curseforgegradle") version("1.1.25") apply(false)

// https://plugins.gradle.org/plugin/me.modmuss50.mod-publish-plugin
id("me.modmuss50.mod-publish-plugin") version("0.7.2") apply(false)

Expand Down

0 comments on commit af7722b

Please sign in to comment.