VM-Operator/org.jdrupes.vmoperator.runner.qemu/build.gradle

76 lines
2.3 KiB
Groovy

/*
* This file was generated by the Gradle 'init' task.
*
* This project uses @Incubating APIs which are subject to change.
*/
plugins {
id 'org.jdrupes.vmoperator.java-application-conventions'
}
dependencies {
implementation 'org.jgrapes:org.jgrapes.core:[1.19.0,2)'
implementation 'org.jgrapes:org.jgrapes.io:[2.7.0,3)'
implementation 'org.jgrapes:org.jgrapes.http:[3.1.0,4)'
implementation 'org.jgrapes:org.jgrapes.util:[1.29.0,2)'
implementation project(':org.jdrupes.vmoperator.util')
implementation 'commons-cli:commons-cli:1.5.0'
implementation 'org.freemarker:freemarker:[2.3.32,2.4)'
implementation 'com.fasterxml.jackson.dataformat:jackson-dataformat-yaml:[2.15.1,3]'
runtimeOnly 'com.electronwill.night-config:yaml:3.6.6'
}
application {
applicationName = 'vm-runner.qemu'
applicationDefaultJvmArgs = ['-Xms50m',
'-Djava.util.logging.manager=org.jdrupes.vmoperator.util.LongLoggingManager'
]
// Define the main class for the application.
mainClass = 'org.jdrupes.vmoperator.runner.qemu.Runner'
}
task buildArchContainer(type: Exec) {
dependsOn installDist
inputs.files 'src/org/jdrupes/vmoperator/runner/qemu/Containerfile.arch'
commandLine 'podman', 'build', '-t', "${project.name}:${project.version}",\
'-f', 'src/org/jdrupes/vmoperator/runner/qemu/Containerfile.arch', '.'
}
task tagArchContainer(type: Exec) {
dependsOn buildArchContainer
commandLine 'podman', 'tag', "${project.name}:${project.version}",\
"${project.name}:latest"
}
task buildContainer {
dependsOn buildArchContainer
dependsOn tagArchContainer
}
task pushArchContainer(type: Exec) {
dependsOn buildContainer
commandLine 'podman', 'push', '--tls-verify=false', \
"localhost/${project.name}:${project.version}", \
"${project.rootProject.properties['docker.registry']}" \
+ "/${project.name}-arch:${project.version}"
}
task pushArchContainerAsLatest(type: Exec) {
dependsOn buildContainer
commandLine 'podman', 'push', '--tls-verify=false', \
"localhost/${project.name}:${project.version}", \
"${project.rootProject.properties['docker.registry']}" \
+ "/${project.name}-arch:latest"
}
task pushContainer {
dependsOn pushArchContainer
dependsOn pushArchContainerAsLatest
}