mirror of
https://github.com/TibiNonEst/cauldron-dyeing.git
synced 2024-10-22 17:53:26 -05:00
140 lines
3 KiB
Groovy
140 lines
3 KiB
Groovy
plugins {
|
|
alias(libs.plugins.fabric.loom)
|
|
alias(libs.plugins.loom.quiltflower)
|
|
alias(libs.plugins.qmol)
|
|
alias(libs.plugins.grgit)
|
|
alias(libs.plugins.minotaur)
|
|
alias(libs.plugins.cursegradle)
|
|
id "maven-publish"
|
|
}
|
|
|
|
archivesBaseName = project.archives_base_name
|
|
version = "${project.mod_version}+${getMetadata()}"
|
|
group = project.maven_group
|
|
|
|
repositories {
|
|
maven {
|
|
name = "Modrinth"
|
|
url = "https://api.modrinth.com/maven"
|
|
content {
|
|
includeGroup "maven.modrinth"
|
|
}
|
|
}
|
|
}
|
|
|
|
dependencies {
|
|
minecraft libs.minecraft
|
|
mappings loom.layered {
|
|
addLayer quiltMappings.mappings("org.quiltmc:quilt-mappings:${libs.versions.quilt.mappings.get()}:v2")
|
|
}
|
|
modImplementation libs.fabric.loader
|
|
|
|
modImplementation libs.fabric.api
|
|
modCompileOnly libs.sodium
|
|
}
|
|
|
|
loom {
|
|
accessWidenerPath.set file("src/main/resources/cauldron-dyeing.accesswidener")
|
|
}
|
|
|
|
processResources {
|
|
inputs.property "version", project.version
|
|
filteringCharset "UTF-8"
|
|
|
|
filesMatching("fabric.mod.json") {
|
|
expand "version": project.version
|
|
}
|
|
}
|
|
|
|
tasks.withType(JavaCompile) {
|
|
it.options.encoding = "UTF-8"
|
|
// Minecraft 1.18 (1.18-pre2) upwards uses Java 17.
|
|
it.options.release = 17
|
|
}
|
|
|
|
java {
|
|
// Still required by IDEs such as Eclipse and Visual Studio Code
|
|
sourceCompatibility = JavaVersion.VERSION_17
|
|
targetCompatibility = JavaVersion.VERSION_17
|
|
|
|
withSourcesJar()
|
|
}
|
|
|
|
jar {
|
|
from("LICENSE") {
|
|
rename { "${it}_${project.archivesBaseName}"}
|
|
}
|
|
}
|
|
|
|
modrinth {
|
|
projectId = "5AgJnN8I"
|
|
uploadFile = remapJar
|
|
}
|
|
tasks.modrinth.dependsOn remapJar
|
|
|
|
def ENV = System.getenv()
|
|
curseforge {
|
|
if (ENV.CURSEFORGE_TOKEN) {
|
|
apiKey = ENV.CURSEFORGE_TOKEN
|
|
}
|
|
|
|
project {
|
|
id = "564870"
|
|
changelog = "No changelog provided"
|
|
releaseType = "release"
|
|
addGameVersion libs.versions.minecraft.get()
|
|
addGameVersion "Fabric"
|
|
addGameVersion "Quilt"
|
|
|
|
mainArtifact(jar) {
|
|
displayName = "Cauldron Dyeing ${project.mod_version}"
|
|
}
|
|
}
|
|
}
|
|
tasks.curseforge.dependsOn remapJar
|
|
|
|
publishing {
|
|
publications {
|
|
mavenJava(MavenPublication) {
|
|
from components.java
|
|
}
|
|
}
|
|
|
|
repositories {
|
|
maven {
|
|
url = ENV.MAVEN_URL
|
|
credentials {
|
|
username = ENV.MAVEN_USERNAME
|
|
password = ENV.MAVEN_PASSWORD
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
def getMetadata() {
|
|
def build_id = System.getenv("GITHUB_RUN_NUMBER")
|
|
def workflow_id = System.getenv("GITHUB_WORKFLOW")
|
|
|
|
def metadata = ""
|
|
|
|
// Release builds only
|
|
if (workflow_id == "build-release") {
|
|
return metadata
|
|
}
|
|
|
|
if (build_id != null) {
|
|
metadata += "build.${build_id}"
|
|
} else if (grgit != null) {
|
|
def head = grgit.head()
|
|
def id = head.abbreviatedId
|
|
|
|
// Flag the build if the build tree is not clean
|
|
if (!grgit.status().clean) {
|
|
id += "-dirty"
|
|
}
|
|
|
|
metadata += "${id}"
|
|
}
|
|
|
|
return metadata
|
|
}
|