Claus Ibsen created CAMEL-23569:
-----------------------------------
Summary: camel-tui: Add support for camel-test-infra services
Key: CAMEL-23569
URL: https://issues.apache.org/jira/browse/CAMEL-23569
Project: Camel
Issue Type: Improvement
Components: camel-jbang
Reporter: Claus Ibsen
Add camel-test-infra service management to the TUI monitor (camel monitor
command).
Currently the TUI only shows running Camel integrations and their routes. The
CLI already has full infra service lifecycle support via "camel infra
run/stop/ps/get/log" commands, but the TUI has no awareness of running infra
services.
Proposed features:
*Overview page - Infra services table*
- Discover running infra services by scanning ~/.camel/ for infra-*.json files
- Show them in a separate table below the integrations table with columns: PID,
SERVICE, STATUS, PORT, HOST
- Separate table state and navigation (infrastructure services have a
fundamentally different schema than integrations)
*Info panel - Connection details*
- When an infra service is selected, show its connection metadata (hostname,
port, username, connection URL, etc.) in the info panel
- The data is already available in the infra-{service}-{pid}.json files written
by "camel infra run"
*Infra service logs*
- When an infra service is selected and the Log tab is opened, show its
container logs from infra-{service}-{pid}.log
- Reuse the existing incremental log reading infrastructure
*Start/stop/kill infra services*
- Stop: delete the infra JSON file (triggers graceful shutdown in the InfraRun
process)
- Kill: ProcessHandle.destroyForcibly() for force kill
- Start: spawn a background process via ProcessBuilder ("camel infra run
{service} --background")
- Support custom port via --port option when starting
*Stop/kill running integrations*
- Currently the overview tab only supports stopping/starting all routes for an
integration (p key)
- Add the ability to stop (SIGTERM) or kill (SIGKILL) the entire integration
process
- This is separate from route lifecycle management
--
This message was sent by Atlassian Jira
(v8.20.10#820010)