Claus Ibsen created CAMEL-26039:
-----------------------------------
Summary: camel-jbang - the source validator reports a header of a
component written in the short form of a to step
Key: CAMEL-26039
URL: https://issues.apache.org/jira/browse/CAMEL-26039
Project: Camel
Issue Type: Bug
Components: camel-jbang
Affects Versions: 4.23.0
Reporter: Claus Ibsen
Fix For: 4.24.0
The Camel* header check of the source validator ({{HeaderChecks}}, main
07d2e7a987bc, line 59: {{SCHEME_IN_URI_PATTERN}}, used at line 240) finds the
components of a route only where the text has {{uri: scheme:}}. The short form
of a YAML step, {{- to: aws-secrets-manager:sm?operation=getSecret}}, has no
{{uri:}}, so the component is not seen, and a header of that component set by
the route is reported as not set by the other components:
{noformat}
- route:
from:
uri: timer:tick
steps:
- setHeader:
name: CamelAwsSecretsManagerSecretId
constant: my-secret
- to: aws-secrets-manager:sm?operation=getSecret
{noformat}
gives "Line 8: header CamelAwsSecretsManagerSecretId is not set by timer (the
value would be null)", and "fix them before writing the file"; the same route
with the long form of the step, {{to:}} with {{uri:}} and {{parameters:}}, is
valid. Checked on 4.24.0-SNAPSHOT with the {{camel_validate_source}} tool of
the MCP server. A model told to fix the route changes a correct one.
*Proposed change*: find the scheme of a {{to:}}, {{toD:}}, {{from:}},
{{wireTap:}} and the other endpoint steps in the short form too, or take the
schemes from the parsed routes.
_Claude Code on behalf of davsclaus_
--
This message was sent by Atlassian Jira
(v10.3.26#10030026)