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


The following commit(s) were added to refs/heads/main by this push:
     new bd7d6011b8 Make the majority of KuberenetesClusterService 
configuration overridable at runtime
bd7d6011b8 is described below

commit bd7d6011b8c70a88d9749f098811541c2ff9bd79
Author: James Netherton <jamesnether...@gmail.com>
AuthorDate: Tue Feb 13 11:50:19 2024 +0000

    Make the majority of KuberenetesClusterService configuration overridable at 
runtime
    
    Fixes #5739
---
 .../pages/reference/extensions/kubernetes.adoc     | 38 ++++++++--------
 .../KubernetesClusterServiceProcessor.java         | 25 ++++++-----
 ...erServiceConfigEnabledWithRebalancingTest.java} |  2 +-
 .../KubernetesClusterServiceBuildTimeConfig.java   | 51 ++++++++++++++++++++++
 .../cluster/KubernetesClusterServiceRecorder.java  | 30 ++++++-------
 ... => KubernetesClusterServiceRuntimeConfig.java} | 30 ++-----------
 6 files changed, 102 insertions(+), 74 deletions(-)

diff --git a/docs/modules/ROOT/pages/reference/extensions/kubernetes.adoc 
b/docs/modules/ROOT/pages/reference/extensions/kubernetes.adoc
index a2a6e97a6c..97fc2967c9 100644
--- a/docs/modules/ROOT/pages/reference/extensions/kubernetes.adoc
+++ b/docs/modules/ROOT/pages/reference/extensions/kubernetes.adoc
@@ -125,85 +125,85 @@ Whether a Kubernetes Cluster Service should be 
automatically configured accordin
 | `boolean`
 | `false`
 
-|icon:lock[title=Fixed at build time] 
[[quarkus.camel.cluster.kubernetes.id]]`link:#quarkus.camel.cluster.kubernetes.id[quarkus.camel.cluster.kubernetes.id]`
+|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`
 | 
 
-|icon:lock[title=Fixed at build time] 
[[quarkus.camel.cluster.kubernetes.master-url]]`link:#quarkus.camel.cluster.kubernetes.master-url[quarkus.camel.cluster.kubernetes.master-url]`
+| 
[[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`
 | 
 
-|icon:lock[title=Fixed at build time] 
[[quarkus.camel.cluster.kubernetes.connection-timeout-millis]]`link:#quarkus.camel.cluster.kubernetes.connection-timeout-millis[quarkus.camel.cluster.kubernetes.connection-timeout-millis]`
+| 
[[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`
 | 
 
-|icon:lock[title=Fixed at build time] 
[[quarkus.camel.cluster.kubernetes.namespace]]`link:#quarkus.camel.cluster.kubernetes.namespace[quarkus.camel.cluster.kubernetes.namespace]`
+| 
[[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`
 | 
 
-|icon:lock[title=Fixed at build time] 
[[quarkus.camel.cluster.kubernetes.pod-name]]`link:#quarkus.camel.cluster.kubernetes.pod-name[quarkus.camel.cluster.kubernetes.pod-name]`
+| 
[[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`
 | 
 
-|icon:lock[title=Fixed at build time] 
[[quarkus.camel.cluster.kubernetes.jitter-factor]]`link:#quarkus.camel.cluster.kubernetes.jitter-factor[quarkus.camel.cluster.kubernetes.jitter-factor]`
+| 
[[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`
 | 
 
-|icon:lock[title=Fixed at build time] 
[[quarkus.camel.cluster.kubernetes.lease-duration-millis]]`link:#quarkus.camel.cluster.kubernetes.lease-duration-millis[quarkus.camel.cluster.kubernetes.lease-duration-millis]`
+| 
[[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`
 | 
 
-|icon:lock[title=Fixed at build time] 
[[quarkus.camel.cluster.kubernetes.renew-deadline-millis]]`link:#quarkus.camel.cluster.kubernetes.renew-deadline-millis[quarkus.camel.cluster.kubernetes.renew-deadline-millis]`
+| 
[[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`
 | 
 
-|icon:lock[title=Fixed at build time] 
[[quarkus.camel.cluster.kubernetes.retry-period-millis]]`link:#quarkus.camel.cluster.kubernetes.retry-period-millis[quarkus.camel.cluster.kubernetes.retry-period-millis]`
+| 
[[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`
 | 
 
-|icon:lock[title=Fixed at build time] 
[[quarkus.camel.cluster.kubernetes.order]]`link:#quarkus.camel.cluster.kubernetes.order[quarkus.camel.cluster.kubernetes.order]`
+| 
[[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`
 | 
 
-|icon:lock[title=Fixed at build time] 
[[quarkus.camel.cluster.kubernetes.resource-name]]`link:#quarkus.camel.cluster.kubernetes.resource-name[quarkus.camel.cluster.kubernetes.resource-name]`
+| 
[[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`
 | 
 
-|icon:lock[title=Fixed at build time] 
[[quarkus.camel.cluster.kubernetes.lease-resource-type]]`link:#quarkus.camel.cluster.kubernetes.lease-resource-type[quarkus.camel.cluster.kubernetes.lease-resource-type]`
+| 
[[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`
 | 
 
-|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`
-
-|icon:lock[title=Fixed at build time] 
[[quarkus.camel.cluster.kubernetes.labels]]`link:#quarkus.camel.cluster.kubernetes.labels[quarkus.camel.cluster.kubernetes.labels]`
+| 
[[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>``
diff --git 
a/extensions/kubernetes/deployment/src/main/java/org/apache/camel/quarkus/component/kubernetes/cluster/deployment/KubernetesClusterServiceProcessor.java
 
b/extensions/kubernetes/deployment/src/main/java/org/apache/camel/quarkus/component/kubernetes/cluster/deployment/KubernetesClusterServiceProcessor.java
index ff3962e3f5..96a9c34b9a 100644
--- 
a/extensions/kubernetes/deployment/src/main/java/org/apache/camel/quarkus/component/kubernetes/cluster/deployment/KubernetesClusterServiceProcessor.java
+++ 
b/extensions/kubernetes/deployment/src/main/java/org/apache/camel/quarkus/component/kubernetes/cluster/deployment/KubernetesClusterServiceProcessor.java
@@ -22,30 +22,31 @@ import io.quarkus.deployment.annotations.ExecutionTime;
 import io.quarkus.deployment.annotations.Record;
 import io.quarkus.runtime.RuntimeValue;
 import org.apache.camel.component.kubernetes.cluster.KubernetesClusterService;
-import 
org.apache.camel.quarkus.component.kubernetes.cluster.KubernetesClusterServiceConfig;
+import 
org.apache.camel.quarkus.component.kubernetes.cluster.KubernetesClusterServiceBuildTimeConfig;
 import 
org.apache.camel.quarkus.component.kubernetes.cluster.KubernetesClusterServiceRecorder;
-import org.apache.camel.quarkus.core.deployment.spi.CamelBeanBuildItem;
+import 
org.apache.camel.quarkus.component.kubernetes.cluster.KubernetesClusterServiceRuntimeConfig;
 import org.apache.camel.quarkus.core.deployment.spi.CamelContextBuildItem;
+import org.apache.camel.quarkus.core.deployment.spi.CamelRuntimeBeanBuildItem;
 import org.apache.camel.support.cluster.RebalancingCamelClusterService;
 
 class KubernetesClusterServiceProcessor {
 
-    @Record(ExecutionTime.STATIC_INIT)
-    @BuildStep(onlyIf = KubernetesClusterServiceConfig.Enabled.class)
+    @Record(ExecutionTime.RUNTIME_INIT)
+    @BuildStep(onlyIf = KubernetesClusterServiceBuildTimeConfig.Enabled.class)
     @Consume(CamelContextBuildItem.class)
-    CamelBeanBuildItem setupKubernetesClusterService(
-            KubernetesClusterServiceConfig config,
+    CamelRuntimeBeanBuildItem setupKubernetesClusterService(
+            KubernetesClusterServiceBuildTimeConfig buildTimeConfig,
+            KubernetesClusterServiceRuntimeConfig runtimeConfig,
             KubernetesClusterServiceRecorder recorder) {
 
-        if (config.rebalancing) {
+        if (buildTimeConfig.rebalancing) {
             final RuntimeValue<RebalancingCamelClusterService> krcs = recorder
-                    .createKubernetesRebalancingClusterService(config);
-            return new 
CamelBeanBuildItem("kubernetesRebalancingClusterService",
+                    .createKubernetesRebalancingClusterService(runtimeConfig);
+            return new 
CamelRuntimeBeanBuildItem("kubernetesRebalancingClusterService",
                     RebalancingCamelClusterService.class.getName(), krcs);
         } else {
-            final RuntimeValue<KubernetesClusterService> kcs = 
recorder.createKubernetesClusterService(config);
-            return new CamelBeanBuildItem("kubernetesClusterService", 
KubernetesClusterService.class.getName(), kcs);
+            final RuntimeValue<KubernetesClusterService> kcs = 
recorder.createKubernetesClusterService(runtimeConfig);
+            return new CamelRuntimeBeanBuildItem("kubernetesClusterService", 
KubernetesClusterService.class.getName(), kcs);
         }
     }
-
 }
diff --git 
a/extensions/kubernetes/deployment/src/test/java/org/apache/camel/quarkus/component/kubernetes/cluster/deployment/KubernetesClusterServiceConfigEnabledWithRebalancingtTest.java
 
b/extensions/kubernetes/deployment/src/test/java/org/apache/camel/quarkus/component/kubernetes/cluster/deployment/KubernetesClusterServiceConfigEnabledWithRebalancingTest.java
similarity index 99%
rename from 
extensions/kubernetes/deployment/src/test/java/org/apache/camel/quarkus/component/kubernetes/cluster/deployment/KubernetesClusterServiceConfigEnabledWithRebalancingtTest.java
rename to 
extensions/kubernetes/deployment/src/test/java/org/apache/camel/quarkus/component/kubernetes/cluster/deployment/KubernetesClusterServiceConfigEnabledWithRebalancingTest.java
index 28e41eb5cf..7c4196e2ca 100644
--- 
a/extensions/kubernetes/deployment/src/test/java/org/apache/camel/quarkus/component/kubernetes/cluster/deployment/KubernetesClusterServiceConfigEnabledWithRebalancingtTest.java
+++ 
b/extensions/kubernetes/deployment/src/test/java/org/apache/camel/quarkus/component/kubernetes/cluster/deployment/KubernetesClusterServiceConfigEnabledWithRebalancingTest.java
@@ -34,7 +34,7 @@ import org.junit.jupiter.api.extension.RegisterExtension;
 
 import static org.junit.jupiter.api.Assertions.assertEquals;
 
-public class KubernetesClusterServiceConfigEnabledWithRebalancingtTest {
+public class KubernetesClusterServiceConfigEnabledWithRebalancingTest {
     @RegisterExtension
     static final QuarkusUnitTest CONFIG = new QuarkusUnitTest()
             .setArchiveProducer(() -> 
ShrinkWrap.create(JavaArchive.class).addAsResource(applicationProperties(),
diff --git 
a/extensions/kubernetes/runtime/src/main/java/org/apache/camel/quarkus/component/kubernetes/cluster/KubernetesClusterServiceBuildTimeConfig.java
 
b/extensions/kubernetes/runtime/src/main/java/org/apache/camel/quarkus/component/kubernetes/cluster/KubernetesClusterServiceBuildTimeConfig.java
new file mode 100644
index 0000000000..7d992f6e8f
--- /dev/null
+++ 
b/extensions/kubernetes/runtime/src/main/java/org/apache/camel/quarkus/component/kubernetes/cluster/KubernetesClusterServiceBuildTimeConfig.java
@@ -0,0 +1,51 @@
+/*
+ * 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.
+ */
+package org.apache.camel.quarkus.component.kubernetes.cluster;
+
+import java.util.function.BooleanSupplier;
+
+import io.quarkus.runtime.annotations.ConfigItem;
+import io.quarkus.runtime.annotations.ConfigPhase;
+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.
+     */
+    @ConfigItem(defaultValue = "false")
+    public boolean enabled;
+
+    /**
+     * Whether the camel master namespace leaders should be distributed evenly
+     * across all the camel contexts in the cluster.
+     */
+    @ConfigItem(defaultValue = "true")
+    public boolean rebalancing;
+
+    public static final class Enabled implements BooleanSupplier {
+        KubernetesClusterServiceBuildTimeConfig config;
+
+        @Override
+        public boolean getAsBoolean() {
+            return config.enabled;
+        }
+    }
+
+}
diff --git 
a/extensions/kubernetes/runtime/src/main/java/org/apache/camel/quarkus/component/kubernetes/cluster/KubernetesClusterServiceRecorder.java
 
b/extensions/kubernetes/runtime/src/main/java/org/apache/camel/quarkus/component/kubernetes/cluster/KubernetesClusterServiceRecorder.java
index 611abe87f8..548cf332ff 100644
--- 
a/extensions/kubernetes/runtime/src/main/java/org/apache/camel/quarkus/component/kubernetes/cluster/KubernetesClusterServiceRecorder.java
+++ 
b/extensions/kubernetes/runtime/src/main/java/org/apache/camel/quarkus/component/kubernetes/cluster/KubernetesClusterServiceRecorder.java
@@ -24,34 +24,34 @@ import 
org.apache.camel.support.cluster.RebalancingCamelClusterService;
 @Recorder
 public class KubernetesClusterServiceRecorder {
 
-    public RuntimeValue<KubernetesClusterService> 
createKubernetesClusterService(KubernetesClusterServiceConfig config) {
+    public RuntimeValue<KubernetesClusterService> 
createKubernetesClusterService(KubernetesClusterServiceRuntimeConfig config) {
         KubernetesClusterService kcs = 
setupKubernetesClusterServiceFromConfig(config);
         return new RuntimeValue<KubernetesClusterService>(kcs);
     }
 
     public RuntimeValue<RebalancingCamelClusterService> 
createKubernetesRebalancingClusterService(
-            KubernetesClusterServiceConfig config) {
+            KubernetesClusterServiceRuntimeConfig config) {
         KubernetesClusterService kcs = 
setupKubernetesClusterServiceFromConfig(config);
         RebalancingCamelClusterService rebalancingService = new 
RebalancingCamelClusterService(kcs,
                 kcs.getRenewDeadlineMillis());
         return new 
RuntimeValue<RebalancingCamelClusterService>(rebalancingService);
     }
 
-    private KubernetesClusterService 
setupKubernetesClusterServiceFromConfig(KubernetesClusterServiceConfig config) {
+    private KubernetesClusterService 
setupKubernetesClusterServiceFromConfig(KubernetesClusterServiceRuntimeConfig 
config) {
         KubernetesClusterService clusterService = new 
KubernetesClusterService();
 
-        config.id.ifPresent(id -> clusterService.setId(id));
-        config.masterUrl.ifPresent(url -> clusterService.setMasterUrl(url));
-        config.connectionTimeoutMillis.ifPresent(ctm -> 
clusterService.setConnectionTimeoutMillis(ctm));
-        config.namespace.ifPresent(ns -> 
clusterService.setKubernetesNamespace(ns));
-        config.podName.ifPresent(pn -> clusterService.setPodName(pn));
-        config.jitterFactor.ifPresent(jf -> 
clusterService.setJitterFactor(jf));
-        config.leaseDurationMillis.ifPresent(ldm -> 
clusterService.setLeaseDurationMillis(ldm));
-        config.renewDeadlineMillis.ifPresent(rdm -> 
clusterService.setRenewDeadlineMillis(rdm));
-        config.retryPeriodMillis.ifPresent(rpm -> 
clusterService.setRetryPeriodMillis(rpm));
-        config.order.ifPresent(o -> clusterService.setOrder(o));
-        config.resourceName.ifPresent(krn -> 
clusterService.setKubernetesResourceName(krn));
-        config.leaseResourceType.ifPresent(lrt -> 
clusterService.setLeaseResourceType(lrt));
+        config.id.ifPresent(clusterService::setId);
+        config.masterUrl.ifPresent(clusterService::setMasterUrl);
+        
config.connectionTimeoutMillis.ifPresent(clusterService::setConnectionTimeoutMillis);
+        config.namespace.ifPresent(clusterService::setKubernetesNamespace);
+        config.podName.ifPresent(clusterService::setPodName);
+        config.jitterFactor.ifPresent(clusterService::setJitterFactor);
+        
config.leaseDurationMillis.ifPresent(clusterService::setLeaseDurationMillis);
+        
config.renewDeadlineMillis.ifPresent(clusterService::setRenewDeadlineMillis);
+        
config.retryPeriodMillis.ifPresent(clusterService::setRetryPeriodMillis);
+        config.order.ifPresent(clusterService::setOrder);
+        
config.resourceName.ifPresent(clusterService::setKubernetesResourceName);
+        
config.leaseResourceType.ifPresent(clusterService::setLeaseResourceType);
 
         clusterService.setClusterLabels(config.labels);
 
diff --git 
a/extensions/kubernetes/runtime/src/main/java/org/apache/camel/quarkus/component/kubernetes/cluster/KubernetesClusterServiceConfig.java
 
b/extensions/kubernetes/runtime/src/main/java/org/apache/camel/quarkus/component/kubernetes/cluster/KubernetesClusterServiceRuntimeConfig.java
similarity index 78%
rename from 
extensions/kubernetes/runtime/src/main/java/org/apache/camel/quarkus/component/kubernetes/cluster/KubernetesClusterServiceConfig.java
rename to 
extensions/kubernetes/runtime/src/main/java/org/apache/camel/quarkus/component/kubernetes/cluster/KubernetesClusterServiceRuntimeConfig.java
index c95c42f801..26a3c8d2ef 100644
--- 
a/extensions/kubernetes/runtime/src/main/java/org/apache/camel/quarkus/component/kubernetes/cluster/KubernetesClusterServiceConfig.java
+++ 
b/extensions/kubernetes/runtime/src/main/java/org/apache/camel/quarkus/component/kubernetes/cluster/KubernetesClusterServiceRuntimeConfig.java
@@ -18,22 +18,14 @@ package 
org.apache.camel.quarkus.component.kubernetes.cluster;
 
 import java.util.Map;
 import java.util.Optional;
-import java.util.function.BooleanSupplier;
 
 import io.quarkus.runtime.annotations.ConfigItem;
+import io.quarkus.runtime.annotations.ConfigPhase;
 import io.quarkus.runtime.annotations.ConfigRoot;
 import org.apache.camel.component.kubernetes.cluster.LeaseResourceType;
-import org.eclipse.microprofile.config.ConfigProvider;
 
-@ConfigRoot(name = "camel.cluster.kubernetes")
-public class KubernetesClusterServiceConfig {
-
-    /**
-     * Whether a Kubernetes Cluster Service should be automatically configured
-     * according to 'quarkus.camel.cluster.kubernetes.*' configurations.
-     */
-    @ConfigItem(defaultValue = "false")
-    public boolean enabled;
+@ConfigRoot(name = "camel.cluster.kubernetes", phase = ConfigPhase.RUN_TIME)
+public class KubernetesClusterServiceRuntimeConfig {
 
     /**
      * The cluster service ID (defaults to null).
@@ -113,26 +105,10 @@ public class KubernetesClusterServiceConfig {
     @ConfigItem
     public Optional<LeaseResourceType> leaseResourceType;
 
-    /**
-     * Whether the camel master namespace leaders should be distributed evenly
-     * across all the camel contexts in the cluster.
-     */
-    @ConfigItem(defaultValue = "true")
-    public boolean rebalancing;
-
     /**
      * The labels key/value used to identify the pods composing the cluster,
      * defaults to empty map.
      */
     @ConfigItem
     public Map<String, String> labels;
-
-    public static final class Enabled implements BooleanSupplier {
-        @Override
-        public boolean getAsBoolean() {
-            return 
ConfigProvider.getConfig().getOptionalValue("quarkus.camel.cluster.kubernetes.enabled",
 Boolean.class)
-                    .orElse(Boolean.FALSE);
-        }
-    }
-
 }

Reply via email to