From e393aad25ff0edba0305ea87636a1b0add6f238b Mon Sep 17 00:00:00 2001 From: YoyoNow Date: Thu, 17 Apr 2025 10:07:50 +0200 Subject: [PATCH] Add all parameters that dev.py has --- buildSrc/src/steamwar.devserver.gradle | 43 ++++++++++++++++++-------- 1 file changed, 30 insertions(+), 13 deletions(-) diff --git a/buildSrc/src/steamwar.devserver.gradle b/buildSrc/src/steamwar.devserver.gradle index 22993d27..35bfcab1 100644 --- a/buildSrc/src/steamwar.devserver.gradle +++ b/buildSrc/src/steamwar.devserver.gradle @@ -16,24 +16,33 @@ * You should have received a copy of the GNU Affero General Public License * along with this program. If not, see . */ - -import org.gradle.api.DefaultTask -import org.gradle.api.GradleException -import org.gradle.api.Project -import org.gradle.api.tasks.Input -import org.gradle.api.tasks.Internal -import org.gradle.api.tasks.bundling.AbstractArchiveTask - plugins { } class DevServer extends DefaultTask { @Input - worldName = "" + @Optional + String worldName = null @Input - template = "" + String template = null + + @Input + @Optional + Integer port = null + + @Input + @Optional + Boolean profile = false + + @Input + @Optional + Boolean forceUpgrade = false + + @Input + @Optional + String jar = null DevServer() { super() @@ -45,7 +54,7 @@ class DevServer extends DefaultTask { } @Internal - def BufferedWriter processInput; + BufferedWriter processInput; class Finalizer extends DefaultTask { @@ -79,9 +88,17 @@ class DevServer extends DefaultTask { } void startDevServer() { - println("Starting $template with world $worldName and plugins in ~/plugins/${template}") + def devPy = new StringBuilder().append("dev.py") + if (port != null) devPy.append(" --port $port") + if (worldName != null) devPy.append(" -w $worldName") + devPy.append(" -p plugins/$template") + if (profile) devPy.append(" --profile") + if (forceUpgrade) devPy.append(" --forceUpgrade") + if (jar != null) devPy.append(" --jar $jar") + println("Starting $template with command ${devPy.toString()}") + devPy.append(" $template") - def process = new ProcessBuilder("ssh", "sw", "-T", "dev.py -w $worldName -p plugins/$template $template").start(); + def process = new ProcessBuilder("ssh", "sw", "-T", devPy.toString()).start(); def running = true; def processOutput = new BufferedReader(new InputStreamReader(process.inputStream)) new Thread({