version bumnp, more gradle tidying, and fix the kotlin-js-store yarn lock file location
This commit is contained in:
parent
96412bf7c9
commit
8040149e25
18 changed files with 558 additions and 3827 deletions
|
|
@ -3,6 +3,7 @@ package dev.adamko.kafkatorio
|
|||
import kotlinx.serialization.json.Json
|
||||
import org.gradle.api.Project
|
||||
import org.gradle.kotlin.dsl.configure
|
||||
import org.gradle.kotlin.dsl.extra
|
||||
import org.jetbrains.kotlin.gradle.targets.js.yarn.YarnRootExtension
|
||||
|
||||
val jsonMapper = Json {
|
||||
|
|
@ -11,15 +12,38 @@ val jsonMapper = Json {
|
|||
}
|
||||
|
||||
|
||||
object Versions {
|
||||
const val kotlinLang = "1.6"
|
||||
const val jvmTarget = "11"
|
||||
|
||||
const val node = "14.19.0"
|
||||
|
||||
const val kotlinWrappers = "0.0.1-pre.294-kotlin-1.6.10"
|
||||
const val junit = "5.8.2"
|
||||
const val kotest = "5.1.0"
|
||||
const val mockk = "1.12.1"
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* `kotlin-js` adds a directory in the root-dir for the Yarn lock.
|
||||
* That's a bit annoying. It's a little neater if it's in the
|
||||
* gradle dir, next to the version-catalog.
|
||||
*/
|
||||
fun Project.relocateKotlinJsStore() {
|
||||
|
||||
afterEvaluate {
|
||||
rootProject.extensions.configure<YarnRootExtension> {
|
||||
lockFileDirectory = rootProject.rootDir.resolve("gradle/kotlin-js-store")
|
||||
lockFileDirectory = project.rootDir.resolve("gradle/kotlin-js-store")
|
||||
}
|
||||
}
|
||||
|
||||
// rootProject.plugins.withType(YarnPlugin::class) {
|
||||
// rootProject.the<YarnRootExtension>().lockFileDirectory =
|
||||
// project.rootDir.resolve("gradle/kotlin-js-store")
|
||||
// }
|
||||
|
||||
// KVision tries to be clever too - see io.kvision.gradle.KVisionGradleSubplugin
|
||||
rootProject.extra.set("io.kvision.plugin.enableHiddenKotlinJsStore", "false")
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -11,8 +11,10 @@ import org.gradle.api.provider.MapProperty
|
|||
import org.gradle.api.specs.Spec
|
||||
import org.gradle.kotlin.dsl.invoke
|
||||
|
||||
|
||||
operator fun <T> Spec<T>.not(): Spec<T> = Spec<T> { !this(it) }
|
||||
|
||||
|
||||
fun Project.isProcessRunning(process: String, ignoreCase: Boolean = true): Spec<Task> =
|
||||
Spec<Task> {
|
||||
ByteArrayOutputStream().use { outputStream ->
|
||||
|
|
@ -25,6 +27,7 @@ fun Project.isProcessRunning(process: String, ignoreCase: Boolean = true): Spec<
|
|||
}
|
||||
}
|
||||
|
||||
|
||||
fun Project.areJsonPropertiesUpToDate(
|
||||
packageJsonFile: RegularFileProperty,
|
||||
properties: MapProperty<String, String>
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
package dev.adamko.kafkatorio.lang
|
||||
|
||||
import Versions
|
||||
import dev.adamko.kafkatorio.Versions
|
||||
import dev.adamko.kafkatorio.relocateKotlinJsStore
|
||||
import org.jetbrains.kotlin.gradle.targets.js.npm.NpmProject
|
||||
import org.jetbrains.kotlin.gradle.targets.js.npm.tasks.RootPackageJsonTask
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
package dev.adamko.kafkatorio.lang
|
||||
|
||||
import dev.adamko.kafkatorio.Versions
|
||||
import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
|
||||
|
||||
plugins {
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@ import dev.adamko.kafkatorio.relocateKotlinJsStore
|
|||
|
||||
plugins {
|
||||
id("dev.adamko.kafkatorio.base")
|
||||
id("dev.adamko.kafkatorio.lang.node")
|
||||
// id("dev.adamko.kafkatorio.lang.node")
|
||||
kotlin("multiplatform")
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -1,8 +1,8 @@
|
|||
package dev.adamko.kafkatorio.lang
|
||||
|
||||
import Versions
|
||||
import com.github.gradle.node.NodePlugin
|
||||
import com.github.gradle.node.npm.task.NpmInstallTask
|
||||
import dev.adamko.kafkatorio.Versions
|
||||
import dev.adamko.kafkatorio.gradle.areJsonPropertiesUpToDate
|
||||
import dev.adamko.kafkatorio.gradle.not
|
||||
import dev.adamko.kafkatorio.jsonMapper
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue