Migrate from GradleExt to SharedProps and LomExt
This commit is contained in:
parent
03a9d42d9b
commit
dd973d64cd
|
@ -22,4 +22,8 @@ var Project.changelog: String
|
|||
set(value) = extra.set("changelog", value)
|
||||
|
||||
val TaskContainer.deployDebug: Task get() = findByName("deployDebug") ?: register("deployDebug").get().dependsOn(named<DefaultTask>("build").get())
|
||||
val TaskContainer.deployRelease: Task get() = findByName("deployRelease") ?: register("deployRelease").get().dependsOn(deployDebug)
|
||||
val TaskContainer.deployRelease: Task get() = findByName("deployRelease") ?: register("deployRelease").get().dependsOn(deployDebug)
|
||||
|
||||
fun Project.prop(name: String, default: String? = null): String =
|
||||
if (default == null || hasProperty(name)) property(name).toString()
|
||||
else default
|
|
@ -1,29 +0,0 @@
|
|||
package io.gitlab.jfronny.scripts
|
||||
|
||||
import org.gradle.api.PolymorphicDomainObjectContainer
|
||||
import org.gradle.api.Project
|
||||
import org.gradle.api.artifacts.Dependency
|
||||
import org.gradle.api.artifacts.dsl.DependencyHandler
|
||||
import org.gradle.api.tasks.TaskContainer
|
||||
import org.gradle.api.tasks.bundling.Jar
|
||||
import org.gradle.kotlin.dsl.named
|
||||
import kotlin.reflect.KClass
|
||||
import kotlin.reflect.KProperty
|
||||
|
||||
val TaskContainer.sourcesJar get() = named<Jar>("sourcesJar")
|
||||
|
||||
fun <T : Any, C : PolymorphicDomainObjectContainer<T>, U : T> C.registering(type: KClass<U>, action: U.() -> Unit): PDelegate<T, C, U> = PDelegate(this, type.java, action)
|
||||
|
||||
class PDelegate<T : Any, C : PolymorphicDomainObjectContainer<T>, U : T>(private val container: C, private val type: Class<U>, private val action: U.() -> Unit) {
|
||||
operator fun provideDelegate(thisRef: Any?, property: KProperty<*>): SDelegate<U> = SDelegate(container.register(property.name, type, action).get())
|
||||
}
|
||||
|
||||
class SDelegate<T>(private val delegate: T) {
|
||||
operator fun getValue(thisRef: Any?, property: KProperty<*>): T = delegate
|
||||
}
|
||||
|
||||
fun Project.prop(name: String, default: String? = null): String =
|
||||
if (default == null || hasProperty(name)) property(name).toString()
|
||||
else default
|
||||
|
||||
fun DependencyHandler.devProject(path: String): Dependency = project(mapOf("path" to path, "configuration" to "dev"))
|
|
@ -2,10 +2,12 @@ package io.gitlab.jfronny.scripts
|
|||
|
||||
import net.fabricmc.loom.task.UnpickJarTask
|
||||
import org.gradle.api.DefaultTask
|
||||
import org.gradle.api.artifacts.Dependency
|
||||
import org.gradle.api.artifacts.dsl.DependencyHandler
|
||||
import org.gradle.api.tasks.SourceSet
|
||||
import org.gradle.api.tasks.SourceSetContainer
|
||||
import org.gradle.api.tasks.TaskContainer
|
||||
import org.gradle.api.tasks.bundling.Jar
|
||||
import org.gradle.kotlin.dsl.named
|
||||
|
||||
fun DependencyHandler.testmodImplementation(dependencyNotation: Any) = add("testmodImplementation", dependencyNotation)
|
||||
|
@ -17,4 +19,7 @@ val SourceSetContainer.testmod get() = named<SourceSet>("testmod")
|
|||
val TaskContainer.genClientOnlySources get() = named<DefaultTask>("genClientOnlySources")
|
||||
val TaskContainer.genCommonSources get() = named<DefaultTask>("genCommonSources")
|
||||
val TaskContainer.unpickClientOnlyJar get() = named<UnpickJarTask>("unpickClientOnlyJar")
|
||||
val TaskContainer.unpickCommonJar get() = named<UnpickJarTask>("unpickCommonJar")
|
||||
val TaskContainer.unpickCommonJar get() = named<UnpickJarTask>("unpickCommonJar")
|
||||
val TaskContainer.sourcesJar get() = named<Jar>("sourcesJar")
|
||||
|
||||
fun DependencyHandler.devProject(path: String): Dependency = project(mapOf("path" to path, "configuration" to "dev"))
|
|
@ -1,5 +1,4 @@
|
|||
import io.gitlab.jfronny.scripts.*
|
||||
import io.gitlab.jfronny.scripts.registering
|
||||
import net.fabricmc.loom.task.PrepareJarRemapTask
|
||||
import net.fabricmc.loom.task.RemapJarTask
|
||||
import org.gradle.api.publish.maven.MavenPublication
|
||||
|
@ -149,7 +148,7 @@ val remapMavenJar by tasks.registering(RemapJarTask::class) {
|
|||
archiveFileName.set("${archiveBaseName.get()}-${project.versionS}-maven.jar")
|
||||
addNestedDependencies.set(false)
|
||||
}
|
||||
tasks.assemble.get().dependsOn(remapMavenJar)
|
||||
tasks.assemble.get().dependsOn(remapMavenJar.get())
|
||||
|
||||
// configure remapJar to use the output of shadow
|
||||
tasks.remapJar {
|
||||
|
@ -170,7 +169,7 @@ publishing {
|
|||
publications {
|
||||
create<MavenPublication>("lom") {
|
||||
from(components["java"])
|
||||
setArtifacts(listOf(remapMavenJar, tasks.sourcesJar.get()))
|
||||
setArtifacts(listOf(remapMavenJar.get(), tasks.sourcesJar.get()))
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -191,14 +190,14 @@ if (hasTestmod) {
|
|||
afterEvaluate {
|
||||
// remap configuration for outputting usable testmod jar
|
||||
val remapTestmodJar by tasks.registering(RemapJarTask::class) {
|
||||
dependsOn(testmodJar)
|
||||
inputFile.set(testmodJar.archiveFile.get())
|
||||
dependsOn(testmodJar.get())
|
||||
inputFile.set(testmodJar.get().archiveFile.get())
|
||||
archiveClassifier.set("testmod")
|
||||
// add nested jars from testmodInclude
|
||||
addNestedDependencies.set(true)
|
||||
nestedJars.setFrom(*testmodIncludeConfiguration.files.toTypedArray())
|
||||
}
|
||||
tasks.assemble.get().dependsOn(remapTestmodJar)
|
||||
tasks.assemble.get().dependsOn(remapTestmodJar.get())
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue