From 0e02e85a25165306c7e0005a9abe674ec583767d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julian=20G=C3=BCnther?= Date: Fri, 4 Dec 2020 11:25:50 +0100 Subject: [PATCH 1/2] buildJava for console runner --- documentation/Functions.md | 11 ++++++++++- runners/console/index.ts | 25 +++++++++++++++++++++++++ 2 files changed, 35 insertions(+), 1 deletion(-) diff --git a/documentation/Functions.md b/documentation/Functions.md index 2a520c97..01d7fbef 100644 --- a/documentation/Functions.md +++ b/documentation/Functions.md @@ -35,8 +35,17 @@ cobiGenJava("path/to/java/file/MyEntity.java",[1,3,5,6,8]) ### createDevon4jProject #### parameter -1. the project name +1. The project name #### example createDevon4jProject("cobigenexample") *** + +### buildJava +#### parameter +1. The project directory +2. Indicator whether tests should be run +#### example +buildJava("cobigenexample", true) + +*** diff --git a/runners/console/index.ts b/runners/console/index.ts index 9864d107..8d1fa6b4 100644 --- a/runners/console/index.ts +++ b/runners/console/index.ts @@ -75,6 +75,20 @@ export class Console extends Runner { return result; } + runBuildJava(step: Step, command: Command): RunResult { + let result = new RunResult(); + result.returnCode = 0; + + let projectDir = path.join(this.getWorkingDirectory(), "devonfw", "workspaces", "main", command.parameters[0]) + if(this.platform == ConsolePlatform.WINDOWS) { + this.executeCommandSync("devon mvn clean install -Dmaven.test.skip=" + command.parameters[1], projectDir, result); + } else { + this.executeCommandSync("~/.devon/devon mvn clean install -Dmaven.test.skip=" + command.parameters[1], projectDir, result); + } + + return result; + } + runCobiGenJava(step: Step, command: Command): RunResult { return null; } @@ -103,6 +117,17 @@ export class Console extends Runner { .fileExits(path.join(this.getWorkingDirectory(), "devonfw", "software", "cobigen-cli", "cobigen")); } + async assertBuildJava(step: Step, command: Command, result: RunResult) { + let workspaceDir = path.join(this.getWorkingDirectory(), "devonfw", "workspaces", "main"); + + new Assertions() + .noErrorCode(result) + .noException(result) + .directoryExits(path.join(workspaceDir, command.parameters[0], "api", "target")) + .directoryExits(path.join(workspaceDir, command.parameters[0], "core", "target")) + .directoryExits(path.join(workspaceDir, command.parameters[0], "server", "target")); + } + async assertCobiGenJava(step: Step, command: Command, result: RunResult) { console.log("assertCobiGenJava"); } From 743fa9af4b022886bfc865c3b28231e108ed0641 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julian=20G=C3=BCnther?= Date: Mon, 7 Dec 2020 10:59:09 +0100 Subject: [PATCH 2/2] changed buffer size in console runner to infinity --- runners/console/index.ts | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/runners/console/index.ts b/runners/console/index.ts index 9d9a5a81..715c7fb8 100644 --- a/runners/console/index.ts +++ b/runners/console/index.ts @@ -81,9 +81,9 @@ export class Console extends Runner { let projectDir = path.join(this.getWorkingDirectory(), "devonfw", "workspaces", "main", command.parameters[0]) if(this.platform == ConsolePlatform.WINDOWS) { - this.executeCommandSync("devon mvn clean install -Dmaven.test.skip=" + command.parameters[1], projectDir, result); + this.executeCommandSync("devon mvn clean install -Dmaven.test.skip=" + !command.parameters[1], projectDir, result); } else { - this.executeCommandSync("~/.devon/devon mvn clean install -Dmaven.test.skip=" + command.parameters[1], projectDir, result); + this.executeCommandSync("~/.devon/devon mvn clean install -Dmaven.test.skip=" + !command.parameters[1], projectDir, result); } return result; @@ -148,7 +148,7 @@ export class Console extends Runner { private executeCommandSync(command: string, directory: string, result: RunResult, input?: string) { if(result.returnCode != 0) return; - let process = child_process.spawnSync(command, { shell: true, cwd: directory, input: input }); + let process = child_process.spawnSync(command, { shell: true, cwd: directory, input: input, maxBuffer: Infinity }); if(process.status != 0) { console.log("Error executing command: " + command + " (exit code: " + process.status + ")"); console.log(process.stderr.toString(), process.stdout.toString());