jvrubel opened a new pull request, #27898:
URL: https://github.com/apache/camel/pull/27898
- A new windows-dockerless Maven profile activates automatically via OS
detection (<family>windows</family>) and sets
camel-cli.instance.type=local-camel-cli-process, selecting
CliLocalProcessService instead of
CliLocalContainerService.
- The jbang-it-test profile now forwards camel-cli.instance.type through
Failsafe's <systemPropertyVariables>, so the service selection property reaches
the test JVM correctly.
- On Windows, failsafe.forkCount is reduced to 1 (no Docker-managed
parallelism required) and tests tagged container-only are excluded, since those
rely on container-specific operations such as SSH and
/home/jbang path assumptions.
- Non-Windows behavior is unchanged: camel-cli.instance.type defaults to
local-camel-cli-container and tests run inside a Docker container as before.
**Why bypassing Docker matters**
CliLocalProcessService runs JBang and the Camel CLI directly on the host
via ProcessBuilder, using cmd /c on Windows and /bin/bash -c on Unix. This is
the only execution mode that truly works on Windows — the
container service relies on a Linux image and POSIX paths that are not
available in a standard Windows environment. With this change, contributors on
Windows can run mvn verify -Djbang-it-test and exercise the
same IT suite that CI runs on Linux, without needing Docker Desktop.
**Test plan**
- [ ] On Linux/macOS with Docker: mvn verify -Djbang-it-test —
windows-dockerless profile inactive, container service used, full test suite
runs as before.
- [ ] On Windows: mvn verify -Djbang-it-test — windows-dockerless profile
auto-activates, CliLocalProcessService selected, container-only tests skipped,
remaining tests pass.
- [ ] Explicit override on Windows: mvn verify -Djbang-it-test
-Dcamel-cli.instance.type=local-camel-cli-container — command-line -D takes
priority over the Windows profile, container service is selected.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]