49 lines
1.4 KiB
Groovy
49 lines
1.4 KiB
Groovy
plugins {
|
|
id 'java'
|
|
id 'application'
|
|
id 'com.gradleup.shadow' version '9.6.1'
|
|
}
|
|
|
|
group = 'eu.mhsl.minecraft'
|
|
version = '1.0-SNAPSHOT'
|
|
|
|
repositories {
|
|
mavenCentral()
|
|
}
|
|
|
|
dependencies {
|
|
implementation 'net.minestom:minestom:2026.10.05-26.2'
|
|
runtimeOnly 'org.slf4j:slf4j-simple:2.0.20'
|
|
}
|
|
|
|
java {
|
|
toolchain.languageVersion = JavaLanguageVersion.of(25)
|
|
}
|
|
|
|
application {
|
|
mainClass = 'eu.mhsl.minecraft.endlessjumper.EndlessJumper'
|
|
}
|
|
|
|
shadowJar {
|
|
archiveFileName = 'limbo.jar'
|
|
mergeServiceFiles()
|
|
}
|
|
|
|
// Hochladen auf den Limbo: ./gradlew uploadLimbo, danach `sudo systemctl restart limbo`.
|
|
// Erst in eine Temp-Datei, Prüfsumme vergleichen, dann atomar umbenennen: ein abgebrochener Upload
|
|
// lässt das laufende JAR unberührt, und der laufende Prozess behält bis zum Neustart sein altes JAR.
|
|
tasks.register('uploadLimbo') {
|
|
dependsOn shadowJar
|
|
doLast {
|
|
def jar = shadowJar.archiveFile.get().asFile
|
|
def checksum = jar.bytes.digest('SHA-256')
|
|
providers.exec {
|
|
commandLine 'scp', jar.absolutePath, 'minecraft@10.20.9.3:/home/minecraft/limbo/limbo.jar.new'
|
|
}.result.get()
|
|
providers.exec {
|
|
commandLine 'ssh', 'minecraft@10.20.9.3',
|
|
"cd ~/limbo && echo '${checksum} limbo.jar.new' | sha256sum -c --quiet && mv -f limbo.jar.new limbo.jar"
|
|
}.result.get()
|
|
}
|
|
}
|