This commit is contained in:
2025-04-29 14:11:15 +08:00
parent 11a1264a4b
commit acbfb6cb27
8 changed files with 56 additions and 29 deletions

View File

@@ -13,13 +13,13 @@ import org.gradle.api.tasks.Input
abstract class RunBrokerExtension {
@get:Input
abstract val brokerBootstrapPath: Property<String>
abstract val brokerBootstrapDownloadUrl: Property<String>
@get:Input
abstract val javaExecPath: Property<JavaExecPath>
init {
brokerBootstrapPath.convention("./broker.jar")
brokerBootstrapDownloadUrl.convention("https://pub-0d3d8f5b51ea4506827ee6da1f0d8c9b.r2.dev/afybroker-server-bootstrap-2.4-all.jar")
javaExecPath.convention(JavaExecPath.DEFAULT)
}
}

View File

@@ -7,12 +7,15 @@
package cn.rtast.runbroker
import cn.rtast.runbroker.common.util.readBytesFromFile
import cn.rtast.runbroker.common.util.toURL
import org.gradle.api.DefaultTask
import org.gradle.api.tasks.TaskAction
import org.slf4j.LoggerFactory
abstract class RunBrokerTask : DefaultTask() {
private val logger = LoggerFactory.getLogger("RunBroker")
init {
val shadowJarTask = project.tasks.named("shadowJar").get()
dependsOn(shadowJarTask)
@@ -26,7 +29,9 @@ abstract class RunBrokerTask : DefaultTask() {
val brokerFile = project.layout.projectDirectory
.dir("run/broker/broker.jar").asFile
if (!brokerFile.exists()) {
brokerFile.writeBytes(settings.brokerBootstrapPath.get().readBytesFromFile())
logger.info("Downloading broker bootstrap...")
brokerFile.writeBytes(settings.brokerBootstrapDownloadUrl.get().toURL().readBytes())
logger.info("Downloaded...")
}
val builtJar = shadowJarTask.outputs.files.singleFile
val previousJar = project.layout.projectDirectory
@@ -39,6 +44,6 @@ abstract class RunBrokerTask : DefaultTask() {
it.args = listOf("-jar", brokerFile.absolutePath)
it.workingDir = project.layout.projectDirectory.dir("run/broker").asFile
}
println("Broker started...")
logger.info("Broker started...")
}
}