CAMEL-23147: Embed citrus test plugin in camel-launcher#21979
CAMEL-23147: Embed citrus test plugin in camel-launcher#21979
Conversation
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
🌟 Thank you for your contribution to the Apache Camel project! 🌟 🐫 Apache Camel Committers, please review the following items:
|
Review notes — potential downsides to consider1. CLI backward compatibilityThe old 2. Templates bundled & may driftThe Citrus test templates ( 3. Larger launcher footprintThe test plugin was previously excluded from the launcher with the comment "the citrus test plugin cannot be embedded". Now it's pre-installed, pulling 4. System property side effects
5. Reduced Citrus feature coverageThe old approach delegated entirely to Citrus JBang, so new Citrus features were automatically available. The new in-process 6. No test coverage
The architectural improvement (in-process vs spawning JBang) is the right direction. It would be good to coordinate with the Citrus project to ensure the in-process API ( |
|
@christophd take a look - this should ideally help and also allow us to embed citrus directly in launcher so its included OOTB, and hopefully also just runs nicely on windows. |
Summary
TestInit,TestRun) instead of indirect JBang process calls viacitrus-jbang-connectorcitrus-jbang-connectordependency withcitrus-base, which provides all needed Citrus APIs (TestEngine,TestRunConfiguration,CitrusVersion, etc.) without requiring JBangCitrusExecutionStrategythat spawned external JBang processes to run Citrus commandscamel-launcherTest plan
camel test init MyTest.yamlcreates a test file from template in the test subfoldercamel test runexecutes Citrus tests directly without spawning JBang processesTestPluginExportercamel test --helpshows subcommands