[ 
https://issues.apache.org/jira/browse/CAMEL-15519?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Andrea Cosentino reassigned CAMEL-15519:
----------------------------------------

    Assignee: Andrea Cosentino

> kubernetes-pods consumer raise a No type converter available exception
> ----------------------------------------------------------------------
>
>                 Key: CAMEL-15519
>                 URL: https://issues.apache.org/jira/browse/CAMEL-15519
>             Project: Camel
>          Issue Type: Wish
>          Components: camel-kubernetes
>    Affects Versions: 3.4.2
>            Reporter: Emmerson
>            Assignee: Andrea Cosentino
>            Priority: Minor
>
> Hello,
> I am testing kubernetes-pods consumer and in the first test it works fine, 
> then I run a kubernetes job (this create internally a Pod) and I get a "_No 
> type converter available_" exception in the console.
>  
> The pod consumer source code is here: 
> [https://github.com/Emmerson-Miranda/camel/blob/master/camel3-cdi/cdi-k8s-pocs/src/main/java/edu/emmerson/camel/k8s/jobs/camel_k8s_jobs/KubernetesRouteConsumerPods.java]
>  
> The pod creation source code is here 
> [https://github.com/Emmerson-Miranda/camel/blob/master/camel3-cdi/cdi-k8s-pocs/src/main/java/edu/emmerson/camel/k8s/jobs/camel_k8s_jobs/KubernetesCreateJob.java]
>  
>  
> *Bellow the stacktrace* 
> [ https://192.168.64.3:8443/...] KubernetesRouteConsumerPods INFO KEEPING pod 
> name: job-1599734811571-rls7l
> [ XNIO-1 task-1] UndertowConsumer WARN Caused by: 
> [org.apache.camel.NoTypeConversionAvailableException - No type converter 
> available to convert from type: io.fabric8.kubernetes.api.model.batch.Job to 
> the required type: java.nio.ByteBuffer with value Job(apiVersion=batch/v1, 
> kind=Job, metadata=ObjectMeta(annotations=null, clusterName=null, 
> creationTimestamp=2020-09-10T10:46:51Z, deletionGracePeriodSeconds=null, 
> deletionTimestamp=null, finalizers=[], generateName=null, generation=null, 
> labels=\{app=jobFromCamelApp, jobLabelKey1=value1, jobLabelKey2=value2}, 
> managedFields=[ManagedFieldsEntry(apiVersion=batch/v1, fieldsType=FieldsV1, 
> fieldsV1=FieldsV1(additionalProperties=\{f:metadata={f:labels={.={}, 
> f:app={}, f:jobLabelKey1={}, f:jobLabelKey2={}}}, 
> f:spec=\{f:activeDeadlineSeconds={}, f:backoffLimit={}, f:completions={}, 
> f:parallelism={}, f:template=\{f:metadata={f:annotations={.={}, 
> f:jobMetadataAnnotation1={}}, f:labels=\{.={}, f:app={}, f:orderId={}, 
> f:podLabelKey1={}, f:podLabelKey2={}}}, 
> f:spec=\{f:containers={k:{"name":"pi"}=\{.={}, f:command={}, f:image={}, 
> f:imagePullPolicy={}, f:name={}, f:resources={}, f:terminationMessagePath={}, 
> f:terminationMessagePolicy={}}}, f:dnsPolicy={}, f:restartPolicy={}, 
> f:schedulerName={}, f:securityContext={}, 
> f:terminationGracePeriodSeconds={}}}, f:ttlSecondsAfterFinished={}}}), 
> manager=okhttp, operation=Update, time=2020-09-10T10:46:51Z, 
> additionalProperties={})], name=job-1599734811571, namespace=default, 
> ownerReferences=[], resourceVersion=1688691, 
> selfLink=/apis/batch/v1/namespaces/default/jobs/job-1599734811571, 
> uid=df5c8ed7-1436-4c57-854a-5703fa3baed8, additionalProperties={}), 
> spec=JobSpec(activeDeadlineSeconds=7200, backoffLimit=6, completions=1, 
> manualSelector=null, parallelism=1, 
> selector=LabelSelector(matchExpressions=[], 
> matchLabels=\{controller-uid=df5c8ed7-1436-4c57-854a-5703fa3baed8}, 
> additionalProperties={}), 
> template=PodTemplateSpec(metadata=ObjectMeta(annotations=\{jobMetadataAnnotation1=random
>  value}, clusterName=null, creationTimestamp=null, 
> deletionGracePeriodSeconds=null, deletionTimestamp=null, finalizers=[], 
> generateName=null, generation=null, labels=\{app=podFromCamelApp, 
> controller-uid=df5c8ed7-1436-4c57-854a-5703fa3baed8, 
> job-name=job-1599734811571, orderId=54702d2c-554b-4fa8-91ef-9e4e7abfe055, 
> podLabelKey1=value1, podLabelKey2=value2}, managedFields=[], name=null, 
> namespace=null, ownerReferences=[], resourceVersion=null, selfLink=null, 
> uid=null, additionalProperties={}), spec=PodSpec(activeDeadlineSeconds=null, 
> affinity=null, automountServiceAccountToken=null, 
> containers=[Container(args=[], command=[echo, Job created from Apache Camel 
> code at Thu Sep 10 11:46:51 BST 2020], env=[], envFrom=[], image=perl, 
> imagePullPolicy=Always, lifecycle=null, livenessProbe=null, name=pi, 
> ports=[], readinessProbe=null, resources=ResourceRequirements(limits=null, 
> requests=null, additionalProperties={}), securityContext=null, 
> startupProbe=null, stdin=null, stdinOnce=null, 
> terminationMessagePath=/dev/termination-log, terminationMessagePolicy=File, 
> tty=null, volumeDevices=[], volumeMounts=[], workingDir=null, 
> additionalProperties={})], dnsConfig=null, dnsPolicy=ClusterFirst, 
> enableServiceLinks=null, ephemeralContainers=[], hostAliases=[], 
> hostIPC=null, hostNetwork=null, hostPID=null, hostname=null, 
> imagePullSecrets=[], initContainers=[], nodeName=null, nodeSelector=null, 
> overhead=null, preemptionPolicy=null, priority=null, priorityClassName=null, 
> readinessGates=[], restartPolicy=OnFailure, runtimeClassName=null, 
> schedulerName=default-scheduler, 
> securityContext=PodSecurityContext(fsGroup=null, fsGroupChangePolicy=null, 
> runAsGroup=null, runAsNonRoot=null, runAsUser=null, seLinuxOptions=null, 
> supplementalGroups=[], sysctls=[], windowsOptions=null, 
> additionalProperties={}), serviceAccount=null, serviceAccountName=null, 
> shareProcessNamespace=null, subdomain=null, terminationGracePeriodSeconds=30, 
> tolerations=[], topologySpreadConstraints=[], volumes=[], 
> additionalProperties={}), additionalProperties={}), 
> ttlSecondsAfterFinished=null, additionalProperties={}), 
> status=JobStatus(active=null, completionTime=null, conditions=[], 
> failed=null, startTime=null, succeeded=null, additionalProperties={}), 
> additionalProperties={})]
> org.apache.camel.NoTypeConversionAvailableException: No type converter 
> available to convert from type: io.fabric8.kubernetes.api.model.batch.Job to 
> the required type: java.nio.ByteBuffer with value Job(apiVersion=batch/v1, 
> kind=Job, metadata=ObjectMeta(annotations=null, clusterName=null, 
> creationTimestamp=2020-09-10T10:46:51Z, deletionGracePeriodSeconds=null, 
> deletionTimestamp=null, finalizers=[], generateName=null, generation=null, 
> labels=\{app=jobFromCamelApp, jobLabelKey1=value1, jobLabelKey2=value2}, 
> managedFields=[ManagedFieldsEntry(apiVersion=batch/v1, fieldsType=FieldsV1, 
> fieldsV1=FieldsV1(additionalProperties=\{f:metadata={f:labels={.={}, 
> f:app={}, f:jobLabelKey1={}, f:jobLabelKey2={}}}, 
> f:spec=\{f:activeDeadlineSeconds={}, f:backoffLimit={}, f:completions={}, 
> f:parallelism={}, f:template=\{f:metadata={f:annotations={.={}, 
> f:jobMetadataAnnotation1={}}, f:labels=\{.={}, f:app={}, f:orderId={}, 
> f:podLabelKey1={}, f:podLabelKey2={}}}, 
> f:spec=\{f:containers={k:{"name":"pi"}=\{.={}, f:command={}, f:image={}, 
> f:imagePullPolicy={}, f:name={}, f:resources={}, f:terminationMessagePath={}, 
> f:terminationMessagePolicy={}}}, f:dnsPolicy={}, f:restartPolicy={}, 
> f:schedulerName={}, f:securityContext={}, 
> f:terminationGracePeriodSeconds={}}}, f:ttlSecondsAfterFinished={}}}), 
> manager=okhttp, operation=Update, time=2020-09-10T10:46:51Z, 
> additionalProperties={})], name=job-1599734811571, namespace=default, 
> ownerReferences=[], resourceVersion=1688691, 
> selfLink=/apis/batch/v1/namespaces/default/jobs/job-1599734811571, 
> uid=df5c8ed7-1436-4c57-854a-5703fa3baed8, additionalProperties={}), 
> spec=JobSpec(activeDeadlineSeconds=7200, backoffLimit=6, completions=1, 
> manualSelector=null, parallelism=1, 
> selector=LabelSelector(matchExpressions=[], 
> matchLabels=\{controller-uid=df5c8ed7-1436-4c57-854a-5703fa3baed8}, 
> additionalProperties={}), 
> template=PodTemplateSpec(metadata=ObjectMeta(annotations=\{jobMetadataAnnotation1=random
>  value}, clusterName=null, creationTimestamp=null, 
> deletionGracePeriodSeconds=null, deletionTimestamp=null, finalizers=[], 
> generateName=null, generation=null, labels=\{app=podFromCamelApp, 
> controller-uid=df5c8ed7-1436-4c57-854a-5703fa3baed8, 
> job-name=job-1599734811571, orderId=54702d2c-554b-4fa8-91ef-9e4e7abfe055, 
> podLabelKey1=value1, podLabelKey2=value2}, managedFields=[], name=null, 
> namespace=null, ownerReferences=[], resourceVersion=null, selfLink=null, 
> uid=null, additionalProperties={}), spec=PodSpec(activeDeadlineSeconds=null, 
> affinity=null, automountServiceAccountToken=null, 
> containers=[Container(args=[], command=[echo, Job created from Apache Camel 
> code at Thu Sep 10 11:46:51 BST 2020], env=[], envFrom=[], image=perl, 
> imagePullPolicy=Always, lifecycle=null, livenessProbe=null, name=pi, 
> ports=[], readinessProbe=null, resources=ResourceRequirements(limits=null, 
> requests=null, additionalProperties={}), securityContext=null, 
> startupProbe=null, stdin=null, stdinOnce=null, 
> terminationMessagePath=/dev/termination-log, terminationMessagePolicy=File, 
> tty=null, volumeDevices=[], volumeMounts=[], workingDir=null, 
> additionalProperties={})], dnsConfig=null, dnsPolicy=ClusterFirst, 
> enableServiceLinks=null, ephemeralContainers=[], hostAliases=[], 
> hostIPC=null, hostNetwork=null, hostPID=null, hostname=null, 
> imagePullSecrets=[], initContainers=[], nodeName=null, nodeSelector=null, 
> overhead=null, preemptionPolicy=null, priority=null, priorityClassName=null, 
> readinessGates=[], restartPolicy=OnFailure, runtimeClassName=null, 
> schedulerName=default-scheduler, 
> securityContext=PodSecurityContext(fsGroup=null, fsGroupChangePolicy=null, 
> runAsGroup=null, runAsNonRoot=null, runAsUser=null, seLinuxOptions=null, 
> supplementalGroups=[], sysctls=[], windowsOptions=null, 
> additionalProperties={}), serviceAccount=null, serviceAccountName=null, 
> shareProcessNamespace=null, subdomain=null, terminationGracePeriodSeconds=30, 
> tolerations=[], topologySpreadConstraints=[], volumes=[], 
> additionalProperties={}), additionalProperties={}), 
> ttlSecondsAfterFinished=null, additionalProperties={}), 
> status=JobStatus(active=null, completionTime=null, conditions=[], 
> failed=null, startTime=null, succeeded=null, additionalProperties={}), 
> additionalProperties={})
>  at 
> org.apache.camel.impl.converter.CoreTypeConverterRegistry.mandatoryConvertTo(CoreTypeConverterRegistry.java:216)
>  ~[camel-base-3.4.2.jar:3.4.2]
>  at 
> org.apache.camel.impl.converter.CoreTypeConverterRegistry.mandatoryConvertTo(CoreTypeConverterRegistry.java:168)
>  ~[camel-base-3.4.2.jar:3.4.2]
>  at 
> org.apache.camel.component.undertow.UndertowConsumer.sendResponse(UndertowConsumer.java:259)
>  ~[camel-undertow-3.4.2.jar:3.4.2]
>  at 
> org.apache.camel.component.undertow.UndertowConsumer.handleRequest(UndertowConsumer.java:231)
>  [camel-undertow-3.4.2.jar:3.4.2]
>  at io.undertow.server.Connectors.executeRootHandler(Connectors.java:370) 
> [undertow-core-2.1.2.Final.jar:2.1.2.Final]
>  at io.undertow.server.HttpServerExchange$1.run(HttpServerExchange.java:830) 
> [undertow-core-2.1.2.Final.jar:2.1.2.Final]
>  at 
> org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35)
>  [jboss-threads-3.1.0.Final.jar:3.1.0.Final]
>  at 
> org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:2019)
>  [jboss-threads-3.1.0.Final.jar:3.1.0.Final]
>  at 
> org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java:1558)
>  [jboss-threads-3.1.0.Final.jar:3.1.0.Final]
>  at 
> org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1423)
>  [jboss-threads-3.1.0.Final.jar:3.1.0.Final]
>  at java.lang.Thread.run(Thread.java:748) [?:1.8.0_252]
> [ https://192.168.64.3:8443/...] KubernetesRouteConsumerPods INFO Got event 
> from Pod: job-1599734811571-rls7l, action: MODIFIED Phase: Pending



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to