Claus Ibsen created CAMEL-24807:
-----------------------------------

             Summary: camel-yaml-dsl - Deprecate Pipe (aka KameletBinding) 
support
                 Key: CAMEL-24807
                 URL: https://issues.apache.org/jira/browse/CAMEL-24807
             Project: Camel
          Issue Type: Improvement
          Components: camel-yaml-dsl
            Reporter: Claus Ibsen


The YAML DSL can load Kubernetes-style {{kind: Pipe}} (formerly 
{{KameletBinding}}) files from Camel K, converting 
{{source}}/{{sink}}/{{steps}} and the Pipe {{errorHandler}} into a regular 
route at load time ({{YamlRoutesBuilderLoader.preConfigurePipe}}, the 
{{*.pipe.yaml}} extension).

This is a Camel K construct rather than a Camel feature. A plain YAML route is 
more expressive (any EIP, multiple routes per file, error handling, route 
configuration), is what the tooling, the catalog, the validator and the AI 
tools work on, and is what the documentation teaches. Keeping a second, more 
limited way of writing the same thing costs maintenance for little gain.

Deprecate Pipe support in the YAML DSL in 4.x so it can be removed in the next 
major:

* log a deprecation WARN when a Pipe file is loaded, pointing to writing a 
plain route instead
* mark the Pipe handling in {{YamlRoutesBuilderLoader}} and the {{pipe.yaml}} 
extension as deprecated
* document the deprecation in the YAML DSL page and in the upgrade guide, with 
an example of the equivalent route
* camel-jbang: the {{init}} Pipe template ({{init-pipe.yaml.ftl}}, 
{{pipe.yaml.tmpl}}) and the {{bind}} command follow CAMEL-21521

Related: CAMEL-21521 (remove the {{camel bind}} command).



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to