2024-04-05 15:24:10 +02:00
|
|
|
import io.gitlab.jfronny.scripts.deployDebug
|
2024-04-25 09:15:13 +02:00
|
|
|
import io.gitlab.jfronny.scripts.deployRelease
|
2024-04-05 15:24:10 +02:00
|
|
|
|
2024-03-08 18:13:37 +01:00
|
|
|
plugins {
|
|
|
|
`version-catalog`
|
|
|
|
id("jf.maven-publish")
|
|
|
|
}
|
|
|
|
|
|
|
|
publishing {
|
|
|
|
publications {
|
|
|
|
register("mavenJava", MavenPublication::class) {
|
|
|
|
from(components["versionCatalog"])
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
2024-04-05 15:24:10 +02:00
|
|
|
tasks.publish { dependsOn(tasks.build) }
|
|
|
|
tasks.deployDebug.dependsOn(tasks.publish)
|
2024-04-25 09:15:13 +02:00
|
|
|
tasks.deployRelease.dependsOn(tasks.deployDebug)
|
2024-03-08 18:13:37 +01:00
|
|
|
|
|
|
|
tasks.withType(GenerateModuleMetadata::class) {
|
|
|
|
enabled = true
|
|
|
|
}
|
|
|
|
|
|
|
|
tasks.register("configureCatalog") {
|
|
|
|
doFirst {
|
|
|
|
doConfigureCatalog()
|
|
|
|
}
|
|
|
|
}
|
|
|
|
tasks.named("generateCatalogAsToml") {
|
|
|
|
dependsOn("configureCatalog")
|
|
|
|
}
|
|
|
|
|
|
|
|
fun doConfigureCatalog() {
|
|
|
|
for (proj in rootProject.allprojects) {
|
|
|
|
if (proj == project) {
|
|
|
|
continue
|
|
|
|
}
|
|
|
|
|
|
|
|
var catalogName = proj.name
|
|
|
|
catalogName = when (catalogName) {
|
|
|
|
"libjf-base" -> "base"
|
|
|
|
"libjf-bom" -> "bom"
|
|
|
|
"libjf" -> "libjf"
|
|
|
|
else -> catalogName.substring("libjf-".length)
|
|
|
|
}
|
|
|
|
|
|
|
|
catalog {
|
|
|
|
versionCatalog {
|
|
|
|
library(catalogName, "$group:${proj.name}:${proj.version}")
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|