Claus Ibsen created CAMEL-26403:
-----------------------------------
Summary: camel-jbang - camel kubernetes run sets symbolic links
and Java live reload for the export, but they are never used
Key: CAMEL-26403
URL: https://issues.apache.org/jira/browse/CAMEL-26403
Project: Camel
Issue Type: Improvement
Components: camel-jbang
Reporter: Claus Ibsen
Fix For: 4.24.0
h2. Problem
{{camel kubernetes run}} creates its export with {{symbolicLink=true}} and
{{javaLiveReload=false}} ({{KubernetesRun}} passes them as fixed values in the
{{KubernetesExport.ExportConfigurer}}, whether {{--dev}} is used or not).
{{KubernetesExport}} sets them on itself, but they never reach the exporter
that writes the project: {{Export.export(Path, ExportBaseCommand)}} copies
about 50 options to the {{ExportCamelMain}} / {{ExportQuarkus}} /
{{ExportSpringBoot}} command, and these two are not among them.
So the settings have no effect: the source files are always copied, never
linked, and Java live reload is always off.
h2. To decide
* *symbolicLink*: should {{camel kubernetes run}} export with symbolic links at
all? The project is built into a container image (Jib or JKube), and a build
context with symbolic links may not work. {{--dev}} already exports and deploys
again on every change, which works with copied files. If links are not wanted,
the option can be removed from the configurer.
* *javaLiveReload*: live reload of Java code is more tricky here than for
{{camel run --dev}}, as the code runs in a pod, built from the image, and not
in a local JVM that can reload it. It is {{false}} today anyway, so removing it
changes nothing; making it work is a feature of its own.
h2. Note
The export API of CAMEL-24727 (stage 1 of CAMEL-24724) keeps this behaviour on
purpose: the two fields stay on the command and are not passed to the exporter.
Whatever is decided here can then be done on the {{ExportRequest}}, which has
both fields.
_Claude Code on behalf of davsclaus (Claus Ibsen)_
--
This message was sent by Atlassian Jira
(v10.3.26#10030026)