- more tidying up

- setting up distribution plugin
- using more variables for mod config
This commit is contained in:
Adam 2021-12-02 00:54:15 +01:00
parent afbfeda616
commit 7091f7648d
34 changed files with 293 additions and 169 deletions

View file

@ -13,7 +13,7 @@ dependencies {
implementation(enforcedPlatform("org.jetbrains.kotlin:kotlin-bom:$kotlinVersion"))
implementation("org.jetbrains.kotlin:kotlin-serialization")
implementation("org.jetbrains.kotlin:kotlin-reflect")
implementation("org.jetbrains.kotlin:kotlin-gradle-plugin")
implementation("org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlinVersion")
val kotlinXSerializationVersion = "1.3.1"
implementation(enforcedPlatform("org.jetbrains.kotlinx:kotlinx-serialization-bom:$kotlinXSerializationVersion"))
@ -35,7 +35,6 @@ tasks.withType<KotlinCompile>().configureEach {
}
kotlinOptions.freeCompilerArgs += listOf(
"-Xopt-in=kotlin.OptIn",
"-Xopt-in=kotlin.RequiresOptIn",
"-Xopt-in=kotlin.ExperimentalStdlibApi",
"-Xopt-in=kotlin.time.ExperimentalTime",

View file

@ -1,9 +1,5 @@
package dev.adamko.kafkatorio
import org.gradle.kotlin.dsl.base
import org.gradle.kotlin.dsl.extra
import org.gradle.kotlin.dsl.idea
plugins {
idea
base
@ -14,8 +10,8 @@ version = rootProject.version
val licenseFile: RegularFile by extra(rootProject.layout.projectDirectory.file("LICENSE"))
val tokens: Map<String, String> by extra(
mapOf(
val tokens: MutableMap<String, String> by extra(
mutableMapOf(
"project.version" to "$version",
)
)
@ -27,6 +23,7 @@ idea {
}
}
//group = "dev.adamko.factoriowebmap"
//version = "0.0.1"
tasks.withType<WriteProperties>().configureEach {
encoding = Charsets.UTF_8.name()
comment = " Do not edit manually. This file was created with task '$name'"
}

View file

@ -0,0 +1,41 @@
package dev.adamko.kafkatorio.infra
import org.jetbrains.kotlin.util.parseSpaceSeparatedArgs
plugins {
id("dev.adamko.kafkatorio.infra.process-runner")
}
val dockerComposeTaskGroup : String by extra("docker-compose")
val composeProjectName: String by extra(rootProject.name)
val srcDir: Directory by extra(layout.projectDirectory.dir("src"))
val dockerUp by tasks.creating(Exec::class) {
group = dockerComposeTaskGroup
workingDir = srcDir.asFile
commandLine = parseSpaceSeparatedArgs(""" docker-compose up -d """)
}
val dockerDown by tasks.creating(Exec::class) {
group = dockerComposeTaskGroup
workingDir = srcDir.asFile
commandLine = parseSpaceSeparatedArgs(""" docker-compose down """)
}
afterEvaluate {
tasks.named("processRun") { dependsOn(dockerUp, updateEnv) }
tasks.named("processKill") { dependsOn(dockerDown) }
}
val updateEnv by tasks.registering(WriteProperties::class) {
group = dockerComposeTaskGroup
setOutputFile(srcDir.file(".env"))
properties(
"COMPOSE_PROJECT_NAME" to composeProjectName,
)
}
tasks.assemble { dependsOn(updateEnv) }

View file

@ -1,7 +1,4 @@
package dev.adamko.kafkatorio
import org.gradle.kotlin.dsl.extra
import org.gradle.kotlin.dsl.registering
package dev.adamko.kafkatorio.infra
plugins {
id("dev.adamko.kafkatorio.base")
@ -9,18 +6,17 @@ plugins {
val processRunnerTaskGroup: String by extra("processes")
val processRun by tasks.registering {
val processRun by tasks.registering(Task::class) {
group = processRunnerTaskGroup
}
val processKill by tasks.registering {
val processKill by tasks.registering(Task::class) {
group = processRunnerTaskGroup
}
val processRestart by tasks.registering {
group = processRunnerTaskGroup
processKill.get().state
dependsOn(processKill)
finalizedBy(processRun)
}

View file

@ -55,7 +55,6 @@ tasks.withType<KotlinCompile>().configureEach {
}
kotlinOptions.freeCompilerArgs += listOf(
"-Xopt-in=kotlin.OptIn",
"-Xopt-in=kotlin.RequiresOptIn",
"-Xopt-in=kotlin.ExperimentalStdlibApi",
"-Xopt-in=kotlin.time.ExperimentalTime",