Skip to content

CAMEL-23615: camel-jbang - TUI cold restart for integrations#23595

Merged
davsclaus merged 1 commit into
mainfrom
CAMEL-23615-tui-cold-restart
May 28, 2026
Merged

CAMEL-23615: camel-jbang - TUI cold restart for integrations#23595
davsclaus merged 1 commit into
mainfrom
CAMEL-23615-tui-cold-restart

Conversation

@davsclaus
Copy link
Copy Markdown
Contributor

Summary

  • Add cold restart (r key) on the overview tab to stop and re-launch a selected integration
  • Captures the full command line via ProcessHandle.info() before stopping, then re-launches with the same command and working directory
  • Shows "Restarting/Restarted" notification in the title bar
  • Auto-selects the restarted integration when it reappears

How it works

  1. Press r on overview tab with an integration selected
  2. TUI captures the process command line and working directory
  3. Sends SIGTERM (graceful stop)
  4. Background thread waits for exit (10s timeout, then SIGKILL)
  5. Re-launches with ProcessBuilder using the captured command
  6. lastSelectedName ensures auto-selection on reappear

Test plan

  • Start an integration (camel run timer-log.yaml)
  • Open TUI (camel tui), select integration on overview tab
  • Press r — verify "Restarting: ..." notification appears
  • Verify integration disappears briefly, then reappears
  • Verify it auto-selects and runs normally (exchanges counting from 0)
  • Verify r is not available when infra service is selected
  • Verify footer shows r restart hint when integration is selected

🤖 Generated with Claude Code

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@github-actions github-actions Bot added the dsl label May 28, 2026
@github-actions
Copy link
Copy Markdown
Contributor

🌟 Thank you for your contribution to the Apache Camel project! 🌟
🤖 CI automation will test this PR automatically.

🐫 Apache Camel Committers, please review the following items:

  • First-time contributors require MANUAL approval for the GitHub Actions to run
  • You can use the command /component-test (camel-)component-name1 (camel-)component-name2.. to request a test from the test bot although they are normally detected and executed by CI.
  • You can label PRs using skip-tests and test-dependents to fine-tune the checks executed by this PR.
  • Build and test logs are available in the summary page. Only Apache Camel committers have access to the summary.

⚠️ Be careful when sharing logs. Review their contents before sharing them publicly.

@davsclaus davsclaus merged commit e419a5d into main May 28, 2026
6 checks passed
@davsclaus davsclaus deleted the CAMEL-23615-tui-cold-restart branch May 28, 2026 09:26
@github-actions
Copy link
Copy Markdown
Contributor

🧪 CI tested the following changed modules:

  • dsl/camel-jbang/camel-jbang-plugin-tui
All tested modules (2 modules)
  • Camel :: JBang :: Plugin :: TUI
  • Camel :: Launcher :: Container

⚙️ View full build and test results

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant