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

Reply via email to