rm old files, use sync to copy tstl'd files

This commit is contained in:
Adam 2021-10-23 22:46:17 +02:00
parent 26626263d3
commit 70429d66be
4 changed files with 38 additions and 48 deletions

View file

@ -7,8 +7,8 @@ plugins {
val projectId: String by project.extra val projectId: String by project.extra
val tsSrcDir = layout.projectDirectory.dir("src/main/typescript") val tsSrcDir: Directory = layout.projectDirectory.dir("src/main/typescript")
val modBuildDir = layout.buildDirectory.dir(projectId).get() val modBuildDir: Directory = layout.buildDirectory.dir(projectId).get()
node { node {
nodeProjectDir.set(tsSrcDir) nodeProjectDir.set(tsSrcDir)
@ -29,15 +29,23 @@ val tstlTask = tasks.register<NpmTask>("typescriptToLua") {
.withPropertyName("sourceFiles") .withPropertyName("sourceFiles")
.withPathSensitivity(PathSensitivity.RELATIVE) .withPathSensitivity(PathSensitivity.RELATIVE)
val intermediateOutputDir = temporaryDir
args.set(parseSpaceSeparatedArgs("-- --outDir $intermediateOutputDir"))
val outputDir = modBuildDir.dir("typescriptToLua") val outputDir = modBuildDir.dir("typescriptToLua")
args.set(parseSpaceSeparatedArgs("-- --outDir $outputDir"))
outputs.dir(outputDir) outputs.dir(outputDir)
.withPropertyName("outputDir") .withPropertyName("outputDir")
ignoreExitValue.set(false) ignoreExitValue.set(false)
doFirst("clean") { doFirst("clean") {
delete(outputDir) delete(intermediateOutputDir)
}
doLast("syncTstlOutput") {
sync {
from(intermediateOutputDir)
into(outputDir)
}
} }
} }
@ -57,7 +65,7 @@ val tstlTask = tasks.register<NpmTask>("typescriptToLua") {
// } // }
// } // }
val modPackageTask = tasks.register<Zip>("package") { val modPackageTask = tasks.register<Zip>("packageMod") {
description = "Package mod files into ZIP" description = "Package mod files into ZIP"
group = projectId group = projectId
@ -80,8 +88,8 @@ val modPackageTask = tasks.register<Zip>("package") {
//tasks.build { dependsOn(tstlTask, modPackageTask) } //tasks.build { dependsOn(tstlTask, modPackageTask) }
val modInfraDir = layout.projectDirectory.dir("infra") val modInfraDir: Directory = layout.projectDirectory.dir("infra")
val factorioServerDataDir = modInfraDir.dir("factorio-server") val factorioServerDataDir: Directory = modInfraDir.dir("factorio-server")
val copyModToServerTask = tasks.register<Copy>("copyModToServer") { val copyModToServerTask = tasks.register<Copy>("copyModToServer") {
description = "Copy the mod to the Factorio Docker server" description = "Copy the mod to the Factorio Docker server"
@ -97,7 +105,7 @@ val copyModToServerTask = tasks.register<Copy>("copyModToServer") {
} }
} }
val serverStopTask = tasks.register<Exec>("dockerStop") { val factorioServerStop = tasks.register<Exec>("factorioServerStop") {
group = "$projectId.factorioServer" group = "$projectId.factorioServer"
mustRunAfter(copyModToServerTask) mustRunAfter(copyModToServerTask)
@ -106,16 +114,22 @@ val serverStopTask = tasks.register<Exec>("dockerStop") {
commandLine = parseSpaceSeparatedArgs("docker-compose stop factorio-server") commandLine = parseSpaceSeparatedArgs("docker-compose stop factorio-server")
} }
val serverUpTask = tasks.register<Exec>("dockerUp") { val factorioServerUp = tasks.register<Exec>("factorioServerUp") {
group = "$projectId.factorioServer" group = "$projectId.factorioServer"
mustRunAfter(copyModToServerTask) mustRunAfter(copyModToServerTask)
dependsOn(serverStopTask) dependsOn(factorioServerStop)
workingDir(modInfraDir) workingDir(modInfraDir)
commandLine = parseSpaceSeparatedArgs("docker-compose up -d factorio-server") commandLine = parseSpaceSeparatedArgs("docker-compose up -d factorio-server")
} }
val factorioServerRestart: Task by tasks.creating {
group = "$projectId.factorioServer"
dependsOn(factorioServerStop, factorioServerUp)
}
//val serverRestartTask = tasks.register<Exec>("dockerRestart") { //val serverRestartTask = tasks.register<Exec>("dockerRestart") {
// group = "$projectId.factorioServer" // group = "$projectId.factorioServer"
// //
@ -158,7 +172,7 @@ val launch = tasks.register("modLauncher") {
dependsOn( dependsOn(
copyModToServerTask, copyModToServerTask,
copyModToClientTask, copyModToClientTask,
serverUpTask, factorioServerRestart,
// factorioClientLaunch, // factorioClientLaunch,
) )
} }
@ -175,11 +189,13 @@ tasks.register("downloadFactorioApiDocs") {
doLast { doLast {
ant.invokeMethod("get", mapOf( ant.invokeMethod(
"get", mapOf(
"src" to target, "src" to target,
"dest" to downloadedFile, "dest" to downloadedFile,
"verbose" to true, "verbose" to true,
)) )
)
val json = downloadedFile.readText() val json = downloadedFile.readText()
val prettyJson = groovy.json.JsonOutput.prettyPrint(json) val prettyJson = groovy.json.JsonOutput.prettyPrint(json)

View file

@ -1 +0,0 @@
// require("item")

View file

@ -1,12 +0,0 @@
import * as util from "util";
import { Data, Mods } from "typed-factorio/data/types"
declare const data: Data
declare const mods: Mods
let fireArmour = util.table.deepcopy(data.raw["armor"]["heavy-armor"])
fireArmour.name = "fire-armour"
fireArmour.icon

View file

@ -1,13 +0,0 @@
#!/usr/bin/env bash
# stream logs from 'factorio' container
# follow the logs, and
# combine stdout and stderr
# only match lines that start with 'FactorioEvent: ',
# and only return the stuff *after* 'FactorioEvent: '
docker logs --tail 0 -f factorio 2>&1 |
sed -n -e 's/^FactorioEvent: //p' |
kafkacat -P -b localhost -t factorio-server-log
# listen to events
# kafkacat -C -b localhost -t factorio-server-log | jq