You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by da...@apache.org on 2021/08/17 11:06:46 UTC
[camel] branch main updated: CAMEL-16847: upgrade fabric8's
Kubernetes client to the latest version (#5959)
This is an automated email from the ASF dual-hosted git repository.
davsclaus pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel.git
The following commit(s) were added to refs/heads/main by this push:
new 51b65bf CAMEL-16847: upgrade fabric8's Kubernetes client to the latest version (#5959)
51b65bf is described below
commit 51b65bfc4f95f66745e40134123aa3bf6f898170
Author: Otavio Rodolfo Piske <or...@users.noreply.github.com>
AuthorDate: Tue Aug 17 13:06:20 2021 +0200
CAMEL-16847: upgrade fabric8's Kubernetes client to the latest version (#5959)
This finishes the 2-step client upgrade by bumping the client version to 5.7.0
---
camel-dependencies/pom.xml | 4 ++--
.../config_maps/KubernetesConfigMapsProducer.java | 13 ++++------
.../kubernetes/hpa/KubernetesHPAProducer.java | 16 ++++++-------
.../kubernetes/nodes/KubernetesNodesProducer.java | 12 ++++------
.../KubernetesPersistentVolumesProducer.java | 10 +-------
.../KubernetesPersistentVolumesClaimsProducer.java | 28 ++++++++++------------
.../secrets/KubernetesSecretsProducer.java | 26 +++++++++-----------
.../KubernetesServiceAccountsProducer.java | 27 ++++++++++-----------
.../services/KubernetesServicesProducer.java | 28 ++++++++++------------
...KubernetesReplicationControllersConsumerIT.java | 2 +-
.../integration/KubernetesServicesConsumerIT.java | 24 +++++++++++--------
parent/pom.xml | 4 ++--
12 files changed, 84 insertions(+), 110 deletions(-)
diff --git a/camel-dependencies/pom.xml b/camel-dependencies/pom.xml
index c93e35b..67a5606 100644
--- a/camel-dependencies/pom.xml
+++ b/camel-dependencies/pom.xml
@@ -362,8 +362,8 @@
<jzlib-version>1.1.3</jzlib-version>
<kafka-version>2.8.0</kafka-version>
<kotlin-version>1.5.21</kotlin-version>
- <kubernetes-client-version>5.6.0</kubernetes-client-version>
- <kubernetes-model-version>5.6.0</kubernetes-model-version>
+ <kubernetes-client-version>5.7.0</kubernetes-client-version>
+ <kubernetes-model-version>5.7.0</kubernetes-model-version>
<kudu-version>1.14.0</kudu-version>
<lettuce-version>5.1.0.RELEASE</lettuce-version>
<leveldb-api-version>0.12</leveldb-api-version>
diff --git a/components/camel-kubernetes/src/main/java/org/apache/camel/component/kubernetes/config_maps/KubernetesConfigMapsProducer.java b/components/camel-kubernetes/src/main/java/org/apache/camel/component/kubernetes/config_maps/KubernetesConfigMapsProducer.java
index 6893bac..3d72f2a 100644
--- a/components/camel-kubernetes/src/main/java/org/apache/camel/component/kubernetes/config_maps/KubernetesConfigMapsProducer.java
+++ b/components/camel-kubernetes/src/main/java/org/apache/camel/component/kubernetes/config_maps/KubernetesConfigMapsProducer.java
@@ -22,7 +22,6 @@ import java.util.Map;
import io.fabric8.kubernetes.api.model.ConfigMap;
import io.fabric8.kubernetes.api.model.ConfigMapBuilder;
import io.fabric8.kubernetes.api.model.ConfigMapList;
-import io.fabric8.kubernetes.client.dsl.FilterWatchListMultiDeletable;
import org.apache.camel.Exchange;
import org.apache.camel.component.kubernetes.AbstractKubernetesEndpoint;
import org.apache.camel.component.kubernetes.KubernetesConstants;
@@ -86,14 +85,12 @@ public class KubernetesConfigMapsProducer extends DefaultProducer {
}
protected void doListConfigMapsByLabels(Exchange exchange) {
- ConfigMapList configMapsList = null;
Map<String, String> labels = exchange.getIn().getHeader(KubernetesConstants.KUBERNETES_CONFIGMAPS_LABELS, Map.class);
- FilterWatchListMultiDeletable<ConfigMap, ConfigMapList> configMaps
- = getEndpoint().getKubernetesClient().configMaps().inAnyNamespace();
- for (Map.Entry<String, String> entry : labels.entrySet()) {
- configMaps.withLabel(entry.getKey(), entry.getValue());
- }
- configMapsList = configMaps.list();
+ ConfigMapList configMapsList = getEndpoint().getKubernetesClient()
+ .configMaps()
+ .inAnyNamespace()
+ .withLabels(labels)
+ .list();
prepareOutboundMessage(exchange, configMapsList.getItems());
}
diff --git a/components/camel-kubernetes/src/main/java/org/apache/camel/component/kubernetes/hpa/KubernetesHPAProducer.java b/components/camel-kubernetes/src/main/java/org/apache/camel/component/kubernetes/hpa/KubernetesHPAProducer.java
index ea10a4e..c528214 100644
--- a/components/camel-kubernetes/src/main/java/org/apache/camel/component/kubernetes/hpa/KubernetesHPAProducer.java
+++ b/components/camel-kubernetes/src/main/java/org/apache/camel/component/kubernetes/hpa/KubernetesHPAProducer.java
@@ -22,8 +22,6 @@ import io.fabric8.kubernetes.api.model.autoscaling.v1.HorizontalPodAutoscaler;
import io.fabric8.kubernetes.api.model.autoscaling.v1.HorizontalPodAutoscalerBuilder;
import io.fabric8.kubernetes.api.model.autoscaling.v1.HorizontalPodAutoscalerList;
import io.fabric8.kubernetes.api.model.autoscaling.v1.HorizontalPodAutoscalerSpec;
-import io.fabric8.kubernetes.client.dsl.MixedOperation;
-import io.fabric8.kubernetes.client.dsl.Resource;
import org.apache.camel.Exchange;
import org.apache.camel.component.kubernetes.AbstractKubernetesEndpoint;
import org.apache.camel.component.kubernetes.KubernetesConstants;
@@ -94,13 +92,13 @@ public class KubernetesHPAProducer extends DefaultProducer {
throw new IllegalArgumentException("Get HPA by labels require specify a labels set");
}
- MixedOperation<HorizontalPodAutoscaler, HorizontalPodAutoscalerList, Resource<HorizontalPodAutoscaler>> hpas
- = getEndpoint()
- .getKubernetesClient().autoscaling().v1().horizontalPodAutoscalers();
- for (Map.Entry<String, String> entry : labels.entrySet()) {
- hpas.withLabel(entry.getKey(), entry.getValue());
- }
- HorizontalPodAutoscalerList hpaList = hpas.list();
+ HorizontalPodAutoscalerList hpaList = getEndpoint()
+ .getKubernetesClient()
+ .autoscaling()
+ .v1()
+ .horizontalPodAutoscalers()
+ .withLabels(labels)
+ .list();
prepareOutboundMessage(exchange, hpaList.getItems());
}
diff --git a/components/camel-kubernetes/src/main/java/org/apache/camel/component/kubernetes/nodes/KubernetesNodesProducer.java b/components/camel-kubernetes/src/main/java/org/apache/camel/component/kubernetes/nodes/KubernetesNodesProducer.java
index 7b0a178..e587c2e 100644
--- a/components/camel-kubernetes/src/main/java/org/apache/camel/component/kubernetes/nodes/KubernetesNodesProducer.java
+++ b/components/camel-kubernetes/src/main/java/org/apache/camel/component/kubernetes/nodes/KubernetesNodesProducer.java
@@ -22,8 +22,6 @@ import io.fabric8.kubernetes.api.model.Node;
import io.fabric8.kubernetes.api.model.NodeBuilder;
import io.fabric8.kubernetes.api.model.NodeList;
import io.fabric8.kubernetes.api.model.NodeSpec;
-import io.fabric8.kubernetes.client.dsl.NonNamespaceOperation;
-import io.fabric8.kubernetes.client.dsl.Resource;
import org.apache.camel.Exchange;
import org.apache.camel.component.kubernetes.AbstractKubernetesEndpoint;
import org.apache.camel.component.kubernetes.KubernetesConstants;
@@ -87,13 +85,11 @@ public class KubernetesNodesProducer extends DefaultProducer {
}
protected void doListNodesByLabels(Exchange exchange) {
- NodeList nodeList = null;
Map<String, String> labels = exchange.getIn().getHeader(KubernetesConstants.KUBERNETES_NODES_LABELS, Map.class);
- NonNamespaceOperation<Node, NodeList, Resource<Node>> nodes = getEndpoint().getKubernetesClient().nodes();
- for (Map.Entry<String, String> entry : labels.entrySet()) {
- nodes.withLabel(entry.getKey(), entry.getValue());
- }
- nodeList = nodes.list();
+ NodeList nodeList = getEndpoint().getKubernetesClient()
+ .nodes()
+ .withLabels(labels)
+ .list();
prepareOutboundMessage(exchange, nodeList.getItems());
}
diff --git a/components/camel-kubernetes/src/main/java/org/apache/camel/component/kubernetes/persistent_volumes/KubernetesPersistentVolumesProducer.java b/components/camel-kubernetes/src/main/java/org/apache/camel/component/kubernetes/persistent_volumes/KubernetesPersistentVolumesProducer.java
index cf64935..aa4aaa2 100644
--- a/components/camel-kubernetes/src/main/java/org/apache/camel/component/kubernetes/persistent_volumes/KubernetesPersistentVolumesProducer.java
+++ b/components/camel-kubernetes/src/main/java/org/apache/camel/component/kubernetes/persistent_volumes/KubernetesPersistentVolumesProducer.java
@@ -20,8 +20,6 @@ import java.util.Map;
import io.fabric8.kubernetes.api.model.PersistentVolume;
import io.fabric8.kubernetes.api.model.PersistentVolumeList;
-import io.fabric8.kubernetes.client.dsl.NonNamespaceOperation;
-import io.fabric8.kubernetes.client.dsl.Resource;
import org.apache.camel.Exchange;
import org.apache.camel.component.kubernetes.AbstractKubernetesEndpoint;
import org.apache.camel.component.kubernetes.KubernetesConstants;
@@ -77,15 +75,9 @@ public class KubernetesPersistentVolumesProducer extends DefaultProducer {
}
protected void doListPersistentVolumesByLabels(Exchange exchange) {
- PersistentVolumeList pvList = null;
Map<String, String> labels
= exchange.getIn().getHeader(KubernetesConstants.KUBERNETES_PERSISTENT_VOLUMES_LABELS, Map.class);
- NonNamespaceOperation<PersistentVolume, PersistentVolumeList, Resource<PersistentVolume>> pvs
- = getEndpoint().getKubernetesClient().persistentVolumes();
- for (Map.Entry<String, String> entry : labels.entrySet()) {
- pvs.withLabel(entry.getKey(), entry.getValue());
- }
- pvList = pvs.list();
+ PersistentVolumeList pvList = getEndpoint().getKubernetesClient().persistentVolumes().withLabels(labels).list();
prepareOutboundMessage(exchange, pvList.getItems());
}
diff --git a/components/camel-kubernetes/src/main/java/org/apache/camel/component/kubernetes/persistent_volumes_claims/KubernetesPersistentVolumesClaimsProducer.java b/components/camel-kubernetes/src/main/java/org/apache/camel/component/kubernetes/persistent_volumes_claims/KubernetesPersistentVolumesClaimsProducer.java
index f6edd1f..1488838 100644
--- a/components/camel-kubernetes/src/main/java/org/apache/camel/component/kubernetes/persistent_volumes_claims/KubernetesPersistentVolumesClaimsProducer.java
+++ b/components/camel-kubernetes/src/main/java/org/apache/camel/component/kubernetes/persistent_volumes_claims/KubernetesPersistentVolumesClaimsProducer.java
@@ -22,9 +22,6 @@ import io.fabric8.kubernetes.api.model.PersistentVolumeClaim;
import io.fabric8.kubernetes.api.model.PersistentVolumeClaimBuilder;
import io.fabric8.kubernetes.api.model.PersistentVolumeClaimList;
import io.fabric8.kubernetes.api.model.PersistentVolumeClaimSpec;
-import io.fabric8.kubernetes.client.dsl.FilterWatchListMultiDeletable;
-import io.fabric8.kubernetes.client.dsl.NonNamespaceOperation;
-import io.fabric8.kubernetes.client.dsl.Resource;
import org.apache.camel.Exchange;
import org.apache.camel.component.kubernetes.AbstractKubernetesEndpoint;
import org.apache.camel.component.kubernetes.KubernetesConstants;
@@ -93,20 +90,19 @@ public class KubernetesPersistentVolumesClaimsProducer extends DefaultProducer {
= exchange.getIn().getHeader(KubernetesConstants.KUBERNETES_PERSISTENT_VOLUMES_CLAIMS_LABELS, Map.class);
String namespaceName = exchange.getIn().getHeader(KubernetesConstants.KUBERNETES_NAMESPACE_NAME, String.class);
if (!ObjectHelper.isEmpty(namespaceName)) {
- NonNamespaceOperation<PersistentVolumeClaim, PersistentVolumeClaimList, Resource<PersistentVolumeClaim>> pvcs
- = getEndpoint()
- .getKubernetesClient().persistentVolumeClaims().inNamespace(namespaceName);
- for (Map.Entry<String, String> entry : labels.entrySet()) {
- pvcs.withLabel(entry.getKey(), entry.getValue());
- }
- pvcList = pvcs.list();
+ pvcList = getEndpoint()
+ .getKubernetesClient()
+ .persistentVolumeClaims()
+ .inNamespace(namespaceName)
+ .withLabels(labels)
+ .list();
} else {
- FilterWatchListMultiDeletable<PersistentVolumeClaim, PersistentVolumeClaimList> pvcs = getEndpoint()
- .getKubernetesClient().persistentVolumeClaims().inAnyNamespace();
- for (Map.Entry<String, String> entry : labels.entrySet()) {
- pvcs.withLabel(entry.getKey(), entry.getValue());
- }
- pvcList = pvcs.list();
+ pvcList = getEndpoint()
+ .getKubernetesClient()
+ .persistentVolumeClaims()
+ .inAnyNamespace()
+ .withLabels(labels)
+ .list();
}
prepareOutboundMessage(exchange, pvcList.getItems());
diff --git a/components/camel-kubernetes/src/main/java/org/apache/camel/component/kubernetes/secrets/KubernetesSecretsProducer.java b/components/camel-kubernetes/src/main/java/org/apache/camel/component/kubernetes/secrets/KubernetesSecretsProducer.java
index 79c0e53..05d6e9e 100644
--- a/components/camel-kubernetes/src/main/java/org/apache/camel/component/kubernetes/secrets/KubernetesSecretsProducer.java
+++ b/components/camel-kubernetes/src/main/java/org/apache/camel/component/kubernetes/secrets/KubernetesSecretsProducer.java
@@ -20,9 +20,6 @@ import java.util.Map;
import io.fabric8.kubernetes.api.model.Secret;
import io.fabric8.kubernetes.api.model.SecretList;
-import io.fabric8.kubernetes.client.dsl.FilterWatchListMultiDeletable;
-import io.fabric8.kubernetes.client.dsl.NonNamespaceOperation;
-import io.fabric8.kubernetes.client.dsl.Resource;
import org.apache.camel.Exchange;
import org.apache.camel.component.kubernetes.AbstractKubernetesEndpoint;
import org.apache.camel.component.kubernetes.KubernetesConstants;
@@ -89,19 +86,18 @@ public class KubernetesSecretsProducer extends DefaultProducer {
Map<String, String> labels = exchange.getIn().getHeader(KubernetesConstants.KUBERNETES_SECRETS_LABELS, Map.class);
String namespaceName = exchange.getIn().getHeader(KubernetesConstants.KUBERNETES_NAMESPACE_NAME, String.class);
if (!ObjectHelper.isEmpty(namespaceName)) {
- NonNamespaceOperation<Secret, SecretList, Resource<Secret>> secrets
- = getEndpoint().getKubernetesClient().secrets().inNamespace(namespaceName);
- for (Map.Entry<String, String> entry : labels.entrySet()) {
- secrets.withLabel(entry.getKey(), entry.getValue());
- }
- secretsList = secrets.list();
+ secretsList = getEndpoint()
+ .getKubernetesClient()
+ .secrets()
+ .inNamespace(namespaceName)
+ .withLabels(labels)
+ .list();
} else {
- FilterWatchListMultiDeletable<Secret, SecretList> secrets
- = getEndpoint().getKubernetesClient().secrets().inAnyNamespace();
- for (Map.Entry<String, String> entry : labels.entrySet()) {
- secrets.withLabel(entry.getKey(), entry.getValue());
- }
- secretsList = secrets.list();
+ secretsList = getEndpoint()
+ .getKubernetesClient()
+ .secrets()
+ .inAnyNamespace()
+ .withLabels(labels).list();
}
prepareOutboundMessage(exchange, secretsList.getItems());
diff --git a/components/camel-kubernetes/src/main/java/org/apache/camel/component/kubernetes/service_accounts/KubernetesServiceAccountsProducer.java b/components/camel-kubernetes/src/main/java/org/apache/camel/component/kubernetes/service_accounts/KubernetesServiceAccountsProducer.java
index cd423b7..589b115 100644
--- a/components/camel-kubernetes/src/main/java/org/apache/camel/component/kubernetes/service_accounts/KubernetesServiceAccountsProducer.java
+++ b/components/camel-kubernetes/src/main/java/org/apache/camel/component/kubernetes/service_accounts/KubernetesServiceAccountsProducer.java
@@ -20,9 +20,6 @@ import java.util.Map;
import io.fabric8.kubernetes.api.model.ServiceAccount;
import io.fabric8.kubernetes.api.model.ServiceAccountList;
-import io.fabric8.kubernetes.client.dsl.FilterWatchListMultiDeletable;
-import io.fabric8.kubernetes.client.dsl.NonNamespaceOperation;
-import io.fabric8.kubernetes.client.dsl.Resource;
import org.apache.camel.Exchange;
import org.apache.camel.component.kubernetes.AbstractKubernetesEndpoint;
import org.apache.camel.component.kubernetes.KubernetesConstants;
@@ -90,19 +87,19 @@ public class KubernetesServiceAccountsProducer extends DefaultProducer {
= exchange.getIn().getHeader(KubernetesConstants.KUBERNETES_SERVICE_ACCOUNTS_LABELS, Map.class);
String namespaceName = exchange.getIn().getHeader(KubernetesConstants.KUBERNETES_NAMESPACE_NAME, String.class);
if (!ObjectHelper.isEmpty(namespaceName)) {
- NonNamespaceOperation<ServiceAccount, ServiceAccountList, Resource<ServiceAccount>> serviceAccounts
- = getEndpoint().getKubernetesClient().serviceAccounts().inNamespace(namespaceName);
- for (Map.Entry<String, String> entry : labels.entrySet()) {
- serviceAccounts.withLabel(entry.getKey(), entry.getValue());
- }
- saList = serviceAccounts.list();
+ saList = getEndpoint()
+ .getKubernetesClient()
+ .serviceAccounts()
+ .inNamespace(namespaceName)
+ .withLabels(labels)
+ .list();
} else {
- FilterWatchListMultiDeletable<ServiceAccount, ServiceAccountList> serviceAccounts
- = getEndpoint().getKubernetesClient().serviceAccounts().inAnyNamespace();
- for (Map.Entry<String, String> entry : labels.entrySet()) {
- serviceAccounts.withLabel(entry.getKey(), entry.getValue());
- }
- saList = serviceAccounts.list();
+ saList = getEndpoint()
+ .getKubernetesClient()
+ .serviceAccounts()
+ .inAnyNamespace()
+ .withLabels(labels)
+ .list();
}
prepareOutboundMessage(exchange, saList.getItems());
diff --git a/components/camel-kubernetes/src/main/java/org/apache/camel/component/kubernetes/services/KubernetesServicesProducer.java b/components/camel-kubernetes/src/main/java/org/apache/camel/component/kubernetes/services/KubernetesServicesProducer.java
index dd68eec..d89f758 100644
--- a/components/camel-kubernetes/src/main/java/org/apache/camel/component/kubernetes/services/KubernetesServicesProducer.java
+++ b/components/camel-kubernetes/src/main/java/org/apache/camel/component/kubernetes/services/KubernetesServicesProducer.java
@@ -22,9 +22,6 @@ import io.fabric8.kubernetes.api.model.Service;
import io.fabric8.kubernetes.api.model.ServiceBuilder;
import io.fabric8.kubernetes.api.model.ServiceList;
import io.fabric8.kubernetes.api.model.ServiceSpec;
-import io.fabric8.kubernetes.client.dsl.FilterWatchListMultiDeletable;
-import io.fabric8.kubernetes.client.dsl.NonNamespaceOperation;
-import io.fabric8.kubernetes.client.dsl.ServiceResource;
import org.apache.camel.Exchange;
import org.apache.camel.component.kubernetes.AbstractKubernetesEndpoint;
import org.apache.camel.component.kubernetes.KubernetesConstants;
@@ -97,20 +94,21 @@ public class KubernetesServicesProducer extends DefaultProducer {
Map<String, String> labels = exchange.getIn().getHeader(KubernetesConstants.KUBERNETES_SERVICE_LABELS, Map.class);
String namespaceName = exchange.getIn().getHeader(KubernetesConstants.KUBERNETES_NAMESPACE_NAME, String.class);
if (!ObjectHelper.isEmpty(namespaceName)) {
- NonNamespaceOperation<Service, ServiceList, ServiceResource<Service>> services
- = getEndpoint().getKubernetesClient().services().inNamespace(namespaceName);
- for (Map.Entry<String, String> entry : labels.entrySet()) {
- services.withLabel(entry.getKey(), entry.getValue());
- }
- servicesList = services.list();
+ servicesList = getEndpoint()
+ .getKubernetesClient()
+ .services()
+ .inNamespace(namespaceName)
+ .withLabels(labels)
+ .list();
} else {
- FilterWatchListMultiDeletable<Service, ServiceList> services
- = getEndpoint().getKubernetesClient().services().inAnyNamespace();
- for (Map.Entry<String, String> entry : labels.entrySet()) {
- services.withLabel(entry.getKey(), entry.getValue());
- }
- servicesList = services.list();
+ servicesList = getEndpoint()
+ .getKubernetesClient()
+ .services()
+ .inAnyNamespace()
+ .withLabels(labels)
+ .list();
}
+
prepareOutboundMessage(exchange, servicesList.getItems());
}
diff --git a/components/camel-kubernetes/src/test/java/org/apache/camel/component/kubernetes/consumer/integration/KubernetesReplicationControllersConsumerIT.java b/components/camel-kubernetes/src/test/java/org/apache/camel/component/kubernetes/consumer/integration/KubernetesReplicationControllersConsumerIT.java
index 75bc4e4..b7151bc 100644
--- a/components/camel-kubernetes/src/test/java/org/apache/camel/component/kubernetes/consumer/integration/KubernetesReplicationControllersConsumerIT.java
+++ b/components/camel-kubernetes/src/test/java/org/apache/camel/component/kubernetes/consumer/integration/KubernetesReplicationControllersConsumerIT.java
@@ -62,7 +62,7 @@ public class KubernetesReplicationControllersConsumerIT extends KubernetesTestSu
@Order(1)
public void createReplicationController() throws Exception {
mockResultEndpoint.expectedHeaderValuesReceivedInAnyOrder(KubernetesConstants.KUBERNETES_EVENT_ACTION, "ADDED",
- "MODIFIED", "MODIFIED", "MODIFIED", "MODIFIED");
+ "MODIFIED", "MODIFIED");
Exchange ex = template.request("direct:createReplicationController", exchange -> {
exchange.getIn().setHeader(KubernetesConstants.KUBERNETES_NAMESPACE_NAME, "default");
diff --git a/components/camel-kubernetes/src/test/java/org/apache/camel/component/kubernetes/consumer/integration/KubernetesServicesConsumerIT.java b/components/camel-kubernetes/src/test/java/org/apache/camel/component/kubernetes/consumer/integration/KubernetesServicesConsumerIT.java
index 26c7465..a89260b 100644
--- a/components/camel-kubernetes/src/test/java/org/apache/camel/component/kubernetes/consumer/integration/KubernetesServicesConsumerIT.java
+++ b/components/camel-kubernetes/src/test/java/org/apache/camel/component/kubernetes/consumer/integration/KubernetesServicesConsumerIT.java
@@ -20,6 +20,7 @@ import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
+import java.util.concurrent.ThreadLocalRandom;
import io.fabric8.kubernetes.api.model.IntOrString;
import io.fabric8.kubernetes.api.model.Service;
@@ -41,6 +42,8 @@ import org.junit.jupiter.api.condition.EnabledIfSystemProperties;
import org.junit.jupiter.api.condition.EnabledIfSystemProperty;
import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertFalse;
+import static org.junit.jupiter.api.Assertions.assertNull;
import static org.junit.jupiter.api.Assertions.assertTrue;
@EnabledIfSystemProperties({
@@ -50,6 +53,7 @@ import static org.junit.jupiter.api.Assertions.assertTrue;
})
@TestMethodOrder(MethodOrderer.OrderAnnotation.class)
public class KubernetesServicesConsumerIT extends KubernetesTestSupport {
+ private static final String TEST_SERVICE_NAME = "test" + ThreadLocalRandom.current().nextInt(1, 100);
@EndpointInject("mock:result")
protected MockEndpoint mockResultEndpoint;
@@ -57,12 +61,12 @@ public class KubernetesServicesConsumerIT extends KubernetesTestSupport {
@Test
@Order(1)
public void createService() throws Exception {
- mockResultEndpoint.expectedMessageCount(1);
+ // mockResultEndpoint.expectedMessageCount(1);
mockResultEndpoint.expectedHeaderValuesReceivedInAnyOrder(KubernetesConstants.KUBERNETES_EVENT_ACTION, "ADDED");
Exchange ex = template.request("direct:createService", exchange -> {
exchange.getIn().setHeader(KubernetesConstants.KUBERNETES_NAMESPACE_NAME, "default");
- exchange.getIn().setHeader(KubernetesConstants.KUBERNETES_SERVICE_NAME, "test");
+ exchange.getIn().setHeader(KubernetesConstants.KUBERNETES_SERVICE_NAME, TEST_SERVICE_NAME);
Map<String, String> labels = new HashMap<>();
labels.put("this", "rocks");
exchange.getIn().setHeader(KubernetesConstants.KUBERNETES_SERVICE_LABELS, labels);
@@ -80,28 +84,28 @@ public class KubernetesServicesConsumerIT extends KubernetesTestSupport {
exchange.getIn().setHeader(KubernetesConstants.KUBERNETES_SERVICE_SPEC, serviceSpec);
});
- Service serv = ex.getMessage().getBody(Service.class);
+ assertFalse(ex.isFailed());
+ assertNull(ex.getException());
- assertEquals("test", serv.getMetadata().getName());
+ Service serv = ex.getMessage().getBody(Service.class);
- mockResultEndpoint.assertIsSatisfied();
+ assertEquals(TEST_SERVICE_NAME, serv.getMetadata().getName());
}
@Test
@Order(2)
public void deleteService() throws Exception {
- mockResultEndpoint.expectedMessageCount(2);
-
Exchange ex = template.request("direct:deleteService", exchange -> {
exchange.getIn().setHeader(KubernetesConstants.KUBERNETES_NAMESPACE_NAME, "default");
- exchange.getIn().setHeader(KubernetesConstants.KUBERNETES_SERVICE_NAME, "test");
+ exchange.getIn().setHeader(KubernetesConstants.KUBERNETES_SERVICE_NAME, TEST_SERVICE_NAME);
});
+ assertFalse(ex.isFailed());
+ assertNull(ex.getException());
+
boolean servDeleted = ex.getMessage().getBody(Boolean.class);
assertTrue(servDeleted);
-
- mockResultEndpoint.assertIsSatisfied();
}
@Override
diff --git a/parent/pom.xml b/parent/pom.xml
index f9f75f3..c5bddda 100644
--- a/parent/pom.xml
+++ b/parent/pom.xml
@@ -344,8 +344,8 @@
<jzlib-version>1.1.3</jzlib-version>
<kafka-version>2.8.0</kafka-version>
<kotlin-version>1.5.21</kotlin-version>
- <kubernetes-client-version>5.6.0</kubernetes-client-version>
- <kubernetes-model-version>5.6.0</kubernetes-model-version>
+ <kubernetes-client-version>5.7.0</kubernetes-client-version>
+ <kubernetes-model-version>5.7.0</kubernetes-model-version>
<kudu-version>1.14.0</kudu-version>
<leveldbjni-version>1.8</leveldbjni-version>
<leveldb-api-version>0.12</leveldb-api-version>