You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by ja...@apache.org on 2024/03/28 07:11:07 UTC

(camel-quarkus) branch main updated (5775113393 -> d4540b6af2)

This is an automated email from the ASF dual-hosted git repository.

jamesnetherton pushed a change to branch main
in repository https://gitbox.apache.org/repos/asf/camel-quarkus.git


    from 5775113393 Update CHANGELOG.md for Camel Quarkus 3.9.0 release
     new ee337cb4e9 Move Kubernetes cluster service to its own module
     new a44bf49cbe Move FileLock cluster service to its own module
     new 5d2c7a90cd Update Telegram extension metadata
     new d4540b6af2 Regen

The 4 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 docs/modules/ROOT/nav.adoc                         |   2 +
 .../{file.adoc => file-cluster-service.adoc}       |  43 +++----
 .../ROOT/pages/reference/extensions/file.adoc      |  82 --------------
 ...rnetes.adoc => kubernetes-cluster-service.adoc} |  85 +++-----------
 .../pages/reference/extensions/kubernetes.adoc     | 124 ---------------------
 .../deployment/pom.xml                             |  15 ++-
 .../FileLockClusterServiceProcessor.java           |   0
 ...LockClusterServiceConfigDefaultEnabledTest.java |   1 -
 .../FileLockClusterServiceConfigDefaultTest.java   |   3 +-
 ...kClusterServiceConfigNonDefaultEnabledTest.java |   1 -
 ...ileLockClusterServiceConfigNotEnabledTest.java} |   4 +-
 extensions/{as2 => file-cluster-service}/pom.xml   |   4 +-
 .../file-cluster-service}/runtime/pom.xml          |  17 ++-
 .../runtime/src/main/doc/configuration.adoc        |   3 +-
 .../file/cluster/FileLockClusterServiceConfig.java |  12 +-
 .../cluster/FileLockClusterServiceRecorder.java    |   0
 .../main/resources/META-INF/quarkus-extension.yaml |   7 +-
 extensions/file/deployment/pom.xml                 |   5 -
 .../deployment/pom.xml                             |  12 +-
 .../KubernetesClusterServiceProcessor.java         |   0
 .../KubernetesClusterServiceConfigDefaultTest.java |   2 +-
 ...terServiceConfigEnabledWithRebalancingTest.java |   3 +-
 ...terServiceConfigEnabledWithoutDefaultsTest.java |   3 +-
 ...ServiceConfigEnabledWithoutRebalancingTest.java |   3 +-
 .../{as2 => kubernetes-cluster-service}/pom.xml    |   4 +-
 .../runtime/pom.xml                                |  16 +--
 .../runtime/src/main/doc/configuration.adoc        |  22 ++--
 .../KubernetesClusterServiceBuildTimeConfig.java   |   8 +-
 .../cluster/KubernetesClusterServiceRecorder.java  |   0
 .../KubernetesClusterServiceRuntimeConfig.java     |   0
 .../main/resources/META-INF/quarkus-extension.yaml |   7 +-
 extensions/kubernetes/deployment/pom.xml           |   5 -
 .../runtime/src/main/doc/configuration.adoc        |  23 ----
 extensions/pom.xml                                 |   2 +
 .../main/resources/META-INF/quarkus-extension.yaml |   2 +-
 integration-tests/master-file/pom.xml              |   4 +
 .../src/main/resources/application.properties      |   1 -
 integration-tests/master-openshift/pom.xml         |   4 +
 .../src/main/resources/application.properties      |   1 -
 poms/bom/pom.xml                                   |  20 ++++
 poms/bom/src/main/generated/flattened-full-pom.xml |  20 ++++
 .../src/main/generated/flattened-reduced-pom.xml   |  20 ++++
 .../generated/flattened-reduced-verbose-pom.xml    |  20 ++++
 43 files changed, 193 insertions(+), 417 deletions(-)
 copy docs/modules/ROOT/pages/reference/extensions/{file.adoc => file-cluster-service.adoc} (72%)
 copy docs/modules/ROOT/pages/reference/extensions/{kubernetes.adoc => kubernetes-cluster-service.adoc} (53%)
 copy extensions/{microprofile-health => file-cluster-service}/deployment/pom.xml (85%)
 rename extensions/{file => file-cluster-service}/deployment/src/main/java/org/apache/camel/quarkus/component/file/cluster/deployment/FileLockClusterServiceProcessor.java (100%)
 rename extensions/{file => file-cluster-service}/deployment/src/test/java/org/apache/camel/quarkus/component/file/cluster/deployment/FileLockClusterServiceConfigDefaultEnabledTest.java (97%)
 copy extensions/{file => file-cluster-service}/deployment/src/test/java/org/apache/camel/quarkus/component/file/cluster/deployment/FileLockClusterServiceConfigDefaultTest.java (98%)
 rename extensions/{file => file-cluster-service}/deployment/src/test/java/org/apache/camel/quarkus/component/file/cluster/deployment/FileLockClusterServiceConfigNonDefaultEnabledTest.java (98%)
 rename extensions/{file/deployment/src/test/java/org/apache/camel/quarkus/component/file/cluster/deployment/FileLockClusterServiceConfigDefaultTest.java => file-cluster-service/deployment/src/test/java/org/apache/camel/quarkus/component/file/cluster/deployment/FileLockClusterServiceConfigNotEnabledTest.java} (94%)
 copy extensions/{as2 => file-cluster-service}/pom.xml (92%)
 copy {extensions-jvm/dns => extensions/file-cluster-service}/runtime/pom.xml (87%)
 copy extensions/{file => file-cluster-service}/runtime/src/main/doc/configuration.adoc (89%)
 rename extensions/{file => file-cluster-service}/runtime/src/main/java/org/apache/camel/quarkus/component/file/cluster/FileLockClusterServiceConfig.java (86%)
 rename extensions/{file => file-cluster-service}/runtime/src/main/java/org/apache/camel/quarkus/component/file/cluster/FileLockClusterServiceRecorder.java (100%)
 copy {extensions-core/core-cloud => extensions/file-cluster-service}/runtime/src/main/resources/META-INF/quarkus-extension.yaml (88%)
 copy extensions/{kubernetes => kubernetes-cluster-service}/deployment/pom.xml (85%)
 rename extensions/{kubernetes => kubernetes-cluster-service}/deployment/src/main/java/org/apache/camel/quarkus/component/kubernetes/cluster/deployment/KubernetesClusterServiceProcessor.java (100%)
 rename extensions/{kubernetes => kubernetes-cluster-service}/deployment/src/test/java/org/apache/camel/quarkus/component/kubernetes/cluster/deployment/KubernetesClusterServiceConfigDefaultTest.java (97%)
 rename extensions/{kubernetes => kubernetes-cluster-service}/deployment/src/test/java/org/apache/camel/quarkus/component/kubernetes/cluster/deployment/KubernetesClusterServiceConfigEnabledWithRebalancingTest.java (95%)
 rename extensions/{kubernetes => kubernetes-cluster-service}/deployment/src/test/java/org/apache/camel/quarkus/component/kubernetes/cluster/deployment/KubernetesClusterServiceConfigEnabledWithoutDefaultsTest.java (97%)
 rename extensions/{kubernetes => kubernetes-cluster-service}/deployment/src/test/java/org/apache/camel/quarkus/component/kubernetes/cluster/deployment/KubernetesClusterServiceConfigEnabledWithoutRebalancingTest.java (96%)
 copy extensions/{as2 => kubernetes-cluster-service}/pom.xml (91%)
 copy extensions/{kubernetes => kubernetes-cluster-service}/runtime/pom.xml (86%)
 rename extensions/{file => kubernetes-cluster-service}/runtime/src/main/doc/configuration.adoc (53%)
 rename extensions/{kubernetes => kubernetes-cluster-service}/runtime/src/main/java/org/apache/camel/quarkus/component/kubernetes/cluster/KubernetesClusterServiceBuildTimeConfig.java (87%)
 rename extensions/{kubernetes => kubernetes-cluster-service}/runtime/src/main/java/org/apache/camel/quarkus/component/kubernetes/cluster/KubernetesClusterServiceRecorder.java (100%)
 rename extensions/{kubernetes => kubernetes-cluster-service}/runtime/src/main/java/org/apache/camel/quarkus/component/kubernetes/cluster/KubernetesClusterServiceRuntimeConfig.java (100%)
 copy {extensions-core/core-cloud => extensions/kubernetes-cluster-service}/runtime/src/main/resources/META-INF/quarkus-extension.yaml (87%)


(camel-quarkus) 02/04: Move FileLock cluster service to its own module

Posted by ja...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

jamesnetherton pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel-quarkus.git

commit a44bf49cbe1738b25118a0e8a2e5171b9d0c93b7
Author: Luca Burgazzoli <lb...@gmail.com>
AuthorDate: Mon Mar 25 11:20:57 2024 +0100

    Move FileLock cluster service to its own module
---
 .../{file.adoc => file-cluster-service.adoc}       | 43 ++++--------
 .../ROOT/pages/reference/extensions/file.adoc      | 82 ----------------------
 .../deployment/pom.xml                             | 12 ++--
 .../FileLockClusterServiceProcessor.java           |  0
 ...LockClusterServiceConfigDefaultEnabledTest.java |  1 -
 .../FileLockClusterServiceConfigDefaultTest.java   |  3 +-
 ...kClusterServiceConfigNonDefaultEnabledTest.java |  1 -
 ...ileLockClusterServiceConfigNotEnabledTest.java} |  4 +-
 extensions/file-cluster-service/pom.xml            | 37 ++++++++++
 .../runtime}/pom.xml                               | 50 ++++++++++---
 .../runtime/src/main/doc/configuration.adoc        |  3 +-
 .../file/cluster/FileLockClusterServiceConfig.java | 12 ++--
 .../cluster/FileLockClusterServiceRecorder.java    |  0
 .../main/resources/META-INF/quarkus-extension.yaml | 32 +++++++++
 extensions/file/deployment/pom.xml                 |  5 --
 extensions/pom.xml                                 |  1 +
 integration-tests/master-file/pom.xml              |  4 ++
 .../src/main/resources/application.properties      |  1 -
 poms/bom/pom.xml                                   | 10 +++
 poms/bom/src/main/generated/flattened-full-pom.xml | 20 ++++++
 .../src/main/generated/flattened-reduced-pom.xml   | 20 ++++++
 .../generated/flattened-reduced-verbose-pom.xml    | 20 ++++++
 22 files changed, 221 insertions(+), 140 deletions(-)

diff --git a/docs/modules/ROOT/pages/reference/extensions/file.adoc b/docs/modules/ROOT/pages/reference/extensions/file-cluster-service.adoc
similarity index 72%
copy from docs/modules/ROOT/pages/reference/extensions/file.adoc
copy to docs/modules/ROOT/pages/reference/extensions/file-cluster-service.adoc
index 39f1d45907..c700ca0686 100644
--- a/docs/modules/ROOT/pages/reference/extensions/file.adoc
+++ b/docs/modules/ROOT/pages/reference/extensions/file-cluster-service.adoc
@@ -1,36 +1,28 @@
 // Do not edit directly!
 // This file was generated by camel-quarkus-maven-plugin:update-extension-doc-page
-[id="extensions-file"]
-= File
-:page-aliases: extensions/file.adoc
+[id="extensions-file-cluster-service"]
+= File Cluster Service
 :linkattrs:
-:cq-artifact-id: camel-quarkus-file
+:cq-artifact-id: camel-quarkus-file-cluster-service
 :cq-native-supported: true
 :cq-status: Stable
 :cq-status-deprecation: Stable
-:cq-description: Read and write files.
+:cq-description: Provides a FileLock implementation of the Camel Cluster Service SPI
 :cq-deprecated: false
-:cq-jvm-since: 0.4.0
-:cq-native-since: 0.4.0
+:cq-jvm-since: 3.10.0
+:cq-native-since: 3.10.0
 
 ifeval::[{doc-show-badges} == true]
 [.badges]
-[.badge-key]##JVM since##[.badge-supported]##0.4.0## [.badge-key]##Native since##[.badge-supported]##0.4.0##
+[.badge-key]##JVM since##[.badge-supported]##3.10.0## [.badge-key]##Native since##[.badge-supported]##3.10.0##
 endif::[]
 
-Read and write files.
+Provides a FileLock implementation of the Camel Cluster Service SPI
 
-[id="extensions-file-whats-inside"]
-== What's inside
-
-* xref:{cq-camel-components}::file-component.adoc[File component], URI syntax: `file:directoryName`
-
-Please refer to the above link for usage and configuration details.
-
-[id="extensions-file-maven-coordinates"]
+[id="extensions-file-cluster-service-maven-coordinates"]
 == Maven coordinates
 
-https://{link-quarkus-code-generator}/?extension-search=camel-quarkus-file[Create a new project with this extension on {link-quarkus-code-generator}, window="_blank"]
+https://{link-quarkus-code-generator}/?extension-search=camel-quarkus-file-cluster-service[Create a new project with this extension on {link-quarkus-code-generator}, window="_blank"]
 
 Or add the coordinates to your existing project:
 
@@ -38,18 +30,18 @@ Or add the coordinates to your existing project:
 ----
 <dependency>
     <groupId>org.apache.camel.quarkus</groupId>
-    <artifactId>camel-quarkus-file</artifactId>
+    <artifactId>camel-quarkus-file-cluster-service</artifactId>
 </dependency>
 ----
 ifeval::[{doc-show-user-guide-link} == true]
 Check the xref:user-guide/index.adoc[User guide] for more information about writing Camel Quarkus applications.
 endif::[]
 
-[id="extensions-file-additional-camel-quarkus-configuration"]
+[id="extensions-file-cluster-service-additional-camel-quarkus-configuration"]
 == Additional Camel Quarkus configuration
 
 
-[id="extensions-file-configuration-having-only-a-single-consumer-in-a-cluster-consuming-from-a-given-endpoint"]
+[id="extensions-file-cluster-service-configuration-having-only-a-single-consumer-in-a-cluster-consuming-from-a-given-endpoint"]
 === Having only a single consumer in a cluster consuming from a given endpoint
 
 When the same route is deployed on multiple JVMs, it could be interesting to use this extension in conjunction with the xref:reference/extensions/master.adoc[Master one].
@@ -61,10 +53,9 @@ For instance, having the route below deployed on multiple JVMs:
 from("master:ns:timer:test?period=100").log("Timer invoked on a single JVM at a time");
 ```
 
-It's possible to enable the file cluster service with a property like below:
+It's possible to configure the file cluster service with a property like below:
 
 ```
-quarkus.camel.cluster.file.enabled = true
 quarkus.camel.cluster.file.root = target/cluster-folder-where-lock-file-will-be-held
 ```
 
@@ -80,12 +71,6 @@ The file cluster service could further be tuned by tweaking `quarkus.camel.clust
 | Configuration property | Type | Default
 
 
-|icon:lock[title=Fixed at build time] [[quarkus.camel.cluster.file.enabled]]`link:#quarkus.camel.cluster.file.enabled[quarkus.camel.cluster.file.enabled]`
-
-Whether a File Lock Cluster Service should be automatically configured according to 'quarkus.camel.cluster.file.++*++' configurations.
-| `boolean`
-| `false`
-
 |icon:lock[title=Fixed at build time] [[quarkus.camel.cluster.file.id]]`link:#quarkus.camel.cluster.file.id[quarkus.camel.cluster.file.id]`
 
 The cluster service ID (defaults to null).
diff --git a/docs/modules/ROOT/pages/reference/extensions/file.adoc b/docs/modules/ROOT/pages/reference/extensions/file.adoc
index 39f1d45907..5c4676e61d 100644
--- a/docs/modules/ROOT/pages/reference/extensions/file.adoc
+++ b/docs/modules/ROOT/pages/reference/extensions/file.adoc
@@ -44,85 +44,3 @@ Or add the coordinates to your existing project:
 ifeval::[{doc-show-user-guide-link} == true]
 Check the xref:user-guide/index.adoc[User guide] for more information about writing Camel Quarkus applications.
 endif::[]
-
-[id="extensions-file-additional-camel-quarkus-configuration"]
-== Additional Camel Quarkus configuration
-
-
-[id="extensions-file-configuration-having-only-a-single-consumer-in-a-cluster-consuming-from-a-given-endpoint"]
-=== Having only a single consumer in a cluster consuming from a given endpoint
-
-When the same route is deployed on multiple JVMs, it could be interesting to use this extension in conjunction with the xref:reference/extensions/master.adoc[Master one].
-In such a setup, a single consumer will be active at a time across the whole camel master namespace.
-
-For instance, having the route below deployed on multiple JVMs:
-
-```
-from("master:ns:timer:test?period=100").log("Timer invoked on a single JVM at a time");
-```
-
-It's possible to enable the file cluster service with a property like below:
-
-```
-quarkus.camel.cluster.file.enabled = true
-quarkus.camel.cluster.file.root = target/cluster-folder-where-lock-file-will-be-held
-```
-
-As a result, a single consumer will be active across the `ns` camel master namespace.
-It means that, at a given time, only a single timer will generate exchanges across all JVMs.
-In other words, messages will be logged every 100ms on a single JVM at a time.
-
-The file cluster service could further be tuned by tweaking `quarkus.camel.cluster.file.*` properties.
-
-
-[width="100%",cols="80,5,15",options="header"]
-|===
-| Configuration property | Type | Default
-
-
-|icon:lock[title=Fixed at build time] [[quarkus.camel.cluster.file.enabled]]`link:#quarkus.camel.cluster.file.enabled[quarkus.camel.cluster.file.enabled]`
-
-Whether a File Lock Cluster Service should be automatically configured according to 'quarkus.camel.cluster.file.++*++' configurations.
-| `boolean`
-| `false`
-
-|icon:lock[title=Fixed at build time] [[quarkus.camel.cluster.file.id]]`link:#quarkus.camel.cluster.file.id[quarkus.camel.cluster.file.id]`
-
-The cluster service ID (defaults to null).
-| `string`
-| 
-
-|icon:lock[title=Fixed at build time] [[quarkus.camel.cluster.file.root]]`link:#quarkus.camel.cluster.file.root[quarkus.camel.cluster.file.root]`
-
-The root path (defaults to null).
-| `string`
-| 
-
-|icon:lock[title=Fixed at build time] [[quarkus.camel.cluster.file.order]]`link:#quarkus.camel.cluster.file.order[quarkus.camel.cluster.file.order]`
-
-The service lookup order/priority (defaults to 2147482647).
-| `java.lang.Integer`
-| 
-
-|icon:lock[title=Fixed at build time] [[quarkus.camel.cluster.file.acquire-lock-delay]]`link:#quarkus.camel.cluster.file.acquire-lock-delay[quarkus.camel.cluster.file.acquire-lock-delay]`
-
-The time to wait before starting to try to acquire lock (defaults to 1000ms).
-| `string`
-| 
-
-|icon:lock[title=Fixed at build time] [[quarkus.camel.cluster.file.acquire-lock-interval]]`link:#quarkus.camel.cluster.file.acquire-lock-interval[quarkus.camel.cluster.file.acquire-lock-interval]`
-
-The time to wait between attempts to try to acquire lock (defaults to 10000ms).
-| `string`
-| 
-
-|icon:lock[title=Fixed at build time] [[quarkus.camel.cluster.file.attributes]]`link:#quarkus.camel.cluster.file.attributes[quarkus.camel.cluster.file.attributes]`
-
-The custom attributes associated to the service (defaults to empty map).
-| ``Map<String,String>``
-| 
-|===
-
-[.configuration-legend]
-{doc-link-icon-lock}[title=Fixed at build time] Configuration property fixed at build time. All other configuration properties are overridable at runtime.
-
diff --git a/extensions/file/deployment/pom.xml b/extensions/file-cluster-service/deployment/pom.xml
similarity index 84%
copy from extensions/file/deployment/pom.xml
copy to extensions/file-cluster-service/deployment/pom.xml
index e0513d1fb7..02aded3215 100644
--- a/extensions/file/deployment/pom.xml
+++ b/extensions/file-cluster-service/deployment/pom.xml
@@ -21,13 +21,13 @@
     <modelVersion>4.0.0</modelVersion>
     <parent>
         <groupId>org.apache.camel.quarkus</groupId>
-        <artifactId>camel-quarkus-file-parent</artifactId>
+        <artifactId>camel-quarkus-file-cluster-service-parent</artifactId>
         <version>3.10.0-SNAPSHOT</version>
         <relativePath>../pom.xml</relativePath>
     </parent>
 
-    <artifactId>camel-quarkus-file-deployment</artifactId>
-    <name>Camel Quarkus :: File :: Deployment</name>
+    <artifactId>camel-quarkus-file-cluster-service-deployment</artifactId>
+    <name>Camel Quarkus :: File Cluster Service :: Deployment</name>
 
     <dependencies>
         <dependency>
@@ -36,7 +36,11 @@
         </dependency>
         <dependency>
             <groupId>org.apache.camel.quarkus</groupId>
-            <artifactId>camel-quarkus-file</artifactId>
+            <artifactId>camel-quarkus-file-deployment</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.camel.quarkus</groupId>
+            <artifactId>camel-quarkus-file-cluster-service</artifactId>
         </dependency>
         <dependency>
             <groupId>io.quarkus</groupId>
diff --git a/extensions/file/deployment/src/main/java/org/apache/camel/quarkus/component/file/cluster/deployment/FileLockClusterServiceProcessor.java b/extensions/file-cluster-service/deployment/src/main/java/org/apache/camel/quarkus/component/file/cluster/deployment/FileLockClusterServiceProcessor.java
similarity index 100%
rename from extensions/file/deployment/src/main/java/org/apache/camel/quarkus/component/file/cluster/deployment/FileLockClusterServiceProcessor.java
rename to extensions/file-cluster-service/deployment/src/main/java/org/apache/camel/quarkus/component/file/cluster/deployment/FileLockClusterServiceProcessor.java
diff --git a/extensions/file/deployment/src/test/java/org/apache/camel/quarkus/component/file/cluster/deployment/FileLockClusterServiceConfigDefaultEnabledTest.java b/extensions/file-cluster-service/deployment/src/test/java/org/apache/camel/quarkus/component/file/cluster/deployment/FileLockClusterServiceConfigDefaultEnabledTest.java
similarity index 97%
rename from extensions/file/deployment/src/test/java/org/apache/camel/quarkus/component/file/cluster/deployment/FileLockClusterServiceConfigDefaultEnabledTest.java
rename to extensions/file-cluster-service/deployment/src/test/java/org/apache/camel/quarkus/component/file/cluster/deployment/FileLockClusterServiceConfigDefaultEnabledTest.java
index 4503c9a47e..211b7993e8 100644
--- a/extensions/file/deployment/src/test/java/org/apache/camel/quarkus/component/file/cluster/deployment/FileLockClusterServiceConfigDefaultEnabledTest.java
+++ b/extensions/file-cluster-service/deployment/src/test/java/org/apache/camel/quarkus/component/file/cluster/deployment/FileLockClusterServiceConfigDefaultEnabledTest.java
@@ -50,7 +50,6 @@ public class FileLockClusterServiceConfigDefaultEnabledTest {
         Writer writer = new StringWriter();
 
         Properties props = new Properties();
-        props.setProperty("quarkus.camel.cluster.file.enabled", "true");
 
         try {
             props.store(writer, "");
diff --git a/extensions/file/deployment/src/test/java/org/apache/camel/quarkus/component/file/cluster/deployment/FileLockClusterServiceConfigDefaultTest.java b/extensions/file-cluster-service/deployment/src/test/java/org/apache/camel/quarkus/component/file/cluster/deployment/FileLockClusterServiceConfigDefaultTest.java
similarity index 98%
copy from extensions/file/deployment/src/test/java/org/apache/camel/quarkus/component/file/cluster/deployment/FileLockClusterServiceConfigDefaultTest.java
copy to extensions/file-cluster-service/deployment/src/test/java/org/apache/camel/quarkus/component/file/cluster/deployment/FileLockClusterServiceConfigDefaultTest.java
index f1e0edea34..da1112b303 100644
--- a/extensions/file/deployment/src/test/java/org/apache/camel/quarkus/component/file/cluster/deployment/FileLockClusterServiceConfigDefaultTest.java
+++ b/extensions/file-cluster-service/deployment/src/test/java/org/apache/camel/quarkus/component/file/cluster/deployment/FileLockClusterServiceConfigDefaultTest.java
@@ -65,6 +65,7 @@ public class FileLockClusterServiceConfigDefaultTest {
                 .stream()
                 .filter(s -> s instanceof FileLockClusterService)
                 .toArray(FileLockClusterService[]::new);
-        assertEquals(0, flcs.length);
+
+        assertEquals(1, flcs.length);
     }
 }
diff --git a/extensions/file/deployment/src/test/java/org/apache/camel/quarkus/component/file/cluster/deployment/FileLockClusterServiceConfigNonDefaultEnabledTest.java b/extensions/file-cluster-service/deployment/src/test/java/org/apache/camel/quarkus/component/file/cluster/deployment/FileLockClusterServiceConfigNonDefaultEnabledTest.java
similarity index 98%
rename from extensions/file/deployment/src/test/java/org/apache/camel/quarkus/component/file/cluster/deployment/FileLockClusterServiceConfigNonDefaultEnabledTest.java
rename to extensions/file-cluster-service/deployment/src/test/java/org/apache/camel/quarkus/component/file/cluster/deployment/FileLockClusterServiceConfigNonDefaultEnabledTest.java
index 3af26b25bc..9104fda388 100644
--- a/extensions/file/deployment/src/test/java/org/apache/camel/quarkus/component/file/cluster/deployment/FileLockClusterServiceConfigNonDefaultEnabledTest.java
+++ b/extensions/file-cluster-service/deployment/src/test/java/org/apache/camel/quarkus/component/file/cluster/deployment/FileLockClusterServiceConfigNonDefaultEnabledTest.java
@@ -48,7 +48,6 @@ public class FileLockClusterServiceConfigNonDefaultEnabledTest {
         Writer writer = new StringWriter();
 
         Properties props = new Properties();
-        props.setProperty("quarkus.camel.cluster.file.enabled", "true");
         props.setProperty("quarkus.camel.cluster.file.id", "service-id");
         props.setProperty("quarkus.camel.cluster.file.root", "root-path");
         props.setProperty("quarkus.camel.cluster.file.order", "10");
diff --git a/extensions/file/deployment/src/test/java/org/apache/camel/quarkus/component/file/cluster/deployment/FileLockClusterServiceConfigDefaultTest.java b/extensions/file-cluster-service/deployment/src/test/java/org/apache/camel/quarkus/component/file/cluster/deployment/FileLockClusterServiceConfigNotEnabledTest.java
similarity index 94%
rename from extensions/file/deployment/src/test/java/org/apache/camel/quarkus/component/file/cluster/deployment/FileLockClusterServiceConfigDefaultTest.java
rename to extensions/file-cluster-service/deployment/src/test/java/org/apache/camel/quarkus/component/file/cluster/deployment/FileLockClusterServiceConfigNotEnabledTest.java
index f1e0edea34..92d0ea3102 100644
--- a/extensions/file/deployment/src/test/java/org/apache/camel/quarkus/component/file/cluster/deployment/FileLockClusterServiceConfigDefaultTest.java
+++ b/extensions/file-cluster-service/deployment/src/test/java/org/apache/camel/quarkus/component/file/cluster/deployment/FileLockClusterServiceConfigNotEnabledTest.java
@@ -34,7 +34,7 @@ import org.junit.jupiter.api.extension.RegisterExtension;
 
 import static org.junit.jupiter.api.Assertions.assertEquals;
 
-public class FileLockClusterServiceConfigDefaultTest {
+public class FileLockClusterServiceConfigNotEnabledTest {
 
     @RegisterExtension
     static final QuarkusUnitTest CONFIG = new QuarkusUnitTest()
@@ -45,6 +45,7 @@ public class FileLockClusterServiceConfigDefaultTest {
         Writer writer = new StringWriter();
 
         Properties props = new Properties();
+        props.setProperty("quarkus.camel.cluster.file.enabled", "false");
 
         try {
             props.store(writer, "");
@@ -65,6 +66,7 @@ public class FileLockClusterServiceConfigDefaultTest {
                 .stream()
                 .filter(s -> s instanceof FileLockClusterService)
                 .toArray(FileLockClusterService[]::new);
+
         assertEquals(0, flcs.length);
     }
 }
diff --git a/extensions/file-cluster-service/pom.xml b/extensions/file-cluster-service/pom.xml
new file mode 100644
index 0000000000..d4d0239673
--- /dev/null
+++ b/extensions/file-cluster-service/pom.xml
@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+         http://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+    <modelVersion>4.0.0</modelVersion>
+    <parent>
+        <groupId>org.apache.camel.quarkus</groupId>
+        <artifactId>camel-quarkus-extensions</artifactId>
+        <version>3.10.0-SNAPSHOT</version>
+        <relativePath>../pom.xml</relativePath>
+    </parent>
+
+    <artifactId>camel-quarkus-file-cluster-service-parent</artifactId>
+    <name>Camel Quarkus :: File Cluster Service</name>
+    <packaging>pom</packaging>
+
+    <modules>
+        <module>deployment</module>
+        <module>runtime</module>
+    </modules>
+</project>
diff --git a/extensions/file/deployment/pom.xml b/extensions/file-cluster-service/runtime/pom.xml
similarity index 57%
copy from extensions/file/deployment/pom.xml
copy to extensions/file-cluster-service/runtime/pom.xml
index e0513d1fb7..0dd2d67625 100644
--- a/extensions/file/deployment/pom.xml
+++ b/extensions/file-cluster-service/runtime/pom.xml
@@ -21,32 +21,37 @@
     <modelVersion>4.0.0</modelVersion>
     <parent>
         <groupId>org.apache.camel.quarkus</groupId>
-        <artifactId>camel-quarkus-file-parent</artifactId>
+        <artifactId>camel-quarkus-file-cluster-service-parent</artifactId>
         <version>3.10.0-SNAPSHOT</version>
         <relativePath>../pom.xml</relativePath>
     </parent>
 
-    <artifactId>camel-quarkus-file-deployment</artifactId>
-    <name>Camel Quarkus :: File :: Deployment</name>
+    <artifactId>camel-quarkus-file-cluster-service</artifactId>
+    <name>Camel Quarkus :: File Cluster Service :: Runtime</name>
+    <description>Provides a FileLock implementation of the Camel Cluster Service SPI</description>
+
+    <properties>
+        <camel.quarkus.jvmSince>3.10.0</camel.quarkus.jvmSince>
+        <camel.quarkus.nativeSince>3.10.0</camel.quarkus.nativeSince>
+    </properties>
 
     <dependencies>
         <dependency>
             <groupId>org.apache.camel.quarkus</groupId>
-            <artifactId>camel-quarkus-core-deployment</artifactId>
+            <artifactId>camel-quarkus-core</artifactId>
         </dependency>
         <dependency>
             <groupId>org.apache.camel.quarkus</groupId>
             <artifactId>camel-quarkus-file</artifactId>
         </dependency>
-        <dependency>
-            <groupId>io.quarkus</groupId>
-            <artifactId>quarkus-junit5-internal</artifactId>
-            <scope>test</scope>
-        </dependency>
     </dependencies>
 
     <build>
         <plugins>
+            <plugin>
+                <groupId>io.quarkus</groupId>
+                <artifactId>quarkus-extension-maven-plugin</artifactId>
+            </plugin>
             <plugin>
                 <groupId>org.apache.maven.plugins</groupId>
                 <artifactId>maven-compiler-plugin</artifactId>
@@ -63,4 +68,31 @@
         </plugins>
     </build>
 
+    <profiles>
+        <profile>
+            <id>full</id>
+            <activation>
+                <property>
+                    <name>!quickly</name>
+                </property>
+            </activation>
+            <build>
+                <plugins>
+                    <plugin>
+                        <groupId>org.apache.camel.quarkus</groupId>
+                        <artifactId>camel-quarkus-maven-plugin</artifactId>
+                        <executions>
+                            <execution>
+                                <id>update-extension-doc-page</id>
+                                <goals>
+                                    <goal>update-extension-doc-page</goal>
+                                </goals>
+                                <phase>process-classes</phase>
+                            </execution>
+                        </executions>
+                    </plugin>
+                </plugins>
+            </build>
+        </profile>
+    </profiles>
 </project>
diff --git a/extensions/file/runtime/src/main/doc/configuration.adoc b/extensions/file-cluster-service/runtime/src/main/doc/configuration.adoc
similarity index 89%
rename from extensions/file/runtime/src/main/doc/configuration.adoc
rename to extensions/file-cluster-service/runtime/src/main/doc/configuration.adoc
index fc379d6044..2c9e4d2f79 100644
--- a/extensions/file/runtime/src/main/doc/configuration.adoc
+++ b/extensions/file-cluster-service/runtime/src/main/doc/configuration.adoc
@@ -10,10 +10,9 @@ For instance, having the route below deployed on multiple JVMs:
 from("master:ns:timer:test?period=100").log("Timer invoked on a single JVM at a time");
 ```
 
-It's possible to enable the file cluster service with a property like below:
+It's possible to configure the file cluster service with a property like below:
 
 ```
-quarkus.camel.cluster.file.enabled = true
 quarkus.camel.cluster.file.root = target/cluster-folder-where-lock-file-will-be-held
 ```
 
diff --git a/extensions/file/runtime/src/main/java/org/apache/camel/quarkus/component/file/cluster/FileLockClusterServiceConfig.java b/extensions/file-cluster-service/runtime/src/main/java/org/apache/camel/quarkus/component/file/cluster/FileLockClusterServiceConfig.java
similarity index 86%
rename from extensions/file/runtime/src/main/java/org/apache/camel/quarkus/component/file/cluster/FileLockClusterServiceConfig.java
rename to extensions/file-cluster-service/runtime/src/main/java/org/apache/camel/quarkus/component/file/cluster/FileLockClusterServiceConfig.java
index e67c5e72bf..5735703f9a 100644
--- a/extensions/file/runtime/src/main/java/org/apache/camel/quarkus/component/file/cluster/FileLockClusterServiceConfig.java
+++ b/extensions/file-cluster-service/runtime/src/main/java/org/apache/camel/quarkus/component/file/cluster/FileLockClusterServiceConfig.java
@@ -22,7 +22,6 @@ import java.util.function.BooleanSupplier;
 
 import io.quarkus.runtime.annotations.ConfigItem;
 import io.quarkus.runtime.annotations.ConfigRoot;
-import org.eclipse.microprofile.config.ConfigProvider;
 
 @ConfigRoot(name = "camel.cluster.file")
 public class FileLockClusterServiceConfig {
@@ -30,8 +29,12 @@ public class FileLockClusterServiceConfig {
     /**
      * Whether a File Lock Cluster Service should be automatically configured
      * according to 'quarkus.camel.cluster.file.*' configurations.
+     *
+     * @deprecated this property is no longer needed as the FileLock implementation of the Camel CLuster Service API has
+     *             been moved to a dedicated extension.
      */
-    @ConfigItem(defaultValue = "false")
+    @Deprecated(since = "3.10.0", forRemoval = true)
+    @ConfigItem(defaultValue = "true")
     public boolean enabled;
 
     /**
@@ -71,10 +74,11 @@ public class FileLockClusterServiceConfig {
     public Optional<String> acquireLockInterval;
 
     public static final class Enabled implements BooleanSupplier {
+        FileLockClusterServiceConfig config;
+
         @Override
         public boolean getAsBoolean() {
-            return ConfigProvider.getConfig().getOptionalValue("quarkus.camel.cluster.file.enabled", Boolean.class)
-                    .orElse(Boolean.FALSE);
+            return config.enabled;
         }
     }
 }
diff --git a/extensions/file/runtime/src/main/java/org/apache/camel/quarkus/component/file/cluster/FileLockClusterServiceRecorder.java b/extensions/file-cluster-service/runtime/src/main/java/org/apache/camel/quarkus/component/file/cluster/FileLockClusterServiceRecorder.java
similarity index 100%
rename from extensions/file/runtime/src/main/java/org/apache/camel/quarkus/component/file/cluster/FileLockClusterServiceRecorder.java
rename to extensions/file-cluster-service/runtime/src/main/java/org/apache/camel/quarkus/component/file/cluster/FileLockClusterServiceRecorder.java
diff --git a/extensions/file-cluster-service/runtime/src/main/resources/META-INF/quarkus-extension.yaml b/extensions/file-cluster-service/runtime/src/main/resources/META-INF/quarkus-extension.yaml
new file mode 100644
index 0000000000..27d5697759
--- /dev/null
+++ b/extensions/file-cluster-service/runtime/src/main/resources/META-INF/quarkus-extension.yaml
@@ -0,0 +1,32 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#      http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+# This is a generated file. Do not edit directly!
+# To re-generate, run the following command from the top level directory:
+#
+#   mvn -N cq:update-quarkus-metadata
+#
+---
+name: "Camel File Cluster Service"
+description: "Provides a FileLock implementation of the Camel Cluster Service SPI"
+metadata:
+  icon-url: "https://raw.githubusercontent.com/apache/camel-website/main/antora-ui-camel/src/img/logo-d.svg"
+  guide: "https://camel.apache.org/camel-quarkus/latest/reference/extensions/file-cluster-service.html"
+  categories:
+  - "integration"
+  status:
+  - "stable"
diff --git a/extensions/file/deployment/pom.xml b/extensions/file/deployment/pom.xml
index e0513d1fb7..7c5bdc23df 100644
--- a/extensions/file/deployment/pom.xml
+++ b/extensions/file/deployment/pom.xml
@@ -38,11 +38,6 @@
             <groupId>org.apache.camel.quarkus</groupId>
             <artifactId>camel-quarkus-file</artifactId>
         </dependency>
-        <dependency>
-            <groupId>io.quarkus</groupId>
-            <artifactId>quarkus-junit5-internal</artifactId>
-            <scope>test</scope>
-        </dependency>
     </dependencies>
 
     <build>
diff --git a/extensions/pom.xml b/extensions/pom.xml
index dd0e224fc3..2d9db9e730 100644
--- a/extensions/pom.xml
+++ b/extensions/pom.xml
@@ -99,6 +99,7 @@
         <module>exec</module>
         <module>fhir</module>
         <module>file</module>
+        <module>file-cluster-service</module>
         <module>file-watch</module>
         <module>flatpack</module>
         <module>fop</module>
diff --git a/integration-tests/master-file/pom.xml b/integration-tests/master-file/pom.xml
index 4e55800cc8..266dd30ee2 100644
--- a/integration-tests/master-file/pom.xml
+++ b/integration-tests/master-file/pom.xml
@@ -39,6 +39,10 @@
             <groupId>org.apache.camel.quarkus</groupId>
             <artifactId>camel-quarkus-file</artifactId>
         </dependency>
+        <dependency>
+            <groupId>org.apache.camel.quarkus</groupId>
+            <artifactId>camel-quarkus-file-cluster-service</artifactId>
+        </dependency>
         <dependency>
             <groupId>org.apache.camel.quarkus</groupId>
             <artifactId>camel-quarkus-log</artifactId>
diff --git a/integration-tests/master-file/src/main/resources/application.properties b/integration-tests/master-file/src/main/resources/application.properties
index 04061f086d..128e1149ea 100644
--- a/integration-tests/master-file/src/main/resources/application.properties
+++ b/integration-tests/master-file/src/main/resources/application.properties
@@ -17,7 +17,6 @@
 
 application.id = leader
 
-quarkus.camel.cluster.file.enabled = true
 quarkus.camel.cluster.file.root = target/cluster
 quarkus.camel.cluster.file.acquire-lock-delay = 1s
 quarkus.camel.cluster.file.acquire-lock-interval = 1000
diff --git a/poms/bom/pom.xml b/poms/bom/pom.xml
index 4380dc1534..3c3e98fad0 100644
--- a/poms/bom/pom.xml
+++ b/poms/bom/pom.xml
@@ -3710,6 +3710,16 @@
                 <artifactId>camel-quarkus-file-deployment</artifactId>
                 <version>${camel-quarkus.version}</version>
             </dependency>
+            <dependency>
+                <groupId>org.apache.camel.quarkus</groupId>
+                <artifactId>camel-quarkus-file-cluster-service</artifactId>
+                <version>${camel-quarkus.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.camel.quarkus</groupId>
+                <artifactId>camel-quarkus-file-cluster-service-deployment</artifactId>
+                <version>${camel-quarkus.version}</version>
+            </dependency>
             <dependency>
                 <groupId>org.apache.camel.quarkus</groupId>
                 <artifactId>camel-quarkus-file-watch</artifactId>
diff --git a/poms/bom/src/main/generated/flattened-full-pom.xml b/poms/bom/src/main/generated/flattened-full-pom.xml
index 3cffff0283..9fa8061815 100644
--- a/poms/bom/src/main/generated/flattened-full-pom.xml
+++ b/poms/bom/src/main/generated/flattened-full-pom.xml
@@ -3635,6 +3635,16 @@
         <artifactId>camel-quarkus-file-deployment</artifactId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
         <version>3.10.0-SNAPSHOT</version><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
       </dependency>
+      <dependency>
+        <groupId>org.apache.camel.quarkus</groupId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
+        <artifactId>camel-quarkus-file-cluster-service</artifactId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
+        <version>3.9.1-SNAPSHOT</version><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
+      </dependency>
+      <dependency>
+        <groupId>org.apache.camel.quarkus</groupId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
+        <artifactId>camel-quarkus-file-cluster-service-deployment</artifactId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
+        <version>3.9.1-SNAPSHOT</version><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
+      </dependency>
       <dependency>
         <groupId>org.apache.camel.quarkus</groupId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
         <artifactId>camel-quarkus-file-watch</artifactId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
@@ -4425,6 +4435,16 @@
         <artifactId>camel-quarkus-kubernetes-deployment</artifactId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
         <version>3.10.0-SNAPSHOT</version><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
       </dependency>
+      <dependency>
+        <groupId>org.apache.camel.quarkus</groupId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
+        <artifactId>camel-quarkus-kubernetes-cluster-service</artifactId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
+        <version>3.9.1-SNAPSHOT</version><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
+      </dependency>
+      <dependency>
+        <groupId>org.apache.camel.quarkus</groupId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
+        <artifactId>camel-quarkus-kubernetes-cluster-service-deployment</artifactId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
+        <version>3.9.1-SNAPSHOT</version><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
+      </dependency>
       <dependency>
         <groupId>org.apache.camel.quarkus</groupId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
         <artifactId>camel-quarkus-kudu</artifactId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
diff --git a/poms/bom/src/main/generated/flattened-reduced-pom.xml b/poms/bom/src/main/generated/flattened-reduced-pom.xml
index b14fa1cc00..088ccd5dc7 100644
--- a/poms/bom/src/main/generated/flattened-reduced-pom.xml
+++ b/poms/bom/src/main/generated/flattened-reduced-pom.xml
@@ -3635,6 +3635,16 @@
         <artifactId>camel-quarkus-file-deployment</artifactId>
         <version>3.10.0-SNAPSHOT</version>
       </dependency>
+      <dependency>
+        <groupId>org.apache.camel.quarkus</groupId>
+        <artifactId>camel-quarkus-file-cluster-service</artifactId>
+        <version>3.9.1-SNAPSHOT</version>
+      </dependency>
+      <dependency>
+        <groupId>org.apache.camel.quarkus</groupId>
+        <artifactId>camel-quarkus-file-cluster-service-deployment</artifactId>
+        <version>3.9.1-SNAPSHOT</version>
+      </dependency>
       <dependency>
         <groupId>org.apache.camel.quarkus</groupId>
         <artifactId>camel-quarkus-file-watch</artifactId>
@@ -4425,6 +4435,16 @@
         <artifactId>camel-quarkus-kubernetes-deployment</artifactId>
         <version>3.10.0-SNAPSHOT</version>
       </dependency>
+      <dependency>
+        <groupId>org.apache.camel.quarkus</groupId>
+        <artifactId>camel-quarkus-kubernetes-cluster-service</artifactId>
+        <version>3.9.1-SNAPSHOT</version>
+      </dependency>
+      <dependency>
+        <groupId>org.apache.camel.quarkus</groupId>
+        <artifactId>camel-quarkus-kubernetes-cluster-service-deployment</artifactId>
+        <version>3.9.1-SNAPSHOT</version>
+      </dependency>
       <dependency>
         <groupId>org.apache.camel.quarkus</groupId>
         <artifactId>camel-quarkus-kudu</artifactId>
diff --git a/poms/bom/src/main/generated/flattened-reduced-verbose-pom.xml b/poms/bom/src/main/generated/flattened-reduced-verbose-pom.xml
index cd4befa380..1e5aea97ab 100644
--- a/poms/bom/src/main/generated/flattened-reduced-verbose-pom.xml
+++ b/poms/bom/src/main/generated/flattened-reduced-verbose-pom.xml
@@ -3635,6 +3635,16 @@
         <artifactId>camel-quarkus-file-deployment</artifactId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
         <version>3.10.0-SNAPSHOT</version><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
       </dependency>
+      <dependency>
+        <groupId>org.apache.camel.quarkus</groupId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
+        <artifactId>camel-quarkus-file-cluster-service</artifactId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
+        <version>3.9.1-SNAPSHOT</version><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
+      </dependency>
+      <dependency>
+        <groupId>org.apache.camel.quarkus</groupId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
+        <artifactId>camel-quarkus-file-cluster-service-deployment</artifactId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
+        <version>3.9.1-SNAPSHOT</version><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
+      </dependency>
       <dependency>
         <groupId>org.apache.camel.quarkus</groupId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
         <artifactId>camel-quarkus-file-watch</artifactId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
@@ -4425,6 +4435,16 @@
         <artifactId>camel-quarkus-kubernetes-deployment</artifactId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
         <version>3.10.0-SNAPSHOT</version><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
       </dependency>
+      <dependency>
+        <groupId>org.apache.camel.quarkus</groupId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
+        <artifactId>camel-quarkus-kubernetes-cluster-service</artifactId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
+        <version>3.9.1-SNAPSHOT</version><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
+      </dependency>
+      <dependency>
+        <groupId>org.apache.camel.quarkus</groupId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
+        <artifactId>camel-quarkus-kubernetes-cluster-service-deployment</artifactId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
+        <version>3.9.1-SNAPSHOT</version><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
+      </dependency>
       <dependency>
         <groupId>org.apache.camel.quarkus</groupId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
         <artifactId>camel-quarkus-kudu</artifactId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->


(camel-quarkus) 03/04: Update Telegram extension metadata

Posted by ja...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

jamesnetherton pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel-quarkus.git

commit 5d2c7a90cde41bfed55657c523921ab9f6779e2b
Author: Luca Burgazzoli <lb...@gmail.com>
AuthorDate: Mon Mar 25 11:42:58 2024 +0100

    Update Telegram extension metadata
---
 .../telegram/runtime/src/main/resources/META-INF/quarkus-extension.yaml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/extensions/telegram/runtime/src/main/resources/META-INF/quarkus-extension.yaml b/extensions/telegram/runtime/src/main/resources/META-INF/quarkus-extension.yaml
index 461f27df48..afc3133ab6 100644
--- a/extensions/telegram/runtime/src/main/resources/META-INF/quarkus-extension.yaml
+++ b/extensions/telegram/runtime/src/main/resources/META-INF/quarkus-extension.yaml
@@ -22,7 +22,7 @@
 #
 ---
 name: "Camel Telegram"
-description: "Send and receive messages acting as a Telegram Bot Telegram Bot API"
+description: "Send and receive messages using the Telegram Bot API"
 metadata:
   icon-url: "https://raw.githubusercontent.com/apache/camel-website/main/antora-ui-camel/src/img/logo-d.svg"
   guide: "https://camel.apache.org/camel-quarkus/latest/reference/extensions/telegram.html"


(camel-quarkus) 01/04: Move Kubernetes cluster service to its own module

Posted by ja...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

jamesnetherton pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel-quarkus.git

commit ee337cb4e9c92feb1d3e0b0fb2585d0f3bc3117a
Author: Luca Burgazzoli <lb...@gmail.com>
AuthorDate: Mon Mar 25 10:14:12 2024 +0100

    Move Kubernetes cluster service to its own module
---
 docs/modules/ROOT/nav.adoc                         |   1 +
 ...rnetes.adoc => kubernetes-cluster-service.adoc} |  85 +++-----------
 .../pages/reference/extensions/kubernetes.adoc     | 124 ---------------------
 .../deployment/pom.xml                             |  12 +-
 .../KubernetesClusterServiceProcessor.java         |   0
 .../KubernetesClusterServiceConfigDefaultTest.java |   2 +-
 ...terServiceConfigEnabledWithRebalancingTest.java |   3 +-
 ...terServiceConfigEnabledWithoutDefaultsTest.java |   3 +-
 ...ServiceConfigEnabledWithoutRebalancingTest.java |   3 +-
 extensions/kubernetes-cluster-service/pom.xml      |  37 ++++++
 .../runtime}/pom.xml                               |  56 ++++++++--
 .../runtime/src/main/doc/configuration.adoc        |  23 ----
 .../KubernetesClusterServiceBuildTimeConfig.java   |   8 +-
 .../cluster/KubernetesClusterServiceRecorder.java  |   0
 .../KubernetesClusterServiceRuntimeConfig.java     |   0
 .../main/resources/META-INF/quarkus-extension.yaml |  32 ++++++
 extensions/kubernetes/deployment/pom.xml           |   5 -
 .../runtime/src/main/doc/configuration.adoc        |  23 ----
 extensions/pom.xml                                 |   1 +
 integration-tests/master-openshift/pom.xml         |   4 +
 .../src/main/resources/application.properties      |   1 -
 poms/bom/pom.xml                                   |  10 ++
 22 files changed, 160 insertions(+), 273 deletions(-)

diff --git a/docs/modules/ROOT/nav.adoc b/docs/modules/ROOT/nav.adoc
index 36658c68d6..8256a43780 100644
--- a/docs/modules/ROOT/nav.adoc
+++ b/docs/modules/ROOT/nav.adoc
@@ -86,6 +86,7 @@
 *** xref:reference/extensions/chunk.adoc[Chunk]
 *** xref:reference/extensions/core-cloud.adoc[Cloud]
 *** xref:reference/extensions/cloudevents.adoc[Cloudevents]
+*** xref:reference/extensions/kubernetes-cluster-service.adoc[Cluster Service]
 *** xref:reference/extensions/coap.adoc[CoAP]
 *** xref:reference/extensions/cometd.adoc[CometD]
 *** xref:reference/extensions/console.adoc[Console]
diff --git a/docs/modules/ROOT/pages/reference/extensions/kubernetes.adoc b/docs/modules/ROOT/pages/reference/extensions/kubernetes-cluster-service.adoc
similarity index 53%
copy from docs/modules/ROOT/pages/reference/extensions/kubernetes.adoc
copy to docs/modules/ROOT/pages/reference/extensions/kubernetes-cluster-service.adoc
index 97fc2967c9..5e16fe5891 100644
--- a/docs/modules/ROOT/pages/reference/extensions/kubernetes.adoc
+++ b/docs/modules/ROOT/pages/reference/extensions/kubernetes-cluster-service.adoc
@@ -1,55 +1,28 @@
 // Do not edit directly!
 // This file was generated by camel-quarkus-maven-plugin:update-extension-doc-page
-[id="extensions-kubernetes"]
-= Kubernetes
-:page-aliases: extensions/kubernetes.adoc
+[id="extensions-kubernetes-cluster-service"]
+= Kubernetes Cluster Service
 :linkattrs:
-:cq-artifact-id: camel-quarkus-kubernetes
+:cq-artifact-id: camel-quarkus-kubernetes-cluster-service
 :cq-native-supported: true
 :cq-status: Stable
 :cq-status-deprecation: Stable
-:cq-description: Perform operations against Kubernetes API
+:cq-description: Provides a Kubernetes implementation of the Camel Cluster Service SPI
 :cq-deprecated: false
-:cq-jvm-since: 1.0.0
-:cq-native-since: 1.0.0
+:cq-jvm-since: 3.10.0
+:cq-native-since: 3.10.0
 
 ifeval::[{doc-show-badges} == true]
 [.badges]
-[.badge-key]##JVM since##[.badge-supported]##1.0.0## [.badge-key]##Native since##[.badge-supported]##1.0.0##
+[.badge-key]##JVM since##[.badge-supported]##3.10.0## [.badge-key]##Native since##[.badge-supported]##3.10.0##
 endif::[]
 
-Perform operations against Kubernetes API
-
-[id="extensions-kubernetes-whats-inside"]
-== What's inside
-
-* xref:{cq-camel-components}::kubernetes-config-maps-component.adoc[Kubernetes ConfigMap component], URI syntax: `kubernetes-config-maps:masterUrl`
-* xref:{cq-camel-components}::kubernetes-cronjob-component.adoc[Kubernetes Cronjob component], URI syntax: `kubernetes-cronjob:masterUrl`
-* xref:{cq-camel-components}::kubernetes-custom-resources-component.adoc[Kubernetes Custom Resources component], URI syntax: `kubernetes-custom-resources:masterUrl`
-* xref:{cq-camel-components}::kubernetes-deployments-component.adoc[Kubernetes Deployments component], URI syntax: `kubernetes-deployments:masterUrl`
-* xref:{cq-camel-components}::kubernetes-events-component.adoc[Kubernetes Event component], URI syntax: `kubernetes-events:masterUrl`
-* xref:{cq-camel-components}::kubernetes-hpa-component.adoc[Kubernetes HPA component], URI syntax: `kubernetes-hpa:masterUrl`
-* xref:{cq-camel-components}::kubernetes-job-component.adoc[Kubernetes Job component], URI syntax: `kubernetes-job:masterUrl`
-* xref:{cq-camel-components}::kubernetes-namespaces-component.adoc[Kubernetes Namespaces component], URI syntax: `kubernetes-namespaces:masterUrl`
-* xref:{cq-camel-components}::kubernetes-nodes-component.adoc[Kubernetes Nodes component], URI syntax: `kubernetes-nodes:masterUrl`
-* xref:{cq-camel-components}::kubernetes-persistent-volumes-component.adoc[Kubernetes Persistent Volume component], URI syntax: `kubernetes-persistent-volumes:masterUrl`
-* xref:{cq-camel-components}::kubernetes-persistent-volumes-claims-component.adoc[Kubernetes Persistent Volume Claim component], URI syntax: `kubernetes-persistent-volumes-claims:masterUrl`
-* xref:{cq-camel-components}::kubernetes-pods-component.adoc[Kubernetes Pods component], URI syntax: `kubernetes-pods:masterUrl`
-* xref:{cq-camel-components}::kubernetes-replication-controllers-component.adoc[Kubernetes Replication Controller component], URI syntax: `kubernetes-replication-controllers:masterUrl`
-* xref:{cq-camel-components}::kubernetes-resources-quota-component.adoc[Kubernetes Resources Quota component], URI syntax: `kubernetes-resources-quota:masterUrl`
-* xref:{cq-camel-components}::kubernetes-secrets-component.adoc[Kubernetes Secrets component], URI syntax: `kubernetes-secrets:masterUrl`
-* xref:{cq-camel-components}::kubernetes-service-accounts-component.adoc[Kubernetes Service Account component], URI syntax: `kubernetes-service-accounts:masterUrl`
-* xref:{cq-camel-components}::kubernetes-services-component.adoc[Kubernetes Services component], URI syntax: `kubernetes-services:masterUrl`
-* xref:{cq-camel-components}::openshift-build-configs-component.adoc[Openshift Build Config component], URI syntax: `openshift-build-configs:masterUrl`
-* xref:{cq-camel-components}::openshift-builds-component.adoc[Openshift Builds component], URI syntax: `openshift-builds:masterUrl`
-* xref:{cq-camel-components}::openshift-deploymentconfigs-component.adoc[Openshift Deployment Configs component], URI syntax: `openshift-deploymentconfigs:masterUrl`
-
-Please refer to the above links for usage and configuration details.
-
-[id="extensions-kubernetes-maven-coordinates"]
+Provides a Kubernetes implementation of the Camel Cluster Service SPI
+
+[id="extensions-kubernetes-cluster-service-maven-coordinates"]
 == Maven coordinates
 
-https://{link-quarkus-code-generator}/?extension-search=camel-quarkus-kubernetes[Create a new project with this extension on {link-quarkus-code-generator}, window="_blank"]
+https://{link-quarkus-code-generator}/?extension-search=camel-quarkus-kubernetes-cluster-service[Create a new project with this extension on {link-quarkus-code-generator}, window="_blank"]
 
 Or add the coordinates to your existing project:
 
@@ -57,39 +30,21 @@ Or add the coordinates to your existing project:
 ----
 <dependency>
     <groupId>org.apache.camel.quarkus</groupId>
-    <artifactId>camel-quarkus-kubernetes</artifactId>
+    <artifactId>camel-quarkus-kubernetes-cluster-service</artifactId>
 </dependency>
 ----
 ifeval::[{doc-show-user-guide-link} == true]
 Check the xref:user-guide/index.adoc[User guide] for more information about writing Camel Quarkus applications.
 endif::[]
 
-[id="extensions-kubernetes-additional-camel-quarkus-configuration"]
+[id="extensions-kubernetes-cluster-service-additional-camel-quarkus-configuration"]
 == Additional Camel Quarkus configuration
 
 ifeval::[{doc-show-extra-content} == true]
 include::extra-content.adoc[]
 endif::[]
 
-[id="extensions-kubernetes-configuration-automatic-registration-of-a-kubernetes-client-instance"]
-=== Automatic registration of a Kubernetes Client instance
-
-The extension automatically registers a Kubernetes Client bean named `kubernetesClient`. You can reference the bean in your routes like this:
-
-    from("direct:pods")
-        .to("kubernetes-pods:///?kubernetesClient=#kubernetesClient&operation=listPods")
-
-By default the client is configured from the local kubeconfig file. You can customize the client configuration via properties within `application.properties`:
-
-[source,properties]
-----
-quarkus.kubernetes-client.master-url=https://my.k8s.host
-quarkus.kubernetes-client.namespace=my-namespace
-----
-
-The full set of configuration options are documented in the https://quarkus.io/guides/kubernetes-client#quarkus-kubernetes-client_configuration[Quarkus Kubernetes Client guide].
-
-[id="extensions-kubernetes-configuration-having-only-a-single-consumer-in-a-cluster-consuming-from-a-given-endpoint"]
+[id="extensions-kubernetes-cluster-service-configuration-having-only-a-single-consumer-in-a-cluster-consuming-from-a-given-endpoint"]
 === Having only a single consumer in a cluster consuming from a given endpoint
 
 When the same route is deployed on multiple pods, it could be interesting to use this extension in conjunction with the xref:reference/extensions/master.adoc[Master one].
@@ -101,12 +56,6 @@ For instance, having the route below deployed on multiple pods:
 from("master:ns:timer:test?period=100").log("Timer invoked on a single pod at a time");
 ```
 
-It's possible to enable the kubernetes cluster service with a property like below:
-
-```
-quarkus.camel.cluster.kubernetes.enabled = true
-```
-
 As a result, a single consumer will be active across the `ns` camel master namespace.
 It means that, at a given time, only a single timer will generate exchanges across the whole cluster.
 In other words, messages will be logged every 100ms on a single pod at a time.
@@ -119,12 +68,6 @@ The kubernetes cluster service could further be tuned by tweaking `quarkus.camel
 | Configuration property | Type | Default
 
 
-|icon:lock[title=Fixed at build time] [[quarkus.camel.cluster.kubernetes.enabled]]`link:#quarkus.camel.cluster.kubernetes.enabled[quarkus.camel.cluster.kubernetes.enabled]`
-
-Whether a Kubernetes Cluster Service should be automatically configured according to 'quarkus.camel.cluster.kubernetes.++*++' configurations.
-| `boolean`
-| `false`
-
 |icon:lock[title=Fixed at build time] [[quarkus.camel.cluster.kubernetes.rebalancing]]`link:#quarkus.camel.cluster.kubernetes.rebalancing[quarkus.camel.cluster.kubernetes.rebalancing]`
 
 Whether the camel master namespace leaders should be distributed evenly across all the camel contexts in the cluster.
diff --git a/docs/modules/ROOT/pages/reference/extensions/kubernetes.adoc b/docs/modules/ROOT/pages/reference/extensions/kubernetes.adoc
index 97fc2967c9..31e2b10df4 100644
--- a/docs/modules/ROOT/pages/reference/extensions/kubernetes.adoc
+++ b/docs/modules/ROOT/pages/reference/extensions/kubernetes.adoc
@@ -89,127 +89,3 @@ quarkus.kubernetes-client.namespace=my-namespace
 
 The full set of configuration options are documented in the https://quarkus.io/guides/kubernetes-client#quarkus-kubernetes-client_configuration[Quarkus Kubernetes Client guide].
 
-[id="extensions-kubernetes-configuration-having-only-a-single-consumer-in-a-cluster-consuming-from-a-given-endpoint"]
-=== Having only a single consumer in a cluster consuming from a given endpoint
-
-When the same route is deployed on multiple pods, it could be interesting to use this extension in conjunction with the xref:reference/extensions/master.adoc[Master one].
-In such a setup, a single consumer will be active at a time across the whole camel master namespace.
-
-For instance, having the route below deployed on multiple pods:
-
-```
-from("master:ns:timer:test?period=100").log("Timer invoked on a single pod at a time");
-```
-
-It's possible to enable the kubernetes cluster service with a property like below:
-
-```
-quarkus.camel.cluster.kubernetes.enabled = true
-```
-
-As a result, a single consumer will be active across the `ns` camel master namespace.
-It means that, at a given time, only a single timer will generate exchanges across the whole cluster.
-In other words, messages will be logged every 100ms on a single pod at a time.
-
-The kubernetes cluster service could further be tuned by tweaking `quarkus.camel.cluster.kubernetes.*` properties.
-
-
-[width="100%",cols="80,5,15",options="header"]
-|===
-| Configuration property | Type | Default
-
-
-|icon:lock[title=Fixed at build time] [[quarkus.camel.cluster.kubernetes.enabled]]`link:#quarkus.camel.cluster.kubernetes.enabled[quarkus.camel.cluster.kubernetes.enabled]`
-
-Whether a Kubernetes Cluster Service should be automatically configured according to 'quarkus.camel.cluster.kubernetes.++*++' configurations.
-| `boolean`
-| `false`
-
-|icon:lock[title=Fixed at build time] [[quarkus.camel.cluster.kubernetes.rebalancing]]`link:#quarkus.camel.cluster.kubernetes.rebalancing[quarkus.camel.cluster.kubernetes.rebalancing]`
-
-Whether the camel master namespace leaders should be distributed evenly across all the camel contexts in the cluster.
-| `boolean`
-| `true`
-
-| [[quarkus.camel.cluster.kubernetes.id]]`link:#quarkus.camel.cluster.kubernetes.id[quarkus.camel.cluster.kubernetes.id]`
-
-The cluster service ID (defaults to null).
-| `string`
-| 
-
-| [[quarkus.camel.cluster.kubernetes.master-url]]`link:#quarkus.camel.cluster.kubernetes.master-url[quarkus.camel.cluster.kubernetes.master-url]`
-
-The URL of the Kubernetes master (read from Kubernetes client properties by default).
-| `string`
-| 
-
-| [[quarkus.camel.cluster.kubernetes.connection-timeout-millis]]`link:#quarkus.camel.cluster.kubernetes.connection-timeout-millis[quarkus.camel.cluster.kubernetes.connection-timeout-millis]`
-
-The connection timeout in milliseconds to use when making requests to the Kubernetes API server.
-| `java.lang.Integer`
-| 
-
-| [[quarkus.camel.cluster.kubernetes.namespace]]`link:#quarkus.camel.cluster.kubernetes.namespace[quarkus.camel.cluster.kubernetes.namespace]`
-
-The name of the Kubernetes namespace containing the pods and the configmap (autodetected by default).
-| `string`
-| 
-
-| [[quarkus.camel.cluster.kubernetes.pod-name]]`link:#quarkus.camel.cluster.kubernetes.pod-name[quarkus.camel.cluster.kubernetes.pod-name]`
-
-The name of the current pod (autodetected from container host name by default).
-| `string`
-| 
-
-| [[quarkus.camel.cluster.kubernetes.jitter-factor]]`link:#quarkus.camel.cluster.kubernetes.jitter-factor[quarkus.camel.cluster.kubernetes.jitter-factor]`
-
-The jitter factor to apply in order to prevent all pods to call Kubernetes APIs in the same instant (defaults to 1.2).
-| `java.lang.Double`
-| 
-
-| [[quarkus.camel.cluster.kubernetes.lease-duration-millis]]`link:#quarkus.camel.cluster.kubernetes.lease-duration-millis[quarkus.camel.cluster.kubernetes.lease-duration-millis]`
-
-The default duration of the lease for the current leader (defaults to 15000).
-| `java.lang.Long`
-| 
-
-| [[quarkus.camel.cluster.kubernetes.renew-deadline-millis]]`link:#quarkus.camel.cluster.kubernetes.renew-deadline-millis[quarkus.camel.cluster.kubernetes.renew-deadline-millis]`
-
-The deadline after which the leader must stop its services because it may have lost the leadership (defaults to 10000).
-| `java.lang.Long`
-| 
-
-| [[quarkus.camel.cluster.kubernetes.retry-period-millis]]`link:#quarkus.camel.cluster.kubernetes.retry-period-millis[quarkus.camel.cluster.kubernetes.retry-period-millis]`
-
-The time between two subsequent attempts to check and acquire the leadership. It is randomized using the jitter factor (defaults to 2000).
-| `java.lang.Long`
-| 
-
-| [[quarkus.camel.cluster.kubernetes.order]]`link:#quarkus.camel.cluster.kubernetes.order[quarkus.camel.cluster.kubernetes.order]`
-
-Service lookup order/priority (defaults to 2147482647).
-| `java.lang.Integer`
-| 
-
-| [[quarkus.camel.cluster.kubernetes.resource-name]]`link:#quarkus.camel.cluster.kubernetes.resource-name[quarkus.camel.cluster.kubernetes.resource-name]`
-
-The name of the lease resource used to do optimistic locking (defaults to 'leaders'). The resource name is used as prefix when the underlying Kubernetes resource can manage a single lock.
-| `string`
-| 
-
-| [[quarkus.camel.cluster.kubernetes.lease-resource-type]]`link:#quarkus.camel.cluster.kubernetes.lease-resource-type[quarkus.camel.cluster.kubernetes.lease-resource-type]`
-
-The lease resource type used in Kubernetes, either 'config-map' or 'lease' (defaults to 'lease').
-| `org.apache.camel.component.kubernetes.cluster.LeaseResourceType`
-| 
-
-| [[quarkus.camel.cluster.kubernetes.labels]]`link:#quarkus.camel.cluster.kubernetes.labels[quarkus.camel.cluster.kubernetes.labels]`
-
-The labels key/value used to identify the pods composing the cluster, defaults to empty map.
-| ``Map<String,String>``
-| 
-|===
-
-[.configuration-legend]
-{doc-link-icon-lock}[title=Fixed at build time] Configuration property fixed at build time. All other configuration properties are overridable at runtime.
-
diff --git a/extensions/kubernetes/deployment/pom.xml b/extensions/kubernetes-cluster-service/deployment/pom.xml
similarity index 85%
copy from extensions/kubernetes/deployment/pom.xml
copy to extensions/kubernetes-cluster-service/deployment/pom.xml
index 06d69a2454..b46c8f2157 100644
--- a/extensions/kubernetes/deployment/pom.xml
+++ b/extensions/kubernetes-cluster-service/deployment/pom.xml
@@ -21,13 +21,13 @@
     <modelVersion>4.0.0</modelVersion>
     <parent>
         <groupId>org.apache.camel.quarkus</groupId>
-        <artifactId>camel-quarkus-kubernetes-parent</artifactId>
+        <artifactId>camel-quarkus-kubernetes-cluster-service-parent</artifactId>
         <version>3.10.0-SNAPSHOT</version>
         <relativePath>../pom.xml</relativePath>
     </parent>
 
-    <artifactId>camel-quarkus-kubernetes-deployment</artifactId>
-    <name>Camel Quarkus :: Kubernetes :: Deployment</name>
+    <artifactId>camel-quarkus-kubernetes-cluster-service-deployment</artifactId>
+    <name>Camel Quarkus :: Kubernetes Cluster Service :: Deployment</name>
 
     <dependencies>
         <dependency>
@@ -48,7 +48,11 @@
         </dependency>
         <dependency>
             <groupId>org.apache.camel.quarkus</groupId>
-            <artifactId>camel-quarkus-kubernetes</artifactId>
+            <artifactId>camel-quarkus-kubernetes-deployment</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.apache.camel.quarkus</groupId>
+            <artifactId>camel-quarkus-kubernetes-cluster-service</artifactId>
         </dependency>
         <dependency>
             <groupId>io.quarkus</groupId>
diff --git a/extensions/kubernetes/deployment/src/main/java/org/apache/camel/quarkus/component/kubernetes/cluster/deployment/KubernetesClusterServiceProcessor.java b/extensions/kubernetes-cluster-service/deployment/src/main/java/org/apache/camel/quarkus/component/kubernetes/cluster/deployment/KubernetesClusterServiceProcessor.java
similarity index 100%
rename from extensions/kubernetes/deployment/src/main/java/org/apache/camel/quarkus/component/kubernetes/cluster/deployment/KubernetesClusterServiceProcessor.java
rename to extensions/kubernetes-cluster-service/deployment/src/main/java/org/apache/camel/quarkus/component/kubernetes/cluster/deployment/KubernetesClusterServiceProcessor.java
diff --git a/extensions/kubernetes/deployment/src/test/java/org/apache/camel/quarkus/component/kubernetes/cluster/deployment/KubernetesClusterServiceConfigDefaultTest.java b/extensions/kubernetes-cluster-service/deployment/src/test/java/org/apache/camel/quarkus/component/kubernetes/cluster/deployment/KubernetesClusterServiceConfigDefaultTest.java
similarity index 97%
rename from extensions/kubernetes/deployment/src/test/java/org/apache/camel/quarkus/component/kubernetes/cluster/deployment/KubernetesClusterServiceConfigDefaultTest.java
rename to extensions/kubernetes-cluster-service/deployment/src/test/java/org/apache/camel/quarkus/component/kubernetes/cluster/deployment/KubernetesClusterServiceConfigDefaultTest.java
index 2d4fd38c98..33793443b0 100644
--- a/extensions/kubernetes/deployment/src/test/java/org/apache/camel/quarkus/component/kubernetes/cluster/deployment/KubernetesClusterServiceConfigDefaultTest.java
+++ b/extensions/kubernetes-cluster-service/deployment/src/test/java/org/apache/camel/quarkus/component/kubernetes/cluster/deployment/KubernetesClusterServiceConfigDefaultTest.java
@@ -40,7 +40,7 @@ public class KubernetesClusterServiceConfigDefaultTest {
             .setArchiveProducer(() -> ShrinkWrap.create(JavaArchive.class).addAsResource(applicationProperties(),
                     "application.properties"));
 
-    public static final Asset applicationProperties() {
+    public static Asset applicationProperties() {
         Writer writer = new StringWriter();
 
         Properties props = new Properties();
diff --git a/extensions/kubernetes/deployment/src/test/java/org/apache/camel/quarkus/component/kubernetes/cluster/deployment/KubernetesClusterServiceConfigEnabledWithRebalancingTest.java b/extensions/kubernetes-cluster-service/deployment/src/test/java/org/apache/camel/quarkus/component/kubernetes/cluster/deployment/KubernetesClusterServiceConfigEnabledWithRebalancingTest.java
similarity index 95%
rename from extensions/kubernetes/deployment/src/test/java/org/apache/camel/quarkus/component/kubernetes/cluster/deployment/KubernetesClusterServiceConfigEnabledWithRebalancingTest.java
rename to extensions/kubernetes-cluster-service/deployment/src/test/java/org/apache/camel/quarkus/component/kubernetes/cluster/deployment/KubernetesClusterServiceConfigEnabledWithRebalancingTest.java
index 7c4196e2ca..f5499a6507 100644
--- a/extensions/kubernetes/deployment/src/test/java/org/apache/camel/quarkus/component/kubernetes/cluster/deployment/KubernetesClusterServiceConfigEnabledWithRebalancingTest.java
+++ b/extensions/kubernetes-cluster-service/deployment/src/test/java/org/apache/camel/quarkus/component/kubernetes/cluster/deployment/KubernetesClusterServiceConfigEnabledWithRebalancingTest.java
@@ -40,11 +40,10 @@ public class KubernetesClusterServiceConfigEnabledWithRebalancingTest {
             .setArchiveProducer(() -> ShrinkWrap.create(JavaArchive.class).addAsResource(applicationProperties(),
                     "application.properties"));
 
-    public static final Asset applicationProperties() {
+    public static Asset applicationProperties() {
         Writer writer = new StringWriter();
 
         Properties props = new Properties();
-        props.setProperty("quarkus.camel.cluster.kubernetes.enabled", "true");
 
         try {
             props.store(writer, "");
diff --git a/extensions/kubernetes/deployment/src/test/java/org/apache/camel/quarkus/component/kubernetes/cluster/deployment/KubernetesClusterServiceConfigEnabledWithoutDefaultsTest.java b/extensions/kubernetes-cluster-service/deployment/src/test/java/org/apache/camel/quarkus/component/kubernetes/cluster/deployment/KubernetesClusterServiceConfigEnabledWithoutDefaultsTest.java
similarity index 97%
rename from extensions/kubernetes/deployment/src/test/java/org/apache/camel/quarkus/component/kubernetes/cluster/deployment/KubernetesClusterServiceConfigEnabledWithoutDefaultsTest.java
rename to extensions/kubernetes-cluster-service/deployment/src/test/java/org/apache/camel/quarkus/component/kubernetes/cluster/deployment/KubernetesClusterServiceConfigEnabledWithoutDefaultsTest.java
index 089820d4d8..7633422e4b 100644
--- a/extensions/kubernetes/deployment/src/test/java/org/apache/camel/quarkus/component/kubernetes/cluster/deployment/KubernetesClusterServiceConfigEnabledWithoutDefaultsTest.java
+++ b/extensions/kubernetes-cluster-service/deployment/src/test/java/org/apache/camel/quarkus/component/kubernetes/cluster/deployment/KubernetesClusterServiceConfigEnabledWithoutDefaultsTest.java
@@ -43,11 +43,10 @@ public class KubernetesClusterServiceConfigEnabledWithoutDefaultsTest {
             .setArchiveProducer(() -> ShrinkWrap.create(JavaArchive.class).addAsResource(applicationProperties(),
                     "application.properties"));
 
-    public static final Asset applicationProperties() {
+    public static Asset applicationProperties() {
         Writer writer = new StringWriter();
 
         Properties props = new Properties();
-        props.setProperty("quarkus.camel.cluster.kubernetes.enabled", "true");
         props.setProperty("quarkus.camel.cluster.kubernetes.id", "kcs-id");
         props.setProperty("quarkus.camel.cluster.kubernetes.master-url", "kcs-master-url");
         props.setProperty("quarkus.camel.cluster.kubernetes.connection-timeout-millis", "5033");
diff --git a/extensions/kubernetes/deployment/src/test/java/org/apache/camel/quarkus/component/kubernetes/cluster/deployment/KubernetesClusterServiceConfigEnabledWithoutRebalancingTest.java b/extensions/kubernetes-cluster-service/deployment/src/test/java/org/apache/camel/quarkus/component/kubernetes/cluster/deployment/KubernetesClusterServiceConfigEnabledWithoutRebalancingTest.java
similarity index 96%
rename from extensions/kubernetes/deployment/src/test/java/org/apache/camel/quarkus/component/kubernetes/cluster/deployment/KubernetesClusterServiceConfigEnabledWithoutRebalancingTest.java
rename to extensions/kubernetes-cluster-service/deployment/src/test/java/org/apache/camel/quarkus/component/kubernetes/cluster/deployment/KubernetesClusterServiceConfigEnabledWithoutRebalancingTest.java
index 281062bd5c..c2f1df0115 100644
--- a/extensions/kubernetes/deployment/src/test/java/org/apache/camel/quarkus/component/kubernetes/cluster/deployment/KubernetesClusterServiceConfigEnabledWithoutRebalancingTest.java
+++ b/extensions/kubernetes-cluster-service/deployment/src/test/java/org/apache/camel/quarkus/component/kubernetes/cluster/deployment/KubernetesClusterServiceConfigEnabledWithoutRebalancingTest.java
@@ -45,11 +45,10 @@ public class KubernetesClusterServiceConfigEnabledWithoutRebalancingTest {
             .setArchiveProducer(() -> ShrinkWrap.create(JavaArchive.class).addAsResource(applicationProperties(),
                     "application.properties"));
 
-    public static final Asset applicationProperties() {
+    public static Asset applicationProperties() {
         Writer writer = new StringWriter();
 
         Properties props = new Properties();
-        props.setProperty("quarkus.camel.cluster.kubernetes.enabled", "true");
         props.setProperty("quarkus.camel.cluster.kubernetes.rebalancing", "false");
 
         try {
diff --git a/extensions/kubernetes-cluster-service/pom.xml b/extensions/kubernetes-cluster-service/pom.xml
new file mode 100644
index 0000000000..5d268f73f4
--- /dev/null
+++ b/extensions/kubernetes-cluster-service/pom.xml
@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+
+    Licensed to the Apache Software Foundation (ASF) under one or more
+    contributor license agreements.  See the NOTICE file distributed with
+    this work for additional information regarding copyright ownership.
+    The ASF licenses this file to You under the Apache License, Version 2.0
+    (the "License"); you may not use this file except in compliance with
+    the License.  You may obtain a copy of the License at
+
+         http://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+    <modelVersion>4.0.0</modelVersion>
+    <parent>
+        <groupId>org.apache.camel.quarkus</groupId>
+        <artifactId>camel-quarkus-extensions</artifactId>
+        <version>3.10.0-SNAPSHOT</version>
+        <relativePath>../pom.xml</relativePath>
+    </parent>
+
+    <artifactId>camel-quarkus-kubernetes-cluster-service-parent</artifactId>
+    <name>Camel Quarkus :: Kubernetes Cluster Service</name>
+    <packaging>pom</packaging>
+
+    <modules>
+        <module>deployment</module>
+        <module>runtime</module>
+    </modules>
+</project>
diff --git a/extensions/kubernetes/deployment/pom.xml b/extensions/kubernetes-cluster-service/runtime/pom.xml
similarity index 57%
copy from extensions/kubernetes/deployment/pom.xml
copy to extensions/kubernetes-cluster-service/runtime/pom.xml
index 06d69a2454..aaa916b725 100644
--- a/extensions/kubernetes/deployment/pom.xml
+++ b/extensions/kubernetes-cluster-service/runtime/pom.xml
@@ -21,44 +21,49 @@
     <modelVersion>4.0.0</modelVersion>
     <parent>
         <groupId>org.apache.camel.quarkus</groupId>
-        <artifactId>camel-quarkus-kubernetes-parent</artifactId>
+        <artifactId>camel-quarkus-kubernetes-cluster-service-parent</artifactId>
         <version>3.10.0-SNAPSHOT</version>
         <relativePath>../pom.xml</relativePath>
     </parent>
 
-    <artifactId>camel-quarkus-kubernetes-deployment</artifactId>
-    <name>Camel Quarkus :: Kubernetes :: Deployment</name>
+    <artifactId>camel-quarkus-kubernetes-cluster-service</artifactId>
+    <name>Camel Quarkus :: Kubernetes Cluster Service :: Runtime</name>
+    <description>Provides a Kubernetes implementation of the Camel Cluster Service SPI</description>
+
+    <properties>
+        <camel.quarkus.jvmSince>3.10.0</camel.quarkus.jvmSince>
+        <camel.quarkus.nativeSince>3.10.0</camel.quarkus.nativeSince>
+    </properties>
 
     <dependencies>
         <dependency>
             <groupId>io.quarkus</groupId>
-            <artifactId>quarkus-kubernetes-client-deployment</artifactId>
+            <artifactId>quarkus-kubernetes-client</artifactId>
         </dependency>
         <dependency>
             <groupId>org.apache.camel.quarkus</groupId>
-            <artifactId>camel-quarkus-core-deployment</artifactId>
+            <artifactId>camel-quarkus-core</artifactId>
         </dependency>
         <dependency>
             <groupId>org.apache.camel.quarkus</groupId>
-            <artifactId>camel-quarkus-core-cloud-deployment</artifactId>
+            <artifactId>camel-quarkus-core-cloud</artifactId>
         </dependency>
         <dependency>
             <groupId>org.apache.camel.quarkus</groupId>
-            <artifactId>camel-quarkus-support-commons-logging-deployment</artifactId>
+            <artifactId>camel-quarkus-support-commons-logging</artifactId>
         </dependency>
         <dependency>
             <groupId>org.apache.camel.quarkus</groupId>
             <artifactId>camel-quarkus-kubernetes</artifactId>
         </dependency>
-        <dependency>
-            <groupId>io.quarkus</groupId>
-            <artifactId>quarkus-junit5-internal</artifactId>
-            <scope>test</scope>
-        </dependency>
     </dependencies>
 
     <build>
         <plugins>
+            <plugin>
+                <groupId>io.quarkus</groupId>
+                <artifactId>quarkus-extension-maven-plugin</artifactId>
+            </plugin>
             <plugin>
                 <groupId>org.apache.maven.plugins</groupId>
                 <artifactId>maven-compiler-plugin</artifactId>
@@ -75,4 +80,31 @@
         </plugins>
     </build>
 
+    <profiles>
+        <profile>
+            <id>full</id>
+            <activation>
+                <property>
+                    <name>!quickly</name>
+                </property>
+            </activation>
+            <build>
+                <plugins>
+                    <plugin>
+                        <groupId>org.apache.camel.quarkus</groupId>
+                        <artifactId>camel-quarkus-maven-plugin</artifactId>
+                        <executions>
+                            <execution>
+                                <id>update-extension-doc-page</id>
+                                <goals>
+                                    <goal>update-extension-doc-page</goal>
+                                </goals>
+                                <phase>process-classes</phase>
+                            </execution>
+                        </executions>
+                    </plugin>
+                </plugins>
+            </build>
+        </profile>
+    </profiles>
 </project>
diff --git a/extensions/kubernetes/runtime/src/main/doc/configuration.adoc b/extensions/kubernetes-cluster-service/runtime/src/main/doc/configuration.adoc
similarity index 51%
copy from extensions/kubernetes/runtime/src/main/doc/configuration.adoc
copy to extensions/kubernetes-cluster-service/runtime/src/main/doc/configuration.adoc
index 8acafeb39f..2655415293 100644
--- a/extensions/kubernetes/runtime/src/main/doc/configuration.adoc
+++ b/extensions/kubernetes-cluster-service/runtime/src/main/doc/configuration.adoc
@@ -2,23 +2,6 @@ ifeval::[{doc-show-extra-content} == true]
 include::extra-content.adoc[]
 endif::[]
 
-=== Automatic registration of a Kubernetes Client instance
-
-The extension automatically registers a Kubernetes Client bean named `kubernetesClient`. You can reference the bean in your routes like this:
-
-    from("direct:pods")
-        .to("kubernetes-pods:///?kubernetesClient=#kubernetesClient&operation=listPods")
-
-By default the client is configured from the local kubeconfig file. You can customize the client configuration via properties within `application.properties`:
-
-[source,properties]
-----
-quarkus.kubernetes-client.master-url=https://my.k8s.host
-quarkus.kubernetes-client.namespace=my-namespace
-----
-
-The full set of configuration options are documented in the https://quarkus.io/guides/kubernetes-client#quarkus-kubernetes-client_configuration[Quarkus Kubernetes Client guide].
-
 === Having only a single consumer in a cluster consuming from a given endpoint
 
 When the same route is deployed on multiple pods, it could be interesting to use this extension in conjunction with the xref:reference/extensions/master.adoc[Master one].
@@ -30,12 +13,6 @@ For instance, having the route below deployed on multiple pods:
 from("master:ns:timer:test?period=100").log("Timer invoked on a single pod at a time");
 ```
 
-It's possible to enable the kubernetes cluster service with a property like below:
-
-```
-quarkus.camel.cluster.kubernetes.enabled = true
-```
-
 As a result, a single consumer will be active across the `ns` camel master namespace.
 It means that, at a given time, only a single timer will generate exchanges across the whole cluster.
 In other words, messages will be logged every 100ms on a single pod at a time.
diff --git a/extensions/kubernetes/runtime/src/main/java/org/apache/camel/quarkus/component/kubernetes/cluster/KubernetesClusterServiceBuildTimeConfig.java b/extensions/kubernetes-cluster-service/runtime/src/main/java/org/apache/camel/quarkus/component/kubernetes/cluster/KubernetesClusterServiceBuildTimeConfig.java
similarity index 87%
rename from extensions/kubernetes/runtime/src/main/java/org/apache/camel/quarkus/component/kubernetes/cluster/KubernetesClusterServiceBuildTimeConfig.java
rename to extensions/kubernetes-cluster-service/runtime/src/main/java/org/apache/camel/quarkus/component/kubernetes/cluster/KubernetesClusterServiceBuildTimeConfig.java
index 7d992f6e8f..024f282cdf 100644
--- a/extensions/kubernetes/runtime/src/main/java/org/apache/camel/quarkus/component/kubernetes/cluster/KubernetesClusterServiceBuildTimeConfig.java
+++ b/extensions/kubernetes-cluster-service/runtime/src/main/java/org/apache/camel/quarkus/component/kubernetes/cluster/KubernetesClusterServiceBuildTimeConfig.java
@@ -24,12 +24,15 @@ import io.quarkus.runtime.annotations.ConfigRoot;
 
 @ConfigRoot(name = "camel.cluster.kubernetes", phase = ConfigPhase.BUILD_AND_RUN_TIME_FIXED)
 public class KubernetesClusterServiceBuildTimeConfig {
-
     /**
      * Whether a Kubernetes Cluster Service should be automatically configured
      * according to 'quarkus.camel.cluster.kubernetes.*' configurations.
+     *
+     * @deprecated this property is no longer needed as the Kubernetes implementation of the Camel CLuster Service API has
+     *             been moved to a dedicated extension.
      */
-    @ConfigItem(defaultValue = "false")
+    @Deprecated(since = "3.10.0", forRemoval = true)
+    @ConfigItem(defaultValue = "true")
     public boolean enabled;
 
     /**
@@ -47,5 +50,4 @@ public class KubernetesClusterServiceBuildTimeConfig {
             return config.enabled;
         }
     }
-
 }
diff --git a/extensions/kubernetes/runtime/src/main/java/org/apache/camel/quarkus/component/kubernetes/cluster/KubernetesClusterServiceRecorder.java b/extensions/kubernetes-cluster-service/runtime/src/main/java/org/apache/camel/quarkus/component/kubernetes/cluster/KubernetesClusterServiceRecorder.java
similarity index 100%
rename from extensions/kubernetes/runtime/src/main/java/org/apache/camel/quarkus/component/kubernetes/cluster/KubernetesClusterServiceRecorder.java
rename to extensions/kubernetes-cluster-service/runtime/src/main/java/org/apache/camel/quarkus/component/kubernetes/cluster/KubernetesClusterServiceRecorder.java
diff --git a/extensions/kubernetes/runtime/src/main/java/org/apache/camel/quarkus/component/kubernetes/cluster/KubernetesClusterServiceRuntimeConfig.java b/extensions/kubernetes-cluster-service/runtime/src/main/java/org/apache/camel/quarkus/component/kubernetes/cluster/KubernetesClusterServiceRuntimeConfig.java
similarity index 100%
rename from extensions/kubernetes/runtime/src/main/java/org/apache/camel/quarkus/component/kubernetes/cluster/KubernetesClusterServiceRuntimeConfig.java
rename to extensions/kubernetes-cluster-service/runtime/src/main/java/org/apache/camel/quarkus/component/kubernetes/cluster/KubernetesClusterServiceRuntimeConfig.java
diff --git a/extensions/kubernetes-cluster-service/runtime/src/main/resources/META-INF/quarkus-extension.yaml b/extensions/kubernetes-cluster-service/runtime/src/main/resources/META-INF/quarkus-extension.yaml
new file mode 100644
index 0000000000..fa4ee1da47
--- /dev/null
+++ b/extensions/kubernetes-cluster-service/runtime/src/main/resources/META-INF/quarkus-extension.yaml
@@ -0,0 +1,32 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#      http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+# This is a generated file. Do not edit directly!
+# To re-generate, run the following command from the top level directory:
+#
+#   mvn -N cq:update-quarkus-metadata
+#
+---
+name: "Camel Kubernetes Cluster Service"
+description: "Provides a Kubernetes implementation of the Camel Cluster Service SPI"
+metadata:
+  icon-url: "https://raw.githubusercontent.com/apache/camel-website/main/antora-ui-camel/src/img/logo-d.svg"
+  guide: "https://camel.apache.org/camel-quarkus/latest/reference/extensions/kubernetes-cluster-service.html"
+  categories:
+  - "integration"
+  status:
+  - "stable"
diff --git a/extensions/kubernetes/deployment/pom.xml b/extensions/kubernetes/deployment/pom.xml
index 06d69a2454..b31f828b0a 100644
--- a/extensions/kubernetes/deployment/pom.xml
+++ b/extensions/kubernetes/deployment/pom.xml
@@ -50,11 +50,6 @@
             <groupId>org.apache.camel.quarkus</groupId>
             <artifactId>camel-quarkus-kubernetes</artifactId>
         </dependency>
-        <dependency>
-            <groupId>io.quarkus</groupId>
-            <artifactId>quarkus-junit5-internal</artifactId>
-            <scope>test</scope>
-        </dependency>
     </dependencies>
 
     <build>
diff --git a/extensions/kubernetes/runtime/src/main/doc/configuration.adoc b/extensions/kubernetes/runtime/src/main/doc/configuration.adoc
index 8acafeb39f..01a10f2421 100644
--- a/extensions/kubernetes/runtime/src/main/doc/configuration.adoc
+++ b/extensions/kubernetes/runtime/src/main/doc/configuration.adoc
@@ -18,26 +18,3 @@ quarkus.kubernetes-client.namespace=my-namespace
 ----
 
 The full set of configuration options are documented in the https://quarkus.io/guides/kubernetes-client#quarkus-kubernetes-client_configuration[Quarkus Kubernetes Client guide].
-
-=== Having only a single consumer in a cluster consuming from a given endpoint
-
-When the same route is deployed on multiple pods, it could be interesting to use this extension in conjunction with the xref:reference/extensions/master.adoc[Master one].
-In such a setup, a single consumer will be active at a time across the whole camel master namespace.
-
-For instance, having the route below deployed on multiple pods:
-
-```
-from("master:ns:timer:test?period=100").log("Timer invoked on a single pod at a time");
-```
-
-It's possible to enable the kubernetes cluster service with a property like below:
-
-```
-quarkus.camel.cluster.kubernetes.enabled = true
-```
-
-As a result, a single consumer will be active across the `ns` camel master namespace.
-It means that, at a given time, only a single timer will generate exchanges across the whole cluster.
-In other words, messages will be logged every 100ms on a single pod at a time.
-
-The kubernetes cluster service could further be tuned by tweaking `quarkus.camel.cluster.kubernetes.*` properties.
diff --git a/extensions/pom.xml b/extensions/pom.xml
index fdf2541c22..dd0e224fc3 100644
--- a/extensions/pom.xml
+++ b/extensions/pom.xml
@@ -161,6 +161,7 @@
         <module>kotlin</module>
         <module>kotlin-dsl</module>
         <module>kubernetes</module>
+        <module>kubernetes-cluster-service</module>
         <module>kudu</module>
         <module>language</module>
         <module>ldap</module>
diff --git a/integration-tests/master-openshift/pom.xml b/integration-tests/master-openshift/pom.xml
index 7a8d7380ff..560970297c 100644
--- a/integration-tests/master-openshift/pom.xml
+++ b/integration-tests/master-openshift/pom.xml
@@ -43,6 +43,10 @@
             <groupId>org.apache.camel.quarkus</groupId>
             <artifactId>camel-quarkus-kubernetes</artifactId>
         </dependency>
+        <dependency>
+            <groupId>org.apache.camel.quarkus</groupId>
+            <artifactId>camel-quarkus-kubernetes-cluster-service</artifactId>
+        </dependency>
         <dependency>
             <groupId>org.apache.camel.quarkus</groupId>
             <artifactId>camel-quarkus-log</artifactId>
diff --git a/integration-tests/master-openshift/src/main/resources/application.properties b/integration-tests/master-openshift/src/main/resources/application.properties
index c2751a5943..59c55c7848 100644
--- a/integration-tests/master-openshift/src/main/resources/application.properties
+++ b/integration-tests/master-openshift/src/main/resources/application.properties
@@ -17,5 +17,4 @@
 
 application.id = leader
 
-quarkus.camel.cluster.kubernetes.enabled = true
 quarkus.camel.cluster.kubernetes.rebalancing = false
diff --git a/poms/bom/pom.xml b/poms/bom/pom.xml
index 446911b9ba..4380dc1534 100644
--- a/poms/bom/pom.xml
+++ b/poms/bom/pom.xml
@@ -4500,6 +4500,16 @@
                 <artifactId>camel-quarkus-kubernetes-deployment</artifactId>
                 <version>${camel-quarkus.version}</version>
             </dependency>
+            <dependency>
+                <groupId>org.apache.camel.quarkus</groupId>
+                <artifactId>camel-quarkus-kubernetes-cluster-service</artifactId>
+                <version>${camel-quarkus.version}</version>
+            </dependency>
+            <dependency>
+                <groupId>org.apache.camel.quarkus</groupId>
+                <artifactId>camel-quarkus-kubernetes-cluster-service-deployment</artifactId>
+                <version>${camel-quarkus.version}</version>
+            </dependency>
             <dependency>
                 <groupId>org.apache.camel.quarkus</groupId>
                 <artifactId>camel-quarkus-kudu</artifactId>


(camel-quarkus) 04/04: Regen

Posted by ja...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

jamesnetherton pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel-quarkus.git

commit d4540b6af2e096f9a84c16c139e132e770e92f8d
Author: Luca Burgazzoli <lb...@gmail.com>
AuthorDate: Mon Mar 25 15:30:06 2024 +0100

    Regen
---
 docs/modules/ROOT/nav.adoc                                    | 3 ++-
 poms/bom/src/main/generated/flattened-full-pom.xml            | 8 ++++----
 poms/bom/src/main/generated/flattened-reduced-pom.xml         | 8 ++++----
 poms/bom/src/main/generated/flattened-reduced-verbose-pom.xml | 8 ++++----
 4 files changed, 14 insertions(+), 13 deletions(-)

diff --git a/docs/modules/ROOT/nav.adoc b/docs/modules/ROOT/nav.adoc
index 8256a43780..f09f593454 100644
--- a/docs/modules/ROOT/nav.adoc
+++ b/docs/modules/ROOT/nav.adoc
@@ -86,7 +86,6 @@
 *** xref:reference/extensions/chunk.adoc[Chunk]
 *** xref:reference/extensions/core-cloud.adoc[Cloud]
 *** xref:reference/extensions/cloudevents.adoc[Cloudevents]
-*** xref:reference/extensions/kubernetes-cluster-service.adoc[Cluster Service]
 *** xref:reference/extensions/coap.adoc[CoAP]
 *** xref:reference/extensions/cometd.adoc[CometD]
 *** xref:reference/extensions/console.adoc[Console]
@@ -122,6 +121,7 @@
 *** xref:reference/extensions/fop.adoc[FOP]
 *** xref:reference/extensions/ftp.adoc[FTP]
 *** xref:reference/extensions/file.adoc[File]
+*** xref:reference/extensions/file-cluster-service.adoc[File Cluster Service]
 *** xref:reference/extensions/file-watch.adoc[File Watch]
 *** xref:reference/extensions/flatpack.adoc[Flatpack]
 *** xref:reference/extensions/flink.adoc[Flink]
@@ -191,6 +191,7 @@
 *** xref:reference/extensions/kotlin.adoc[Kotlin]
 *** xref:reference/extensions/kotlin-dsl.adoc[Kotlin DSL]
 *** xref:reference/extensions/kubernetes.adoc[Kubernetes]
+*** xref:reference/extensions/kubernetes-cluster-service.adoc[Kubernetes Cluster Service]
 *** xref:reference/extensions/kudu.adoc[Kudu]
 *** xref:reference/extensions/ldap.adoc[LDAP]
 *** xref:reference/extensions/ldif.adoc[LDIF]
diff --git a/poms/bom/src/main/generated/flattened-full-pom.xml b/poms/bom/src/main/generated/flattened-full-pom.xml
index 9fa8061815..5afdc6ae8b 100644
--- a/poms/bom/src/main/generated/flattened-full-pom.xml
+++ b/poms/bom/src/main/generated/flattened-full-pom.xml
@@ -3638,12 +3638,12 @@
       <dependency>
         <groupId>org.apache.camel.quarkus</groupId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
         <artifactId>camel-quarkus-file-cluster-service</artifactId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
-        <version>3.9.1-SNAPSHOT</version><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
+        <version>3.10.0-SNAPSHOT</version><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
       </dependency>
       <dependency>
         <groupId>org.apache.camel.quarkus</groupId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
         <artifactId>camel-quarkus-file-cluster-service-deployment</artifactId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
-        <version>3.9.1-SNAPSHOT</version><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
+        <version>3.10.0-SNAPSHOT</version><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
       </dependency>
       <dependency>
         <groupId>org.apache.camel.quarkus</groupId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
@@ -4438,12 +4438,12 @@
       <dependency>
         <groupId>org.apache.camel.quarkus</groupId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
         <artifactId>camel-quarkus-kubernetes-cluster-service</artifactId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
-        <version>3.9.1-SNAPSHOT</version><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
+        <version>3.10.0-SNAPSHOT</version><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
       </dependency>
       <dependency>
         <groupId>org.apache.camel.quarkus</groupId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
         <artifactId>camel-quarkus-kubernetes-cluster-service-deployment</artifactId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
-        <version>3.9.1-SNAPSHOT</version><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
+        <version>3.10.0-SNAPSHOT</version><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
       </dependency>
       <dependency>
         <groupId>org.apache.camel.quarkus</groupId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
diff --git a/poms/bom/src/main/generated/flattened-reduced-pom.xml b/poms/bom/src/main/generated/flattened-reduced-pom.xml
index 088ccd5dc7..f1392a1db2 100644
--- a/poms/bom/src/main/generated/flattened-reduced-pom.xml
+++ b/poms/bom/src/main/generated/flattened-reduced-pom.xml
@@ -3638,12 +3638,12 @@
       <dependency>
         <groupId>org.apache.camel.quarkus</groupId>
         <artifactId>camel-quarkus-file-cluster-service</artifactId>
-        <version>3.9.1-SNAPSHOT</version>
+        <version>3.10.0-SNAPSHOT</version>
       </dependency>
       <dependency>
         <groupId>org.apache.camel.quarkus</groupId>
         <artifactId>camel-quarkus-file-cluster-service-deployment</artifactId>
-        <version>3.9.1-SNAPSHOT</version>
+        <version>3.10.0-SNAPSHOT</version>
       </dependency>
       <dependency>
         <groupId>org.apache.camel.quarkus</groupId>
@@ -4438,12 +4438,12 @@
       <dependency>
         <groupId>org.apache.camel.quarkus</groupId>
         <artifactId>camel-quarkus-kubernetes-cluster-service</artifactId>
-        <version>3.9.1-SNAPSHOT</version>
+        <version>3.10.0-SNAPSHOT</version>
       </dependency>
       <dependency>
         <groupId>org.apache.camel.quarkus</groupId>
         <artifactId>camel-quarkus-kubernetes-cluster-service-deployment</artifactId>
-        <version>3.9.1-SNAPSHOT</version>
+        <version>3.10.0-SNAPSHOT</version>
       </dependency>
       <dependency>
         <groupId>org.apache.camel.quarkus</groupId>
diff --git a/poms/bom/src/main/generated/flattened-reduced-verbose-pom.xml b/poms/bom/src/main/generated/flattened-reduced-verbose-pom.xml
index 1e5aea97ab..b8c356bf79 100644
--- a/poms/bom/src/main/generated/flattened-reduced-verbose-pom.xml
+++ b/poms/bom/src/main/generated/flattened-reduced-verbose-pom.xml
@@ -3638,12 +3638,12 @@
       <dependency>
         <groupId>org.apache.camel.quarkus</groupId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
         <artifactId>camel-quarkus-file-cluster-service</artifactId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
-        <version>3.9.1-SNAPSHOT</version><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
+        <version>3.10.0-SNAPSHOT</version><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
       </dependency>
       <dependency>
         <groupId>org.apache.camel.quarkus</groupId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
         <artifactId>camel-quarkus-file-cluster-service-deployment</artifactId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
-        <version>3.9.1-SNAPSHOT</version><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
+        <version>3.10.0-SNAPSHOT</version><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
       </dependency>
       <dependency>
         <groupId>org.apache.camel.quarkus</groupId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
@@ -4438,12 +4438,12 @@
       <dependency>
         <groupId>org.apache.camel.quarkus</groupId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
         <artifactId>camel-quarkus-kubernetes-cluster-service</artifactId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
-        <version>3.9.1-SNAPSHOT</version><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
+        <version>3.10.0-SNAPSHOT</version><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
       </dependency>
       <dependency>
         <groupId>org.apache.camel.quarkus</groupId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
         <artifactId>camel-quarkus-kubernetes-cluster-service-deployment</artifactId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
-        <version>3.9.1-SNAPSHOT</version><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
+        <version>3.10.0-SNAPSHOT</version><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->
       </dependency>
       <dependency>
         <groupId>org.apache.camel.quarkus</groupId><!-- org.apache.camel.quarkus:camel-quarkus-bom:${project.version} -->