64 lines
2.0 KiB
Groovy
64 lines
2.0 KiB
Groovy
|
ext {
|
||
|
dockerImage='openjdk:21-slim'
|
||
|
}
|
||
|
|
||
|
tasks.register('dockerFile') {
|
||
|
buildDir.mkdir()
|
||
|
|
||
|
var df = new File(buildDir, "Dockerfile")
|
||
|
doLast {
|
||
|
df.text = """#
|
||
|
# I'm auto-generated, please don't make changes to me or commit me to git
|
||
|
#
|
||
|
# The template exists in docker-service.gradle
|
||
|
#
|
||
|
FROM ${dockerImage}
|
||
|
|
||
|
ADD ${application.applicationName}.tar /
|
||
|
ADD crawler-process.tar /dist
|
||
|
ADD loader-process.tar /dist
|
||
|
ADD converter-process.tar /dist
|
||
|
ADD website-adjacencies-calculator.tar /dist
|
||
|
ADD index-construction-process.tar /dist
|
||
|
|
||
|
RUN mkdir /wmsa
|
||
|
|
||
|
ENTRYPOINT WMSA_HOME=/wmsa /${application.applicationName}/bin/${application.applicationName} \${arg0} \${arg1}
|
||
|
"""
|
||
|
}
|
||
|
it.outputs.file(df)
|
||
|
}
|
||
|
|
||
|
dockerPrepare {
|
||
|
dependsOn tasks.dockerFile
|
||
|
|
||
|
dependsOn project(':code:processes:website-adjacencies-calculator').distTar
|
||
|
dependsOn project(':code:processes:crawling-process').distTar
|
||
|
dependsOn project(':code:processes:loading-process').distTar
|
||
|
dependsOn project(':code:processes:converting-process').distTar
|
||
|
dependsOn project(':code:processes:index-constructor-process').distTar
|
||
|
}
|
||
|
|
||
|
dockerfileZip {
|
||
|
dependsOn tasks.dockerFile
|
||
|
}
|
||
|
|
||
|
docker {
|
||
|
dockerfile = tasks.dockerFile.outputs.files.singleFile
|
||
|
name = 'marginalia.nu/'+application.applicationName+':latest'
|
||
|
files tasks.distTar.outputs, \
|
||
|
project(':code:processes:crawling-process').distTar.outputs, \
|
||
|
project(':code:processes:loading-process').distTar.outputs, \
|
||
|
project(':code:processes:converting-process').distTar.outputs, \
|
||
|
project(':code:processes:index-constructor-process').distTar.outputs, \
|
||
|
project(':code:processes:website-adjacencies-calculator').distTar.outputs
|
||
|
|
||
|
tags 'latest'
|
||
|
|
||
|
dependsOn project(':code:processes:crawling-process').distTar
|
||
|
dependsOn project(':code:processes:loading-process').distTar
|
||
|
dependsOn project(':code:processes:converting-process').distTar
|
||
|
dependsOn project(':code:processes:index-constructor-process').distTar
|
||
|
dependsOn project(':code:processes:website-adjacencies-calculator').distTar
|
||
|
}
|