maybe fix docker build for kafka pipe?? again????
This commit is contained in:
parent
27c8088f41
commit
1439e81628
1 changed files with 26 additions and 11 deletions
|
|
@ -1,3 +1,4 @@
|
|||
import org.jetbrains.kotlin.incremental.md5
|
||||
import org.jetbrains.kotlin.util.parseSpaceSeparatedArgs
|
||||
|
||||
plugins {
|
||||
|
|
@ -8,6 +9,11 @@ description = "Send events from a Factorio server to a Kafka topic "
|
|||
|
||||
|
||||
val dockerSrcDir: Directory by extra
|
||||
fun Directory.filesChecksum() = asFileTree
|
||||
.files
|
||||
.map { it.readBytes() + it.absolutePath.toByteArray() }
|
||||
.fold(byteArrayOf()) { acc, bytes -> acc + bytes }
|
||||
.md5()
|
||||
|
||||
tasks.dockerUp {
|
||||
dependsOn(":modules:infra-kafka-cluster:dockerUp")
|
||||
|
|
@ -21,21 +27,30 @@ val dockerBuildKafkaPipe by tasks.registering(Exec::class) {
|
|||
dependsOn(tasks.dockerEnv)
|
||||
|
||||
inputs.dir(dockerSrcDir)
|
||||
inputs.property("dockerSrcDirChecksum") { dockerSrcDir.filesChecksum() }
|
||||
|
||||
val imageIdFile = file("$temporaryDir/docker-image-id.txt")
|
||||
outputs.file(imageIdFile)
|
||||
outputs.upToDateWhen {
|
||||
it.inputs.properties["dockerSrcDirChecksum"] as? Long? == dockerSrcDir.filesChecksum()
|
||||
}
|
||||
|
||||
// val imageIdFile = file("$temporaryDir/docker-image-id.txt")
|
||||
// outputs.file(imageIdFile)
|
||||
|
||||
workingDir = dockerSrcDir.asFile
|
||||
commandLine = parseSpaceSeparatedArgs(""" docker-compose build kafka-pipe """)
|
||||
|
||||
doLast {
|
||||
imageIdFile.outputStream().use { os ->
|
||||
exec {
|
||||
workingDir = dockerSrcDir.asFile
|
||||
commandLine = parseSpaceSeparatedArgs(""" docker-compose images -q kafka-pipe """)
|
||||
standardOutput = os
|
||||
}
|
||||
}
|
||||
}
|
||||
// doLast {
|
||||
// sync {
|
||||
// from(dockerSrcDir)
|
||||
// into(temporaryDir)
|
||||
// }
|
||||
// imageIdFile.outputStream().use { os ->
|
||||
// exec {
|
||||
// workingDir = dockerSrcDir.asFile
|
||||
// commandLine = parseSpaceSeparatedArgs(""" docker-compose images -q kafka-pipe """)
|
||||
// standardOutput = os
|
||||
// }
|
||||
// }
|
||||
//}
|
||||
}
|
||||
tasks.assemble { dependsOn(dockerBuildKafkaPipe) }
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue