[
https://issues.apache.org/jira/browse/CAMEL-24728?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18115205#comment-18115205
]
Guillaume Nodet commented on CAMEL-24728:
-----------------------------------------
This sub-task (stage 3) depends on the prerequisite stages CAMEL-24726 (stage
1: camel-jbang-runner module) and CAMEL-24727 (stage 2: camel-jbang-export
ExportRequest). Neither has been implemented yet on main: the classes
ProjectRunner, LaunchOptions, LaunchCommand, and ExportRequest do not exist in
the codebase.
This task cannot be actioned until stages 1 and 2 land. It will be re-triaged
once those issues are marked resolved or their PRs are merged.
_Note: This comment was generated by an AI coding agent and requires manual
verification._
> camel-jbang: stage 3 - migrate Camel TUI to camel-jbang-runner Java API
> -----------------------------------------------------------------------
>
> Key: CAMEL-24728
> URL: https://issues.apache.org/jira/browse/CAMEL-24728
> Project: Camel
> Issue Type: Sub-task
> Reporter: Ricardo Martinez
> Priority: Trivial
>
> h2. Motivation
> The Camel TUI currently builds a {{camel run --runtime=<x> ...}} argv and
> spawns a subprocess via ProcessBuilder. This ties the TUI and other projects
> like Kaoto, to the CLI option surface and breaks whenever CLI options change.
> With camel-jbang-runner available, the TUI can call the Java API directly.
> h2. What changes
> Changes in {{camel-jbang-plugin-tui}} only. No changes to camel-jbang-core,
> camel-jbang-export or camel-jbang-runner (except additive changes to
> LaunchOptions if a needed field is missing).
> * RunOptionsForm / LaunchManager build an {{ExportRequest}} +
> {{LaunchOptions}} instead of assembling a {{camel run}} argv, then start the
> {{LaunchCommand}} returned by {{ProjectRunner}}.
> * {{--runtime=jbang}} keeps spawning the CLI binary — that runtime is by
> definition in-process and the TUI must not host user routes in its own JVM.
> * Log tailing (~/.camel/<name>.log) is unchanged; {{LaunchOptions.logFile}}
> carries the path.
> h2. Compatibility
> No change to CLI options or behaviour. No change to other modules.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)