This is an automated email from the ASF dual-hosted git repository.

davsclaus pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel.git


The following commit(s) were added to refs/heads/main by this push:
     new 648baabf7617 Rework camel-jbang-it to support camel-launcher (#21362)
648baabf7617 is described below

commit 648baabf7617594325a89251a10f395ed4d66504
Author: Jakub Vrubel <[email protected]>
AuthorDate: Thu Feb 12 16:03:50 2026 +0100

    Rework camel-jbang-it to support camel-launcher (#21362)
---
 dsl/camel-jbang/camel-jbang-it/pom.xml                 |  2 ++
 .../apache/camel/dsl/jbang/it/CamelDebugITCase.java    |  2 +-
 .../apache/camel/dsl/jbang/it/CmdStartStopITCase.java  | 16 ++++++++--------
 .../camel/dsl/jbang/it/InfrastructureITCase.java       |  6 +++---
 .../org/apache/camel/dsl/jbang/it/JolokiaITCase.java   |  7 +++----
 .../apache/camel/dsl/jbang/it/MavenGradleITCase.java   | 14 ++++++++------
 .../apache/camel/dsl/jbang/it/RouteFromDirITCase.java  |  1 -
 .../apache/camel/dsl/jbang/it/RunCommandITCase.java    |  7 ++++---
 .../camel/dsl/jbang/it/RunCommandOnMqttITCase.java     |  8 ++++----
 .../camel/dsl/jbang/it/support/JBangTestSupport.java   | 18 +++++++++++++++---
 .../infra/cli/services/CliLocalContainerService.java   |  8 +++++++-
 .../camel/test/infra/cli/services/CliService.java      |  2 ++
 12 files changed, 57 insertions(+), 34 deletions(-)

diff --git a/dsl/camel-jbang/camel-jbang-it/pom.xml 
b/dsl/camel-jbang/camel-jbang-it/pom.xml
index 6d926c948f54..9abfc35706ea 100644
--- a/dsl/camel-jbang/camel-jbang-it/pom.xml
+++ b/dsl/camel-jbang/camel-jbang-it/pom.xml
@@ -227,6 +227,7 @@
                 <cli.jbang.repo>apache/camel</cli.jbang.repo>
                 <cli.jbang.branch>main</cli.jbang.branch>
                 <cli.jbang.docker.file/>
+                <cli.service.command>camel</cli.service.command>
                 <export.runtime/>
                 <maven.test.skip>false</maven.test.skip>
                 <shared.data.folder>target/data</shared.data.folder>
@@ -276,6 +277,7 @@
                                 
<cli.service.repo>${cli.jbang.repo}</cli.service.repo>
                                 
<cli.service.branch>${cli.jbang.branch}</cli.service.branch>
                                 
<cli.service.docker.file>${cli.jbang.docker.file}</cli.service.docker.file>
+                                
<cli.service.command>${cli.service.command}</cli.service.command>
                                 
<jbang.it.assert.wait.timeout>300</jbang.it.assert.wait.timeout>
                                 <DISPLAY>${x11.display}</DISPLAY>
                             </systemPropertyVariables>
diff --git 
a/dsl/camel-jbang/camel-jbang-it/src/test/java/org/apache/camel/dsl/jbang/it/CamelDebugITCase.java
 
b/dsl/camel-jbang/camel-jbang-it/src/test/java/org/apache/camel/dsl/jbang/it/CamelDebugITCase.java
index 45a1a5df0702..885bc664f331 100644
--- 
a/dsl/camel-jbang/camel-jbang-it/src/test/java/org/apache/camel/dsl/jbang/it/CamelDebugITCase.java
+++ 
b/dsl/camel-jbang/camel-jbang-it/src/test/java/org/apache/camel/dsl/jbang/it/CamelDebugITCase.java
@@ -25,7 +25,7 @@ public class CamelDebugITCase extends JBangTestSupport {
     @Test
     public void testDebug() throws IOException {
         copyResourceInDataFolder(TestResources.ROUTE2);
-        execInContainer(String.format("nohup camel debug %s/route2.yaml&", 
mountPoint()));
+        execNohup(String.format("debug %s/route2.yaml", mountPoint()));
         checkLogContains("Debugger JMXConnector listening at:");
     }
 }
diff --git 
a/dsl/camel-jbang/camel-jbang-it/src/test/java/org/apache/camel/dsl/jbang/it/CmdStartStopITCase.java
 
b/dsl/camel-jbang/camel-jbang-it/src/test/java/org/apache/camel/dsl/jbang/it/CmdStartStopITCase.java
index a80e1a46a4a1..f99a8c8da832 100644
--- 
a/dsl/camel-jbang/camel-jbang-it/src/test/java/org/apache/camel/dsl/jbang/it/CmdStartStopITCase.java
+++ 
b/dsl/camel-jbang/camel-jbang-it/src/test/java/org/apache/camel/dsl/jbang/it/CmdStartStopITCase.java
@@ -40,10 +40,10 @@ public class CmdStartStopITCase extends JBangTestSupport {
     public void testCmdStopByPID() throws IOException {
         copyResourceInDataFolder(TestResources.DIR_ROUTE);
         copyResourceInDataFolder(TestResources.ROUTE2);
-        String PID = executeBackground(String.format("run 
%s/FromDirectoryRoute.java", mountPoint()));
+        String process = executeBackground(String.format("run 
%s/FromDirectoryRoute.java", mountPoint()));
         executeBackground(String.format("run %s/route2.yaml", mountPoint()));
         checkLogContains("Hello world!");
-        execute("cmd stop-route " + PID);
+        execute("cmd stop-route " + getPID(process));
         checkCommandOutputsPattern("get route",
                 
"route1\\s+timer:\\/\\/(yaml|java)\\?period=1000\\s+Stopped.*\\n.*route2.*timer:\\/\\/(yaml|java)\\?period=1000\\s+Started",
                 ASSERTION_WAIT_SECONDS);
@@ -78,11 +78,11 @@ public class CmdStartStopITCase extends JBangTestSupport {
     public void testCmdStartByPID() throws IOException {
         copyResourceInDataFolder(TestResources.DIR_ROUTE);
         copyResourceInDataFolder(TestResources.ROUTE2);
-        String PID = executeBackground(String.format("run 
%s/FromDirectoryRoute.java", mountPoint()));
+        String process = executeBackground(String.format("run 
%s/FromDirectoryRoute.java", mountPoint()));
         executeBackground(String.format("run %s/route2.yaml", mountPoint()));
         checkLogContains("Hello world!");
         execute("cmd stop-route");
-        execute("cmd start-route " + PID);
+        execute("cmd start-route " + getPID(process));
         checkCommandOutputsPattern("get route",
                 
"route1\\s+timer:\\/\\/(yaml|java)\\?period=1000\\s+Started.*\\n.*route2.*timer:\\/\\/(yaml|java)\\?period=1000\\s+Stopped",
                 ASSERTION_WAIT_SECONDS);
@@ -104,14 +104,14 @@ public class CmdStartStopITCase extends JBangTestSupport {
     @Test
     public void testCamelWatch() throws IOException {
         copyResourceInDataFolder(TestResources.ROUTE2);
-        String PID = executeBackground(String.format("run %s/route2.yaml", 
mountPoint()));
-        newFileInDataFolder("watch-sleep", "nohup camel ps --watch&\n" +
+        String process = executeBackground(String.format("run %s/route2.yaml", 
mountPoint()));
+        newFileInDataFolder("watch-sleep", "nohup " + getMainCommand() + " ps 
--watch&\n" +
                                            "sleep 5\n" +
                                            "echo \"q\"\n");
         execInContainer(String.format("chmod +x %s/watch-sleep", 
mountPoint()));
         Assertions.assertThat(
                 execInContainer(String.format("%s/watch-sleep", mountPoint())))
-                .as("watch command should output PID" + PID)
-                .contains(PID);
+                .as("watch command should output PID" + getPID(process))
+                .contains(getPID(process));
     }
 }
diff --git 
a/dsl/camel-jbang/camel-jbang-it/src/test/java/org/apache/camel/dsl/jbang/it/InfrastructureITCase.java
 
b/dsl/camel-jbang/camel-jbang-it/src/test/java/org/apache/camel/dsl/jbang/it/InfrastructureITCase.java
index fe25b73ab338..ae27a71a6d2a 100644
--- 
a/dsl/camel-jbang/camel-jbang-it/src/test/java/org/apache/camel/dsl/jbang/it/InfrastructureITCase.java
+++ 
b/dsl/camel-jbang/camel-jbang-it/src/test/java/org/apache/camel/dsl/jbang/it/InfrastructureITCase.java
@@ -39,7 +39,7 @@ public class InfrastructureITCase extends JBangTestSupport {
     @Test
     public void runStopServiceTest() {
         String msg = execute("infra run --background " + SERVICE);
-        String PID = getPID(msg);
+        String PID = getServicePID(msg);
         Assertions.assertThat(msg).contains(String.format("Running %s in 
background", SERVICE));
         Awaitility.await()
                 .atMost(Duration.ofSeconds(30))
@@ -55,7 +55,7 @@ public class InfrastructureITCase extends JBangTestSupport {
     @Test
     public void runServiceWithImplementationTest() {
         String msg = execute(String.format("infra run --background %s %s", 
IMPL_SERVICE, IMPLEMENTATION));
-        String PID = getPID(msg);
+        String PID = getServicePID(msg);
         Assertions.assertThat(msg).contains(String.format("Running %s in 
background", IMPL_SERVICE));
         Awaitility.await()
                 .atMost(Duration.ofSeconds(30))
@@ -66,7 +66,7 @@ public class InfrastructureITCase extends JBangTestSupport {
         checkCommandDoesNotOutput("infra ps", PID);
     }
 
-    private String getPID(String message) {
+    private String getServicePID(String message) {
         return message.split(":")[1].replaceAll("[^0-9]", "");
     }
 }
diff --git 
a/dsl/camel-jbang/camel-jbang-it/src/test/java/org/apache/camel/dsl/jbang/it/JolokiaITCase.java
 
b/dsl/camel-jbang/camel-jbang-it/src/test/java/org/apache/camel/dsl/jbang/it/JolokiaITCase.java
index 31f43ad678d7..b6281a00f363 100644
--- 
a/dsl/camel-jbang/camel-jbang-it/src/test/java/org/apache/camel/dsl/jbang/it/JolokiaITCase.java
+++ 
b/dsl/camel-jbang/camel-jbang-it/src/test/java/org/apache/camel/dsl/jbang/it/JolokiaITCase.java
@@ -29,7 +29,7 @@ public class JolokiaITCase extends JBangTestSupport {
     @Test
     public void testAttachJolokia() throws IOException {
         copyResourceInDataFolder(TestResources.DIR_ROUTE);
-        String processID = executeBackground(String.format("run 
%s/FromDirectoryRoute.java", mountPoint()));
+        String process = executeBackground(String.format("run 
%s/FromDirectoryRoute.java", mountPoint()));
         checkLogContains("(FromDirectoryRoute) started");
         execute("jolokia FromDirectoryRoute");
         Assertions.assertThat(execInContainer("curl 
http://127.0.0.1:8778/jolokia/";))
@@ -37,8 +37,7 @@ public class JolokiaITCase extends JBangTestSupport {
                 .contains("\"agentContext\":\"/jolokia\"");
         Assertions.assertThat(execute("jolokia FromDirectoryRoute --stop"))
                 .as("Jolokia should stop")
-                .contains("Stopped Jolokia for PID " + processID);
-
+                .contains("Stopped Jolokia for PID " + getPID(process));
     }
 
     @Test
@@ -46,7 +45,7 @@ public class JolokiaITCase extends JBangTestSupport {
         copyResourceInDataFolder(TestResources.DIR_ROUTE);
         executeBackground(String.format("run %s/FromDirectoryRoute.java", 
mountPoint()));
         checkLogContains("(FromDirectoryRoute) started");
-        execInContainer("nohup camel hawtio FromDirectoryRoute &");
+        execNohup("hawtio FromDirectoryRoute");
         Awaitility.await()
                 .atMost(Duration.ofSeconds(30))
                 .pollInterval(Duration.ofSeconds(1))
diff --git 
a/dsl/camel-jbang/camel-jbang-it/src/test/java/org/apache/camel/dsl/jbang/it/MavenGradleITCase.java
 
b/dsl/camel-jbang/camel-jbang-it/src/test/java/org/apache/camel/dsl/jbang/it/MavenGradleITCase.java
index 5174a5dfcf0b..a632e797b715 100644
--- 
a/dsl/camel-jbang/camel-jbang-it/src/test/java/org/apache/camel/dsl/jbang/it/MavenGradleITCase.java
+++ 
b/dsl/camel-jbang/camel-jbang-it/src/test/java/org/apache/camel/dsl/jbang/it/MavenGradleITCase.java
@@ -28,10 +28,11 @@ public class MavenGradleITCase extends JBangTestSupport {
     @Test
     public void runFromMavenModuleTest() {
         execInContainer(String.format("mkdir %s/mvn-app", mountPoint()));
-        execInContainer(String.format("cd %s/mvn-app && camel init 
cheese.xml", mountPoint()));
+        execInContainer(String.format("cd %s/mvn-app && %s init cheese.xml", 
mountPoint(), getMainCommand()));
         execInContainer(String.format(
-                "cd %s/mvn-app && camel export --runtime=camel-main 
--gav=org.jbang:maven-app:1.0-SNAPSHOT", mountPoint()));
-        execInContainer(String.format("cd %s/mvn-app && camel run pom.xml 
--background", mountPoint()));
+                "cd %s/mvn-app && %s export --runtime=camel-main 
--gav=org.jbang:maven-app:1.0-SNAPSHOT", mountPoint(),
+                getMainCommand()));
+        execInContainer(String.format("cd %s/mvn-app && %s run pom.xml 
--background", mountPoint(), getMainCommand()));
         checkLogContains("Apache Camel " + version() + " (maven-app) started");
         checkLogContains("Hello Camel from route1");
     }
@@ -39,13 +40,14 @@ public class MavenGradleITCase extends JBangTestSupport {
     @Test
     public void runFromGradleTest() throws IOException {
         execInContainer(String.format("mkdir %s/gradle-app", mountPoint()));
-        execInContainer(String.format("cd %s/gradle-app && camel init 
cheese.xml", mountPoint()));
+        execInContainer(String.format("cd %s/gradle-app && %s init 
cheese.xml", mountPoint(), getMainCommand()));
         execInContainer(String.format(
-                "cd %s/gradle-app && camel export --runtime=camel-main 
--gav=org.jbang:gradle-app:1.0-SNAPSHOT", mountPoint()));
+                "cd %s/gradle-app && %s export --runtime=camel-main 
--gav=org.jbang:gradle-app:1.0-SNAPSHOT", mountPoint(),
+                getMainCommand()));
         copyResourceInDataFolder(TestResources.BUILD_GRADLE);
         Files.move(Path.of(String.format("%s/build.gradle", getDataFolder())),
                 Path.of(String.format("%s/gradle-app/build.gradle", 
getDataFolder())));
-        execInContainer(String.format("cd %s/gradle-app && camel run pom.xml 
--background", mountPoint()));
+        execInContainer(String.format("cd %s/gradle-app && %s run pom.xml 
--background", mountPoint(), getMainCommand()));
         checkLogContains("Apache Camel " + version() + " (gradle-app) 
started");
         checkLogContains("Hello Camel from route1");
     }
diff --git 
a/dsl/camel-jbang/camel-jbang-it/src/test/java/org/apache/camel/dsl/jbang/it/RouteFromDirITCase.java
 
b/dsl/camel-jbang/camel-jbang-it/src/test/java/org/apache/camel/dsl/jbang/it/RouteFromDirITCase.java
index f88fb3bcdfd2..762151f2bc84 100644
--- 
a/dsl/camel-jbang/camel-jbang-it/src/test/java/org/apache/camel/dsl/jbang/it/RouteFromDirITCase.java
+++ 
b/dsl/camel-jbang/camel-jbang-it/src/test/java/org/apache/camel/dsl/jbang/it/RouteFromDirITCase.java
@@ -29,5 +29,4 @@ public class RouteFromDirITCase extends JBangTestSupport {
         executeBackground(String.format("run --source-dir=%s", mountPoint()));
         checkLogContains("Hello world!");
     }
-
 }
diff --git 
a/dsl/camel-jbang/camel-jbang-it/src/test/java/org/apache/camel/dsl/jbang/it/RunCommandITCase.java
 
b/dsl/camel-jbang/camel-jbang-it/src/test/java/org/apache/camel/dsl/jbang/it/RunCommandITCase.java
index 4e319f19c049..86bbe5ebef5d 100644
--- 
a/dsl/camel-jbang/camel-jbang-it/src/test/java/org/apache/camel/dsl/jbang/it/RunCommandITCase.java
+++ 
b/dsl/camel-jbang/camel-jbang-it/src/test/java/org/apache/camel/dsl/jbang/it/RunCommandITCase.java
@@ -153,10 +153,10 @@ public class RunCommandITCase extends JBangTestSupport {
     @DisabledIfSystemProperty(named = CliProperties.FORCE_RUN_VERSION, matches 
= ".+", disabledReason = "Due to CAMEL-20426")
     public void runSpecificVersionTest(String version) {
         initFileInDataFolder("cheese.xml");
-        final String pid = executeBackground(String.format("run %s/cheese.xml 
--camel-version=%s", mountPoint(), version));
+        final String process = executeBackground(String.format("run 
%s/cheese.xml --camel-version=%s", mountPoint(), version));
         checkLogContainsPattern(String.format(" Apache Camel %s .* started", 
version));
         checkLogContains(DEFAULT_MSG);
-        execute("stop " + pid);
+        execute("stop " + getPID(process));
     }
 
     @Test
@@ -182,7 +182,8 @@ public class RunCommandITCase extends JBangTestSupport {
                 "sshpass -p '" + containerService.getSshPassword()
                                    + "' ssh -o UserKnownHostsFile=/dev/null -o 
StrictHostKeyChecking=no -X jbang@localhost -p "
                                    + containerService.getSshPort()
-                                   + " \"camel run clipboard.xml --background 
&& camel log\"")
+                                   + " \"" + getMainCommand() + " run 
clipboard.xml --background && " + getMainCommand()
+                                   + " log\"")
                 .redirectErrorStream(true);
         try (BufferedReader input = new BufferedReader(new 
InputStreamReader(builder.start().getInputStream()))) {
             Assertions.assertThatCode(() -> Awaitility.await()
diff --git 
a/dsl/camel-jbang/camel-jbang-it/src/test/java/org/apache/camel/dsl/jbang/it/RunCommandOnMqttITCase.java
 
b/dsl/camel-jbang/camel-jbang-it/src/test/java/org/apache/camel/dsl/jbang/it/RunCommandOnMqttITCase.java
index 367e1d35deb9..7e3ac64f26bc 100644
--- 
a/dsl/camel-jbang/camel-jbang-it/src/test/java/org/apache/camel/dsl/jbang/it/RunCommandOnMqttITCase.java
+++ 
b/dsl/camel-jbang/camel-jbang-it/src/test/java/org/apache/camel/dsl/jbang/it/RunCommandOnMqttITCase.java
@@ -48,22 +48,22 @@ public class RunCommandOnMqttITCase extends 
JBangTestSupport {
     public void sendMessageWithoutEndpoint() throws IOException {
         copyResourceInDataFolder(TestResources.MQQT_CONSUMER);
         final String ipAddr = getIpAddr(service.getContainer());
-        final String pid = executeBackground(String.format("run 
--property=brokerUrl=%s %s/%s",
+        final String process = executeBackground(String.format("run 
--property=brokerUrl=%s %s/%s",
                 "tcp://" + ipAddr + ":1883",
                 mountPoint(), TestResources.MQQT_CONSUMER.getName()));
         checkLogContains("Started route1 (kamelet:mqtt5-source)");
         final String payloadFile = "payload.json";
         newFileInDataFolder(payloadFile, "{\"value\": 21}");
-        sendCmd(String.format("%s/%s", mountPoint(), payloadFile), pid);
+        sendCmd(String.format("%s/%s", mountPoint(), payloadFile), 
getPID(process));
         checkLogContains("The temperature is 21");
     }
 
     @Test
     public void testStub() throws IOException {
         copyResourceInDataFolder(TestResources.STUB_ROUTE);
-        final String pid = executeBackground(String.format("run %s/%s 
--stub=jms",
+        final String process = executeBackground(String.format("run %s/%s 
--stub=jms",
                 mountPoint(), TestResources.STUB_ROUTE.getName()));
-        checkCommandOutputs("cmd send --body='Hello camel from stubbed jms' " 
+ pid, "Sent (success)");
+        checkCommandOutputs("cmd send --body='Hello camel from stubbed jms' " 
+ getPID(process), "Sent (success)");
         checkCommandOutputs("cmd stub --browse", "Hello camel from stubbed 
jms", ASSERTION_WAIT_SECONDS);
     }
 
diff --git 
a/dsl/camel-jbang/camel-jbang-it/src/test/java/org/apache/camel/dsl/jbang/it/support/JBangTestSupport.java
 
b/dsl/camel-jbang/camel-jbang-it/src/test/java/org/apache/camel/dsl/jbang/it/support/JBangTestSupport.java
index 9be9ed567e30..df1060a7562a 100644
--- 
a/dsl/camel-jbang/camel-jbang-it/src/test/java/org/apache/camel/dsl/jbang/it/support/JBangTestSupport.java
+++ 
b/dsl/camel-jbang/camel-jbang-it/src/test/java/org/apache/camel/dsl/jbang/it/support/JBangTestSupport.java
@@ -141,6 +141,10 @@ public abstract class JBangTestSupport {
         return containerService.executeBackground(command);
     }
 
+    protected String execNohup(final String command) {
+        return containerService.executeGenericCommand("nohup " + 
getMainCommand() + " " + command + " &");
+    }
+
     protected String mountPoint() {
         return String.format("%s/%s", containerService.getMountPoint(), 
containerService.id());
     }
@@ -178,13 +182,13 @@ public abstract class JBangTestSupport {
 
     protected void checkCommandOutputs(String command, String contains) {
         Assertions.assertThat(execute(command))
-                .as("command camel " + command + " should output " + contains)
+                .as("command  " + getMainCommand() + " " + command + "should 
output " + contains)
                 .contains(contains);
     }
 
     protected void checkCommandOutputsPattern(String command, String contains) 
{
         Assertions.assertThat(execute(command))
-                .as("command camel " + command + " should output pattern " + 
contains)
+                .as("command  " + getMainCommand() + " " + command + "should 
output " + contains)
                 .containsPattern(contains);
     }
 
@@ -196,7 +200,7 @@ public abstract class JBangTestSupport {
 
     protected void checkCommandDoesNotOutput(String command, String contains) {
         Assertions.assertThat(execute(command))
-                .as("command camel " + command + " should not output " + 
contains)
+                .as("command  " + getMainCommand() + " " + command + "should 
not output " + contains)
                 .doesNotContain(contains);
     }
 
@@ -289,6 +293,10 @@ public abstract class JBangTestSupport {
         return getLogs(null);
     }
 
+    protected String getPID(String startupMessage) {
+        return startupMessage.split("PID:")[1].split(" 
")[1].replaceAll("[^0-9]", "");
+    }
+
     protected String getContainerLogs() {
         return containerService.getContainerLogs();
     }
@@ -334,6 +342,10 @@ public abstract class JBangTestSupport {
         return containerDataFolder;
     }
 
+    protected String getMainCommand() {
+        return containerService.getMainCommand();
+    }
+
     public String version() {
         return containerService.version();
     }
diff --git 
a/test-infra/camel-test-infra-cli/src/test/java/org/apache/camel/test/infra/cli/services/CliLocalContainerService.java
 
b/test-infra/camel-test-infra-cli/src/test/java/org/apache/camel/test/infra/cli/services/CliLocalContainerService.java
index 03ffac8c21d0..3f71c9958135 100644
--- 
a/test-infra/camel-test-infra-cli/src/test/java/org/apache/camel/test/infra/cli/services/CliLocalContainerService.java
+++ 
b/test-infra/camel-test-infra-cli/src/test/java/org/apache/camel/test/infra/cli/services/CliLocalContainerService.java
@@ -35,6 +35,7 @@ import org.testcontainers.containers.Container;
 
 public class CliLocalContainerService implements CliService, 
ContainerService<CliBuiltContainer> {
     public static final String CONTAINER_NAME = "camel-cli";
+    public static final String MAIN_COMMAND = 
System.getProperty("cli.service.command", "camel");
     private static final Logger LOG = 
LoggerFactory.getLogger(CliLocalContainerService.class);
     private final CliBuiltContainer container;
     private String version;
@@ -113,7 +114,7 @@ public class CliLocalContainerService implements 
CliService, ContainerService<Cl
 
     @Override
     public String execute(String command) {
-        return executeGenericCommand(String.format("camel %s", command));
+        return executeGenericCommand(MAIN_COMMAND + " " + command);
     }
 
     @Override
@@ -215,6 +216,11 @@ public class CliLocalContainerService implements 
CliService, ContainerService<Cl
         return container.getSshPassword();
     }
 
+    @Override
+    public String getMainCommand() {
+        return MAIN_COMMAND;
+    }
+
     private static Map<String, String> getHostsMap() {
         return 
Optional.ofNullable(System.getProperty(CliProperties.EXTRA_HOSTS))
                 .map(p -> p.split(","))
diff --git 
a/test-infra/camel-test-infra-cli/src/test/java/org/apache/camel/test/infra/cli/services/CliService.java
 
b/test-infra/camel-test-infra-cli/src/test/java/org/apache/camel/test/infra/cli/services/CliService.java
index 59580227b5f9..4b6e49ea2262 100644
--- 
a/test-infra/camel-test-infra-cli/src/test/java/org/apache/camel/test/infra/cli/services/CliService.java
+++ 
b/test-infra/camel-test-infra-cli/src/test/java/org/apache/camel/test/infra/cli/services/CliService.java
@@ -74,4 +74,6 @@ public interface CliService extends BeforeEachCallback, 
AfterEachCallback, TestS
     int getSshPort();
 
     String getSshPassword();
+
+    String getMainCommand();
 }

Reply via email to