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

acosentino pushed a commit to branch camel-2.x
in repository https://gitbox.apache.org/repos/asf/camel.git

commit 4a9702a89fb394421ec8e967217d64ac7e3b04c3
Author: Andrea Cosentino <anco...@gmail.com>
AuthorDate: Mon Sep 16 16:42:05 2019 +0200

    CAMEL-13978 - Create ConfigMap Watch feature in Kubernetes Component, fixed 
the resourceName usage
---
 .../config_maps/KubernetesConfigMapsConsumer.java  |  7 +++---
 .../kubernetes/KubernetesTestSupport.java          |  2 +-
 .../consumer/KubernetesConfigMapsConsumerTest.java | 27 ++++++++++++++++++++--
 3 files changed, 30 insertions(+), 6 deletions(-)

diff --git 
a/components/camel-kubernetes/src/main/java/org/apache/camel/component/kubernetes/config_maps/KubernetesConfigMapsConsumer.java
 
b/components/camel-kubernetes/src/main/java/org/apache/camel/component/kubernetes/config_maps/KubernetesConfigMapsConsumer.java
index c93a708..1b7128d 100644
--- 
a/components/camel-kubernetes/src/main/java/org/apache/camel/component/kubernetes/config_maps/KubernetesConfigMapsConsumer.java
+++ 
b/components/camel-kubernetes/src/main/java/org/apache/camel/component/kubernetes/config_maps/KubernetesConfigMapsConsumer.java
@@ -24,6 +24,7 @@ import io.fabric8.kubernetes.api.model.DoneableConfigMap;
 import io.fabric8.kubernetes.client.KubernetesClientException;
 import io.fabric8.kubernetes.client.Watch;
 import io.fabric8.kubernetes.client.Watcher;
+import io.fabric8.kubernetes.client.dsl.FilterWatchListDeletable;
 import io.fabric8.kubernetes.client.dsl.NonNamespaceOperation;
 import io.fabric8.kubernetes.client.dsl.Resource;
 
@@ -87,13 +88,13 @@ public class KubernetesConfigMapsConsumer extends 
DefaultConsumer {
 
         @Override
         public void run() {
-            NonNamespaceOperation<ConfigMap, ConfigMapList, DoneableConfigMap, 
Resource<ConfigMap, DoneableConfigMap>> w = 
getEndpoint().getKubernetesClient().configMaps();
+            FilterWatchListDeletable<ConfigMap, ConfigMapList, Boolean, Watch, 
Watcher<ConfigMap>> w = null;
             if 
(ObjectHelper.isNotEmpty(getEndpoint().getKubernetesConfiguration().getLabelKey())
                 && 
ObjectHelper.isNotEmpty(getEndpoint().getKubernetesConfiguration().getLabelValue()))
 {
-                
w.withLabel(getEndpoint().getKubernetesConfiguration().getLabelKey(), 
getEndpoint().getKubernetesConfiguration().getLabelValue());
+                w = 
getEndpoint().getKubernetesClient().configMaps().withLabel(getEndpoint().getKubernetesConfiguration().getLabelKey(),
 getEndpoint().getKubernetesConfiguration().getLabelValue());
             }
             if 
(ObjectHelper.isNotEmpty(getEndpoint().getKubernetesConfiguration().getResourceName()))
 {
-                
w.withName(getEndpoint().getKubernetesConfiguration().getResourceName());
+               w =  (FilterWatchListDeletable<ConfigMap, ConfigMapList, 
Boolean, Watch, Watcher<ConfigMap>>) 
getEndpoint().getKubernetesClient().configMaps().withName(getEndpoint().getKubernetesConfiguration().getResourceName());
             }
             watch = w.watch(new Watcher<ConfigMap>() {
 
diff --git 
a/components/camel-kubernetes/src/test/java/org/apache/camel/component/kubernetes/KubernetesTestSupport.java
 
b/components/camel-kubernetes/src/test/java/org/apache/camel/component/kubernetes/KubernetesTestSupport.java
index 0f17738..8cf45f9 100644
--- 
a/components/camel-kubernetes/src/test/java/org/apache/camel/component/kubernetes/KubernetesTestSupport.java
+++ 
b/components/camel-kubernetes/src/test/java/org/apache/camel/component/kubernetes/KubernetesTestSupport.java
@@ -31,7 +31,7 @@ public class KubernetesTestSupport extends CamelTestSupport {
     @Override
     public void setUp() throws Exception {
         // INSERT credentials and host here
-        authToken = "";
+        authToken = "IVStwJAV_7p26ifo1NX1R3cjNDLkGFUaU0R6VW6dbwo";
         host = "https://192.168.99.100:8443";;
         super.setUp();
     }
diff --git 
a/components/camel-kubernetes/src/test/java/org/apache/camel/component/kubernetes/consumer/KubernetesConfigMapsConsumerTest.java
 
b/components/camel-kubernetes/src/test/java/org/apache/camel/component/kubernetes/consumer/KubernetesConfigMapsConsumerTest.java
index 5b62438..a9e01c5 100644
--- 
a/components/camel-kubernetes/src/test/java/org/apache/camel/component/kubernetes/consumer/KubernetesConfigMapsConsumerTest.java
+++ 
b/components/camel-kubernetes/src/test/java/org/apache/camel/component/kubernetes/consumer/KubernetesConfigMapsConsumerTest.java
@@ -61,6 +61,19 @@ public class KubernetesConfigMapsConsumerTest extends 
KubernetesTestSupport {
                 
exchange.getIn().setHeader(KubernetesConstants.KUBERNETES_CONFIGMAP_DATA, 
configMapData);
             }
         });
+        
+        ex = template.request("direct:createConfigmap", new Processor() {
+
+            @Override
+            public void process(Exchange exchange) throws Exception {
+               
exchange.getIn().removeHeader(KubernetesConstants.KUBERNETES_CONFIGMAPS_LABELS);
+                
exchange.getIn().setHeader(KubernetesConstants.KUBERNETES_NAMESPACE_NAME, 
"default");
+                
exchange.getIn().setHeader(KubernetesConstants.KUBERNETES_CONFIGMAP_NAME, 
"test1");
+                HashMap<String, String> configMapData = new HashMap<>();
+                configMapData.put("test", "test");
+                
exchange.getIn().setHeader(KubernetesConstants.KUBERNETES_CONFIGMAP_DATA, 
configMapData);
+            }
+        });
 
         ex = template.request("direct:deleteConfigmap", new Processor() {
 
@@ -70,6 +83,16 @@ public class KubernetesConfigMapsConsumerTest extends 
KubernetesTestSupport {
                 
exchange.getIn().setHeader(KubernetesConstants.KUBERNETES_CONFIGMAP_NAME, 
"test");
             }
         });
+        
+        ex = template.request("direct:deleteConfigmap", new Processor() {
+
+            @Override
+            public void process(Exchange exchange) throws Exception {
+                
exchange.getIn().setHeader(KubernetesConstants.KUBERNETES_NAMESPACE_NAME, 
"default");
+                
exchange.getIn().setHeader(KubernetesConstants.KUBERNETES_CONFIGMAP_NAME, 
"test1");
+            }
+        });
+
 
         boolean cmDeleted = ex.getOut().getBody(Boolean.class);
 
@@ -87,7 +110,7 @@ public class KubernetesConfigMapsConsumerTest extends 
KubernetesTestSupport {
             public void configure() throws Exception {
                 
from("direct:createConfigmap").toF("kubernetes-config-maps://%s?oauthToken=%s&operation=createConfigMap",
 host, authToken);
                 
from("direct:deleteConfigmap").toF("kubernetes-config-maps://%s?oauthToken=%s&operation=deleteConfigMap",
 host, authToken);
-                
fromF("kubernetes-config-maps://%s?oauthToken=%s&namespace=default&labelKey=this&labelValue=rocks",
 host, authToken).process(new KubernertesProcessor())
+                
fromF("kubernetes-config-maps://%s?oauthToken=%s&namespace=default&resourceName=test",
 host, authToken).process(new KubernertesProcessor())
                     .to(mockResultEndpoint);
             }
         };
@@ -98,7 +121,7 @@ public class KubernetesConfigMapsConsumerTest extends 
KubernetesTestSupport {
         public void process(Exchange exchange) throws Exception {
             Message in = exchange.getIn();
             ConfigMap cm = exchange.getIn().getBody(ConfigMap.class);
-            log.info("Got event with configmap name: " + 
cm.getMetadata().getName() + " and action " + 
in.getHeader(KubernetesConstants.KUBERNETES_EVENT_ACTION));
+            System.err.println("Got event with configmap name: " + 
cm.getMetadata().getName() + " and action " + 
in.getHeader(KubernetesConstants.KUBERNETES_EVENT_ACTION));
         }
     }
 }

Reply via email to