This is an automated email from the ASF dual-hosted git repository. davsclaus pushed a commit to branch db in repository https://gitbox.apache.org/repos/asf/camel.git
commit ccf6502d69309f430ca35d9b9336ada1497d5487 Author: Claus Ibsen <[email protected]> AuthorDate: Sun Mar 8 18:39:07 2026 +0100 CAMEL-23154: camel-jbang - Deprecate bind command --- docs/user-manual/modules/ROOT/pages/camel-jbang.adoc | 2 ++ .../main/java/org/apache/camel/dsl/jbang/core/commands/bind/Bind.java | 3 ++- .../org/apache/camel/dsl/jbang/core/commands/bind/BindingProvider.java | 1 + .../dsl/jbang/core/commands/bind/KnativeBrokerBindingProvider.java | 1 + .../dsl/jbang/core/commands/bind/KnativeChannelBindingProvider.java | 1 + .../dsl/jbang/core/commands/bind/ObjectReferenceBindingProvider.java | 1 + .../org/apache/camel/dsl/jbang/core/commands/bind/PipeProvider.java | 1 + .../dsl/jbang/core/commands/bind/StrimziKafkaTopicBindingProvider.java | 1 + .../apache/camel/dsl/jbang/core/commands/bind/TemplateProvider.java | 1 + .../apache/camel/dsl/jbang/core/commands/bind/UriBindingProvider.java | 1 + .../camel/dsl/jbang/core/commands/bind/BindKnativeBrokerTest.java | 1 + .../camel/dsl/jbang/core/commands/bind/BindKnativeChannelTest.java | 1 + .../camel/dsl/jbang/core/commands/bind/BindObjectReferenceTest.java | 1 + .../camel/dsl/jbang/core/commands/bind/BindStrimziKafkaTopicTest.java | 1 + .../java/org/apache/camel/dsl/jbang/core/commands/bind/BindTest.java | 1 + 15 files changed, 17 insertions(+), 1 deletion(-) diff --git a/docs/user-manual/modules/ROOT/pages/camel-jbang.adoc b/docs/user-manual/modules/ROOT/pages/camel-jbang.adoc index 625f6955756a..8c8709230618 100644 --- a/docs/user-manual/modules/ROOT/pages/camel-jbang.adoc +++ b/docs/user-manual/modules/ROOT/pages/camel-jbang.adoc @@ -1312,6 +1312,8 @@ camel run joke.yaml ==== Binding Kamelets in a pipe +WARNING: The bind command is deprecated from Camel 4.19 onwards + Camel JBang is able to create the Pipe custom resource for you. You can use the `bind` command to specify a source and a sink that should be set in the pipe. As a result, Camel JBang will create a proper Pipe custom resource for you. diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/bind/Bind.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/bind/Bind.java index 28ec26478785..a1fceaf30877 100644 --- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/bind/Bind.java +++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/bind/Bind.java @@ -36,8 +36,9 @@ import org.apache.camel.util.json.Jsoner; import picocli.CommandLine; import picocli.CommandLine.Command; -@Command(name = "bind", description = "Bind source and sink Kamelets as a new Camel integration", +@Command(name = "bind", description = "DEPRECATED: Bind source and sink Kamelets as a new Camel integration", sortOptions = false, showDefaultValues = true) +@Deprecated(since = "4.19") public class Bind extends CamelCommand { @CommandLine.Parameters(description = "Name of binding file to be saved", arity = "1", diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/bind/BindingProvider.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/bind/BindingProvider.java index 64df50ced405..432dd60f274a 100644 --- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/bind/BindingProvider.java +++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/bind/BindingProvider.java @@ -24,6 +24,7 @@ import java.util.Map; * may represent a Kamelet, Camel endpoint URI or a Kubernetes object reference such as a reference to a Knative broker * for instance. Implementations must not hold any state as the binding provider instance is used for multiple calls. */ +@Deprecated public interface BindingProvider { String getEndpoint( diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/bind/KnativeBrokerBindingProvider.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/bind/KnativeBrokerBindingProvider.java index 8413e1479a1a..10019a1e5526 100644 --- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/bind/KnativeBrokerBindingProvider.java +++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/bind/KnativeBrokerBindingProvider.java @@ -24,6 +24,7 @@ import org.apache.camel.util.StringHelper; /** * Binding to a Knative broker resource. */ +@Deprecated public class KnativeBrokerBindingProvider extends ObjectReferenceBindingProvider { private static final String prefix = "knative:broker:"; diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/bind/KnativeChannelBindingProvider.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/bind/KnativeChannelBindingProvider.java index b134633dd7ab..efb107dbfb8a 100644 --- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/bind/KnativeChannelBindingProvider.java +++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/bind/KnativeChannelBindingProvider.java @@ -21,6 +21,7 @@ import java.util.Map; import org.apache.camel.util.StringHelper; +@Deprecated public class KnativeChannelBindingProvider extends ObjectReferenceBindingProvider { private static final String prefix = "knative:channel:"; diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/bind/ObjectReferenceBindingProvider.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/bind/ObjectReferenceBindingProvider.java index f93db17eea85..b46259df8b35 100644 --- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/bind/ObjectReferenceBindingProvider.java +++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/bind/ObjectReferenceBindingProvider.java @@ -36,6 +36,7 @@ import org.apache.camel.util.URISupport; * specify resource properties. Subclasses may add logic for a very specific Kubernetes resource such as Kamelets or * Knative brokers. */ +@Deprecated public class ObjectReferenceBindingProvider implements BindingProvider { private static final Pattern OBJECT_REFERENCE_URI_PATTERN diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/bind/PipeProvider.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/bind/PipeProvider.java index 26cd72bcb9d8..af8334bcd66d 100644 --- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/bind/PipeProvider.java +++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/bind/PipeProvider.java @@ -46,6 +46,7 @@ import static org.apache.camel.dsl.yaml.common.YamlDeserializerSupport.nodeAt; * Binding to Kamelets as Kubernetes object references. Automatically resolves Kamelet from catalog and reads required * properties. Adds required properties as placeholder to the object reference when not set already by the user. */ +@Deprecated public class PipeProvider extends ObjectReferenceBindingProvider { private static final String prefix = "kamelet:"; diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/bind/StrimziKafkaTopicBindingProvider.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/bind/StrimziKafkaTopicBindingProvider.java index 7482e870dcb5..bfa989c743c7 100644 --- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/bind/StrimziKafkaTopicBindingProvider.java +++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/bind/StrimziKafkaTopicBindingProvider.java @@ -24,6 +24,7 @@ import org.apache.camel.util.StringHelper; /** * Binding to a Strimzi Kafka topic resource. */ +@Deprecated public class StrimziKafkaTopicBindingProvider extends ObjectReferenceBindingProvider { private static final String prefix = "kafka:topic:"; diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/bind/TemplateProvider.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/bind/TemplateProvider.java index 75fe1e7a8bc2..3a71f326783a 100644 --- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/bind/TemplateProvider.java +++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/bind/TemplateProvider.java @@ -26,6 +26,7 @@ import org.apache.camel.util.StringHelper; * Helper class provides access to the templates that construct the Pipe resource. Subclasses may overwrite the provider * to inject their own templates. */ +@Deprecated public interface TemplateProvider { default InputStream getPipeTemplate() { return TemplateProvider.class.getClassLoader().getResourceAsStream("templates/pipe.yaml.tmpl"); diff --git a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/bind/UriBindingProvider.java b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/bind/UriBindingProvider.java index 746952e6db54..39babfa3b95f 100644 --- a/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/bind/UriBindingProvider.java +++ b/dsl/camel-jbang/camel-jbang-core/src/main/java/org/apache/camel/dsl/jbang/core/commands/bind/UriBindingProvider.java @@ -26,6 +26,7 @@ import org.apache.camel.util.IOHelper; import org.apache.camel.util.StringHelper; import org.apache.camel.util.URISupport; +@Deprecated public class UriBindingProvider implements BindingProvider { private static final Pattern CAMEL_ENDPOINT_URI_PATTERN = Pattern.compile("^[a-z0-9+][a-zA-Z0-9-+]*:.*$"); diff --git a/dsl/camel-jbang/camel-jbang-core/src/test/java/org/apache/camel/dsl/jbang/core/commands/bind/BindKnativeBrokerTest.java b/dsl/camel-jbang/camel-jbang-core/src/test/java/org/apache/camel/dsl/jbang/core/commands/bind/BindKnativeBrokerTest.java index 299281b1cfe0..735c4decd6e8 100644 --- a/dsl/camel-jbang/camel-jbang-core/src/test/java/org/apache/camel/dsl/jbang/core/commands/bind/BindKnativeBrokerTest.java +++ b/dsl/camel-jbang/camel-jbang-core/src/test/java/org/apache/camel/dsl/jbang/core/commands/bind/BindKnativeBrokerTest.java @@ -23,6 +23,7 @@ import org.apache.camel.util.StringHelper; import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.Test; +@Deprecated class BindKnativeBrokerTest extends CamelCommandBaseTestSupport { @Test diff --git a/dsl/camel-jbang/camel-jbang-core/src/test/java/org/apache/camel/dsl/jbang/core/commands/bind/BindKnativeChannelTest.java b/dsl/camel-jbang/camel-jbang-core/src/test/java/org/apache/camel/dsl/jbang/core/commands/bind/BindKnativeChannelTest.java index c7db0d26bdeb..d7d04ffab962 100644 --- a/dsl/camel-jbang/camel-jbang-core/src/test/java/org/apache/camel/dsl/jbang/core/commands/bind/BindKnativeChannelTest.java +++ b/dsl/camel-jbang/camel-jbang-core/src/test/java/org/apache/camel/dsl/jbang/core/commands/bind/BindKnativeChannelTest.java @@ -23,6 +23,7 @@ import org.apache.camel.util.StringHelper; import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.Test; +@Deprecated class BindKnativeChannelTest extends CamelCommandBaseTestSupport { @Test diff --git a/dsl/camel-jbang/camel-jbang-core/src/test/java/org/apache/camel/dsl/jbang/core/commands/bind/BindObjectReferenceTest.java b/dsl/camel-jbang/camel-jbang-core/src/test/java/org/apache/camel/dsl/jbang/core/commands/bind/BindObjectReferenceTest.java index 071b0d371b0b..dc4b15b04d3f 100644 --- a/dsl/camel-jbang/camel-jbang-core/src/test/java/org/apache/camel/dsl/jbang/core/commands/bind/BindObjectReferenceTest.java +++ b/dsl/camel-jbang/camel-jbang-core/src/test/java/org/apache/camel/dsl/jbang/core/commands/bind/BindObjectReferenceTest.java @@ -25,6 +25,7 @@ import org.junit.jupiter.api.Test; import static org.assertj.core.api.Assertions.assertThat; +@Deprecated class BindObjectReferenceTest extends CamelCommandBaseTestSupport { @Test diff --git a/dsl/camel-jbang/camel-jbang-core/src/test/java/org/apache/camel/dsl/jbang/core/commands/bind/BindStrimziKafkaTopicTest.java b/dsl/camel-jbang/camel-jbang-core/src/test/java/org/apache/camel/dsl/jbang/core/commands/bind/BindStrimziKafkaTopicTest.java index 65cfdc8c9032..50d3ccd7df98 100644 --- a/dsl/camel-jbang/camel-jbang-core/src/test/java/org/apache/camel/dsl/jbang/core/commands/bind/BindStrimziKafkaTopicTest.java +++ b/dsl/camel-jbang/camel-jbang-core/src/test/java/org/apache/camel/dsl/jbang/core/commands/bind/BindStrimziKafkaTopicTest.java @@ -23,6 +23,7 @@ import org.apache.camel.util.StringHelper; import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.Test; +@Deprecated class BindStrimziKafkaTopicTest extends CamelCommandBaseTestSupport { @Test diff --git a/dsl/camel-jbang/camel-jbang-core/src/test/java/org/apache/camel/dsl/jbang/core/commands/bind/BindTest.java b/dsl/camel-jbang/camel-jbang-core/src/test/java/org/apache/camel/dsl/jbang/core/commands/bind/BindTest.java index 2097c88e7bb2..d5834f4de972 100644 --- a/dsl/camel-jbang/camel-jbang-core/src/test/java/org/apache/camel/dsl/jbang/core/commands/bind/BindTest.java +++ b/dsl/camel-jbang/camel-jbang-core/src/test/java/org/apache/camel/dsl/jbang/core/commands/bind/BindTest.java @@ -23,6 +23,7 @@ import org.apache.camel.util.StringHelper; import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.Test; +@Deprecated class BindTest extends CamelCommandBaseTestSupport { @Test
