Clean up convention plugins
This commit is contained in:
parent
84b9dadd1d
commit
41e43cdd9d
|
@ -0,0 +1,50 @@
|
|||
import io.gitlab.jfronny.scripts.*
|
||||
|
||||
plugins {
|
||||
base
|
||||
}
|
||||
|
||||
tasks.withType<AbstractArchiveTask>().configureEach {
|
||||
isPreserveFileTimestamps = false
|
||||
isReproducibleFileOrder = true
|
||||
}
|
||||
|
||||
earlyAfterEvaluates = ArrayList()
|
||||
|
||||
afterEvaluate {
|
||||
earlyAfterEvaluates!!.forEach {
|
||||
it.execute(this)
|
||||
}
|
||||
earlyAfterEvaluates = null
|
||||
}
|
||||
|
||||
tasks.register("printTaskGraph") {
|
||||
doLast {
|
||||
fun getTask(task: Any): Either<Task, String> {
|
||||
return when (task) {
|
||||
is Provider<*> -> getTask(task.get())
|
||||
is String -> Either.Left(tasks.getByPath(task))
|
||||
is Task -> Either.Left(task)
|
||||
else -> Either.Right("$task")
|
||||
}
|
||||
}
|
||||
|
||||
fun printTaskGraph(task: Task, indent: Int, known: MutableSet<Task>) {
|
||||
if (known.contains(task)) {
|
||||
println(" ".repeat(indent) + "- ${task.name} (*)")
|
||||
return
|
||||
}
|
||||
known.add(task)
|
||||
println(" ".repeat(indent) + "- ${task.name}")
|
||||
task.dependsOn.forEach {
|
||||
getTask(it).apply({ dependency ->
|
||||
printTaskGraph(dependency, indent + 1, known)
|
||||
}, { error ->
|
||||
println(" ".repeat(indent + 1) + "- UNEXPECTED!: $error")
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
printTaskGraph(tasks.getByPath(prop("taskGraph", "build")), 0, LinkedHashSet())
|
||||
}
|
||||
}
|
|
@ -1,31 +1,4 @@
|
|||
import io.gitlab.jfronny.scripts.*
|
||||
|
||||
plugins {
|
||||
java
|
||||
id("jf.java")
|
||||
}
|
||||
|
||||
extra["codeGenerators"] = LinkedHashMap<String, ContentGenerator.Generated>()
|
||||
|
||||
val jfCodegen by tasks.registering {
|
||||
doLast {
|
||||
val generators = project.extra["codeGenerators"] as LinkedHashMap<String, ContentGenerator.Generated>
|
||||
if (codegenDir.exists()) codegenDir.deleteRecursively()
|
||||
generators.forEach { (name, generated) ->
|
||||
generated.classes.forEach { (filePath, content) ->
|
||||
val path = codegenDir.resolve("java").resolve(name).resolve(filePath)
|
||||
path.parentFile.mkdirs()
|
||||
path.writeText(content)
|
||||
}
|
||||
generated.resources.forEach { (filePath, content) ->
|
||||
val path = codegenDir.resolve("resources").resolve(name).resolve(filePath)
|
||||
path.parentFile.mkdirs()
|
||||
path.writeBytes(content)
|
||||
}
|
||||
}
|
||||
project.extra["codeGenerators"] = null
|
||||
}
|
||||
}
|
||||
|
||||
tasks.compileJava { dependsOn(jfCodegen) }
|
||||
|
||||
tasks.processResources { dependsOn(jfCodegen) }
|
||||
//TODO remove this deprecated plugin in the next release
|
|
@ -1,10 +1,4 @@
|
|||
import io.gitlab.jfronny.scripts.*
|
||||
|
||||
earlyAfterEvaluates = ArrayList()
|
||||
|
||||
afterEvaluate {
|
||||
earlyAfterEvaluates!!.forEach {
|
||||
it.execute(this)
|
||||
}
|
||||
earlyAfterEvaluates = null
|
||||
}
|
||||
plugins {
|
||||
id("jf.base")
|
||||
}
|
||||
//TODO remove this deprecated plugin in the next release
|
|
@ -0,0 +1,33 @@
|
|||
import io.gitlab.jfronny.scripts.ContentGenerator
|
||||
import io.gitlab.jfronny.scripts.codegenDir
|
||||
|
||||
plugins {
|
||||
id("jf.base")
|
||||
`java-library`
|
||||
}
|
||||
|
||||
extra["codeGenerators"] = LinkedHashMap<String, ContentGenerator.Generated>()
|
||||
|
||||
val jfCodegen by tasks.registering {
|
||||
doLast {
|
||||
val generators = project.extra["codeGenerators"] as LinkedHashMap<String, ContentGenerator.Generated>
|
||||
if (codegenDir.exists()) codegenDir.deleteRecursively()
|
||||
generators.forEach { (name, generated) ->
|
||||
generated.classes.forEach { (filePath, content) ->
|
||||
val path = codegenDir.resolve("java").resolve(name).resolve(filePath)
|
||||
path.parentFile.mkdirs()
|
||||
path.writeText(content)
|
||||
}
|
||||
generated.resources.forEach { (filePath, content) ->
|
||||
val path = codegenDir.resolve("resources").resolve(name).resolve(filePath)
|
||||
path.parentFile.mkdirs()
|
||||
path.writeBytes(content)
|
||||
}
|
||||
}
|
||||
project.extra["codeGenerators"] = null
|
||||
}
|
||||
}
|
||||
|
||||
tasks.compileJava { dependsOn(jfCodegen) }
|
||||
|
||||
tasks.processResources { dependsOn(jfCodegen) }
|
|
@ -2,7 +2,7 @@ import io.gitlab.jfronny.scripts.earlyAfterEvaluate
|
|||
|
||||
plugins {
|
||||
id("jf.earlyafterevaluate")
|
||||
`java-library`
|
||||
id("jf.java")
|
||||
}
|
||||
|
||||
val manifoldVersion by extra("2023.1.10")
|
||||
|
|
|
@ -1,36 +1,4 @@
|
|||
import io.gitlab.jfronny.scripts.*
|
||||
|
||||
plugins {
|
||||
base
|
||||
}
|
||||
|
||||
tasks.register("printTaskGraph") {
|
||||
doLast {
|
||||
fun getTask(task: Any): Either<Task, String> {
|
||||
return when (task) {
|
||||
is Provider<*> -> getTask(task.get())
|
||||
is String -> Either.Left(tasks.getByPath(task))
|
||||
is Task -> Either.Left(task)
|
||||
else -> Either.Right("$task")
|
||||
}
|
||||
}
|
||||
|
||||
fun printTaskGraph(task: Task, indent: Int, known: MutableSet<Task>) {
|
||||
if (known.contains(task)) {
|
||||
println(" ".repeat(indent) + "- ${task.name} (*)")
|
||||
return
|
||||
}
|
||||
known.add(task)
|
||||
println(" ".repeat(indent) + "- ${task.name}")
|
||||
task.dependsOn.forEach {
|
||||
getTask(it).apply({ dependency ->
|
||||
printTaskGraph(dependency, indent + 1, known)
|
||||
}, { error ->
|
||||
println(" ".repeat(indent + 1) + "- UNEXPECTED!: $error")
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
printTaskGraph(tasks.getByPath(prop("taskGraph", "build")), 0, LinkedHashSet())
|
||||
}
|
||||
id("jf.base")
|
||||
}
|
||||
//TODO remove this deprecated plugin in the next release
|
|
@ -75,7 +75,7 @@ afterEvaluate {
|
|||
}
|
||||
|
||||
if (!isRoot) rootProject.dependencies {
|
||||
api(project(mapOf("path" to project.path, "configuration" to "shadow")))
|
||||
api(project(path = project.path, configuration = "shadow"))
|
||||
clientImplementation(sourceSets.client.get().output)
|
||||
testmodImplementation(sourceSets.testmod.get().output)
|
||||
|
||||
|
|
Loading…
Reference in New Issue