50 lines
1.6 KiB
Groovy
50 lines
1.6 KiB
Groovy
repositories {
|
|
maven {
|
|
name = 'papermc'
|
|
url = 'https://repo.papermc.io/repository/maven-public/'
|
|
}
|
|
maven {
|
|
name = 'henkelmax'
|
|
url = 'https://maven.maxhenkel.de/repository/public'
|
|
}
|
|
}
|
|
|
|
dependencies {
|
|
// Paper 26.3 auf dem Server, gebaut gegen die 26.2-API wie die anderen Plugins
|
|
compileOnly 'io.papermc.paper:paper-api:26.2.build.129-stable'
|
|
// Simple Voice Chat 2.6.24 auf dem Server
|
|
compileOnly 'de.maxhenkel.voicechat:voicechat-api:2.6.0'
|
|
implementation project(':protocol')
|
|
}
|
|
|
|
processResources {
|
|
inputs.property 'version', project.version
|
|
filesMatching('plugin.yml') {
|
|
expand version: project.version
|
|
}
|
|
}
|
|
|
|
jar {
|
|
archiveFileName = 'voice-bridge.jar'
|
|
dependsOn ':protocol:jar'
|
|
from(project(':protocol').sourceSets.main.output)
|
|
}
|
|
|
|
// Hochladen auf den Paper-Server: ./gradlew :plugin:uploadPlugin, danach Paper neu starten.
|
|
// Erst in eine Temp-Datei, Prüfsumme vergleichen, dann atomar umbenennen.
|
|
tasks.register('uploadPlugin') {
|
|
dependsOn jar
|
|
doLast {
|
|
def file = jar.archiveFile.get().asFile
|
|
def checksum = file.bytes.digest('SHA-256')
|
|
def target = '/home/minecraft/server/plugins/voice-bridge.jar'
|
|
providers.exec {
|
|
commandLine 'scp', file.absolutePath, "minecraft@10.20.9.3:${target}.new"
|
|
}.result.get()
|
|
providers.exec {
|
|
commandLine 'ssh', 'minecraft@10.20.9.3',
|
|
"echo '${checksum} ${target}.new' | sha256sum -c --quiet && mv -f ${target}.new ${target}"
|
|
}.result.get()
|
|
}
|
|
}
|