You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by nf...@apache.org on 2021/01/08 10:15:03 UTC

[camel-k] branch release-1.3.x updated: Bump branch version to 1.3.1-snapshot

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

nferraro pushed a commit to branch release-1.3.x
in repository https://gitbox.apache.org/repos/asf/camel-k.git


The following commit(s) were added to refs/heads/release-1.3.x by this push:
     new 9ea3476  Bump branch version to 1.3.1-snapshot
9ea3476 is described below

commit 9ea3476910c714e264b74c1fb59267a454e779ab
Author: nicolaferraro <ni...@gmail.com>
AuthorDate: Fri Jan 8 11:14:39 2021 +0100

    Bump branch version to 1.3.1-snapshot
---
 .../bases/camel-k.clusterserviceversion.yaml       |    6 +-
 deploy/camel-catalog-1.6.0.yaml                    | 3270 +++++++-------
 .../builds.camel.apache.org.crd.yaml               | 4633 ++++++++++++++++++++
 .../camelcatalogs.camel.apache.org.crd.yaml        |  331 ++
 .../integrationkits.camel.apache.org.crd.yaml      |  215 +
 .../integrationplatforms.camel.apache.org.crd.yaml |  396 ++
 .../integrations.camel.apache.org.crd.yaml         |  373 ++
 .../kameletbindings.camel.apache.org.crd.yaml      |  818 ++++
 .../kamelets.camel.apache.org.crd.yaml             |  629 +++
 .../camel-k-dev/camel-k-dev.package.yaml           |    2 +-
 deploy/operator-deployment.yaml                    |    2 +-
 deploy/resources.go                                |    6 +-
 helm/camel-k/Chart.yaml                            |    4 +-
 helm/camel-k/values.yaml                           |    2 +-
 pkg/util/defaults/defaults.go                      |    2 +-
 script/Makefile                                    |    4 +-
 16 files changed, 9044 insertions(+), 1649 deletions(-)

diff --git a/config/manifests/bases/camel-k.clusterserviceversion.yaml b/config/manifests/bases/camel-k.clusterserviceversion.yaml
index f7e979b..2a97a33 100644
--- a/config/manifests/bases/camel-k.clusterserviceversion.yaml
+++ b/config/manifests/bases/camel-k.clusterserviceversion.yaml
@@ -26,7 +26,7 @@ metadata:
     operators.operatorframework.io/builder: operator-sdk-v1.0.1
     operators.operatorframework.io/project_layout: go.kubebuilder.io/v2
     support: Camel
-  name: camel-k.v1.3.0
+  name: camel-k.v1.3.1
   namespace: placeholder
 spec:
   apiservicedefinitions: {}
@@ -143,8 +143,8 @@ spec:
   minKubeVersion: 1.11.0
   provider:
     name: The Apache Software Foundation
-  replaces: camel-k-operator.v1.2.0
+  replaces: camel-k-operator.v1.3.0
   selector:
     matchLabels:
       name: camel-k-operator
-  version: 1.3.0-snapshot
+  version: 1.3.1-snapshot
diff --git a/deploy/camel-catalog-1.6.0.yaml b/deploy/camel-catalog-1.6.0.yaml
index 947e156..c4410f2 100644
--- a/deploy/camel-catalog-1.6.0.yaml
+++ b/deploy/camel-catalog-1.6.0.yaml
@@ -20,19 +20,19 @@ kind: CamelCatalog
 metadata:
   name: camel-catalog-1.6.0
   labels:
-    camel.apache.org/catalog.loader.version: 3.7.0
     camel.apache.org/runtime.version: 1.6.0
     camel.apache.org/catalog.version: 3.7.0
     app: camel-k
+    camel.apache.org/catalog.loader.version: 3.7.0
 spec:
   runtime:
     version: 1.6.0
     provider: quarkus
     applicationClass: io.quarkus.runner.GeneratedMain
     metadata:
+      camel-quarkus.version: 1.5.0
       camel.version: 3.7.0
       quarkus.version: 1.10.3.Final
-      camel-quarkus.version: 1.5.0
     dependencies:
     - groupId: org.apache.camel.k
       artifactId: camel-k-runtime
@@ -68,2873 +68,2859 @@ spec:
         - groupId: org.apache.camel.k
           artifactId: camel-k-master
   artifacts:
-    camel-quarkus-hbase:
+    camel-quarkus-xslt-saxon:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-hbase
+      artifactId: camel-quarkus-xslt-saxon
       schemes:
-      - id: hbase
+      - id: xslt-saxon
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.hbase.HBaseComponent
-    camel-quarkus-yammer:
+      - org.apache.camel.component.xslt.saxon.XsltSaxonComponent
+    camel-quarkus-ssh:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-yammer
+      artifactId: camel-quarkus-ssh
       schemes:
-      - id: yammer
+      - id: ssh
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.yammer.YammerComponent
-    camel-quarkus-jgroups:
+      - org.apache.camel.component.ssh.SshComponent
+    camel-quarkus-tika:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-jgroups
+      artifactId: camel-quarkus-tika
       schemes:
-      - id: jgroups
+      - id: tika
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.jgroups.JGroupsComponent
-    camel-quarkus-dataformat:
+      - org.apache.camel.component.tika.TikaComponent
+    camel-quarkus-coap:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-dataformat
+      artifactId: camel-quarkus-coap
       schemes:
-      - id: dataformat
+      - id: coap
         http: false
-        passive: true
+        passive: false
+      - id: coaps+tcp
+        http: false
+        passive: false
+      - id: coaps
+        http: false
+        passive: false
+      - id: coap+tcp
+        http: false
+        passive: false
       javaTypes:
-      - org.apache.camel.component.dataformat.DataFormatComponent
-    camel-quarkus-jing:
+      - org.apache.camel.coap.CoAPComponent
+    camel-quarkus-aws2-mq:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-jing
+      artifactId: camel-quarkus-aws2-mq
       schemes:
-      - id: jing
+      - id: aws2-mq
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.validator.jing.JingComponent
-    camel-quarkus-jaxb:
+      - org.apache.camel.component.aws2.mq.MQ2Component
+    camel-quarkus-beanio:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-jaxb
+      artifactId: camel-quarkus-beanio
       dataformats:
-      - jaxb
+      - beanio
       javaTypes:
-      - org.apache.camel.converter.jaxb.JaxbDataFormat
-    camel-quarkus-scheduler:
+      - org.apache.camel.dataformat.beanio.BeanIODataFormat
+    camel-quarkus-jsch:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-scheduler
+      artifactId: camel-quarkus-jsch
       schemes:
-      - id: scheduler
+      - id: scp
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.scheduler.SchedulerComponent
-    camel-quarkus-weather:
+      - org.apache.camel.component.scp.ScpComponent
+    camel-quarkus-irc:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-weather
+      artifactId: camel-quarkus-irc
       schemes:
-      - id: weather
+      - id: irc
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.weather.WeatherComponent
-    camel-quarkus-aws2-eks:
+      - org.apache.camel.component.irc.IrcComponent
+    camel-quarkus-mllp:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-aws2-eks
+      artifactId: camel-quarkus-mllp
       schemes:
-      - id: aws2-eks
+      - id: mllp
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.aws2.eks.EKS2Component
-    camel-quarkus-jsonapi:
-      groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-jsonapi
-      dataformats:
-      - jsonApi
-      javaTypes:
-      - org.apache.camel.component.jsonapi.JsonApiDataFormat
-    camel-quarkus-iota:
+      - org.apache.camel.component.mllp.MllpComponent
+    camel-quarkus-ahc-ws:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-iota
+      artifactId: camel-quarkus-ahc-ws
       schemes:
-      - id: iota
+      - id: ahc-wss
         http: false
         passive: false
+      - id: ahc-ws
+        http: true
+        passive: false
       javaTypes:
-      - org.apache.camel.component.iota.IOTAComponent
-    camel-quarkus-jt400:
+      - org.apache.camel.component.ahc.ws.WsComponent
+    camel-quarkus-aws2-translate:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-jt400
+      artifactId: camel-quarkus-aws2-translate
       schemes:
-      - id: jt400
+      - id: aws2-translate
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.jt400.Jt400Component
-    camel-quarkus-aws2-sqs:
+      - org.apache.camel.component.aws2.translate.Translate2Component
+    camel-quarkus-vertx-http:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-aws2-sqs
+      artifactId: camel-quarkus-vertx-http
       schemes:
-      - id: aws2-sqs
+      - id: vertx-http
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.aws2.sqs.Sqs2Component
-    camel-quarkus-stub:
+      - org.apache.camel.component.vertx.http.VertxHttpComponent
+    camel-quarkus-wordpress:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-stub
+      artifactId: camel-quarkus-wordpress
       schemes:
-      - id: stub
+      - id: wordpress
         http: false
-        passive: true
+        passive: false
       javaTypes:
-      - org.apache.camel.component.stub.StubComponent
-    camel-quarkus-pubnub:
+      - org.apache.camel.component.wordpress.WordpressComponent
+    camel-quarkus-box:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-pubnub
+      artifactId: camel-quarkus-box
       schemes:
-      - id: pubnub
+      - id: box
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.pubnub.PubNubComponent
-    camel-quarkus-aws-swf:
+      - org.apache.camel.component.box.BoxComponent
+    camel-quarkus-hazelcast:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-aws-swf
+      artifactId: camel-quarkus-hazelcast
       schemes:
-      - id: aws-swf
+      - id: hazelcast-replicatedmap
         http: false
         passive: false
-      javaTypes:
-      - org.apache.camel.component.aws.swf.SWFComponent
-    camel-quarkus-twitter:
-      groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-twitter
-      schemes:
-      - id: twitter-timeline
+      - id: hazelcast-atomicvalue
         http: false
         passive: false
-      - id: twitter-search
+      - id: hazelcast-ringbuffer
         http: false
         passive: false
-      - id: twitter-directmessage
+      - id: hazelcast-instance
         http: false
         passive: false
-      javaTypes:
-      - org.apache.camel.component.twitter.timeline.TwitterTimelineComponent
-      - org.apache.camel.component.twitter.directmessage.TwitterDirectMessageComponent
-      - org.apache.camel.component.twitter.search.TwitterSearchComponent
-    camel-quarkus-aws2-kinesis:
-      groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-aws2-kinesis
-      schemes:
-      - id: aws2-kinesis-firehose
+      - id: hazelcast-list
         http: false
         passive: false
-      - id: aws2-kinesis
+      - id: hazelcast-queue
         http: false
         passive: false
-      javaTypes:
-      - org.apache.camel.component.aws2.firehose.KinesisFirehose2Component
-      - org.apache.camel.component.aws2.kinesis.Kinesis2Component
-    camel-quarkus-ganglia:
-      groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-ganglia
-      schemes:
-      - id: ganglia
+      - id: hazelcast-set
         http: false
         passive: false
-      javaTypes:
-      - org.apache.camel.component.ganglia.GangliaComponent
-    camel-quarkus-telegram:
-      groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-telegram
-      schemes:
-      - id: telegram
+      - id: hazelcast-map
         http: false
         passive: false
-      javaTypes:
-      - org.apache.camel.component.telegram.TelegramComponent
-    camel-quarkus-http:
-      groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-http
-      schemes:
-      - id: http
+      - id: hazelcast-seda
         http: false
         passive: false
-      - id: https
+      - id: hazelcast-multimap
+        http: false
+        passive: false
+      - id: hazelcast-topic
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.http.HttpComponent
-    camel-quarkus-jolt:
+      - org.apache.camel.component.hazelcast.set.HazelcastSetComponent
+      - org.apache.camel.component.hazelcast.instance.HazelcastInstanceComponent
+      - org.apache.camel.component.hazelcast.multimap.HazelcastMultimapComponent
+      - org.apache.camel.component.hazelcast.ringbuffer.HazelcastRingbufferComponent
+      - org.apache.camel.component.hazelcast.topic.HazelcastTopicComponent
+      - org.apache.camel.component.hazelcast.list.HazelcastListComponent
+      - org.apache.camel.component.hazelcast.atomicnumber.HazelcastAtomicnumberComponent
+      - org.apache.camel.component.hazelcast.queue.HazelcastQueueComponent
+      - org.apache.camel.component.hazelcast.map.HazelcastMapComponent
+      - org.apache.camel.component.hazelcast.seda.HazelcastSedaComponent
+      - org.apache.camel.component.hazelcast.replicatedmap.HazelcastReplicatedmapComponent
+    camel-quarkus-aws2-ses:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-jolt
+      artifactId: camel-quarkus-aws2-ses
       schemes:
-      - id: jolt
+      - id: aws2-ses
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.jolt.JoltComponent
-    camel-quarkus-netty:
+      - org.apache.camel.component.aws2.ses.Ses2Component
+    camel-quarkus-cmis:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-netty
+      artifactId: camel-quarkus-cmis
       schemes:
-      - id: netty
+      - id: cmis
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.netty.NettyComponent
-    camel-quarkus-micrometer:
+      - org.apache.camel.component.cmis.CMISComponent
+    camel-quarkus-google-pubsub:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-micrometer
+      artifactId: camel-quarkus-google-pubsub
       schemes:
-      - id: micrometer
+      - id: google-pubsub
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.micrometer.MicrometerComponent
-    camel-quarkus-elsql:
+      - org.apache.camel.component.google.pubsub.GooglePubsubComponent
+    camel-quarkus-printer:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-elsql
+      artifactId: camel-quarkus-printer
       schemes:
-      - id: elsql
+      - id: lpr
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.elsql.ElsqlComponent
-    camel-quarkus-cbor:
+      - org.apache.camel.component.printer.PrinterComponent
+    camel-quarkus-jackson:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-cbor
+      artifactId: camel-quarkus-jackson
       dataformats:
-      - cbor
+      - json-jackson
       javaTypes:
-      - org.apache.camel.component.cbor.CBORDataFormat
-    camel-quarkus-mybatis:
+      - org.apache.camel.component.jackson.JacksonDataFormat
+    camel-quarkus-validator:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-mybatis
+      artifactId: camel-quarkus-validator
       schemes:
-      - id: mybatis
+      - id: validator
+        http: false
+        passive: true
+      javaTypes:
+      - org.apache.camel.component.validator.ValidatorComponent
+    camel-quarkus-ftp:
+      groupId: org.apache.camel.quarkus
+      artifactId: camel-quarkus-ftp
+      schemes:
+      - id: ftp
         http: false
         passive: false
-      - id: mybatis-bean
+      - id: ftps
+        http: false
+        passive: false
+      - id: sftp
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.mybatis.MyBatisBeanComponent
-      - org.apache.camel.component.mybatis.MyBatisComponent
-    camel-quarkus-file:
+      - org.apache.camel.component.file.remote.FtpComponent
+      - org.apache.camel.component.file.remote.FtpsComponent
+      - org.apache.camel.component.file.remote.SftpComponent
+    camel-quarkus-google-sheets:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-file
+      artifactId: camel-quarkus-google-sheets
       schemes:
-      - id: file
+      - id: google-sheets-stream
+        http: false
+        passive: false
+      - id: google-sheets
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.file.FileComponent
-    camel-quarkus-robotframework:
+      - org.apache.camel.component.google.sheets.GoogleSheetsComponent
+      - org.apache.camel.component.google.sheets.stream.GoogleSheetsStreamComponent
+    camel-quarkus-stomp:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-robotframework
+      artifactId: camel-quarkus-stomp
       schemes:
-      - id: robotframework
+      - id: stomp
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.robotframework.RobotFrameworkComponent
-    camel-quarkus-file-watch:
+      - org.apache.camel.component.stomp.StompComponent
+    camel-quarkus-stringtemplate:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-file-watch
+      artifactId: camel-quarkus-stringtemplate
       schemes:
-      - id: file-watch
+      - id: string-template
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.file.watch.FileWatchComponent
-    camel-quarkus-rest-openapi:
+      - org.apache.camel.component.stringtemplate.StringTemplateComponent
+    camel-quarkus-aws2-lambda:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-rest-openapi
+      artifactId: camel-quarkus-aws2-lambda
       schemes:
-      - id: rest-openapi
+      - id: aws2-lambda
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.rest.openapi.RestOpenApiComponent
-    camel-quarkus-jclouds:
-      groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-jclouds
+      - org.apache.camel.component.aws2.lambda.Lambda2Component
+    camel-k-cron:
+      groupId: org.apache.camel.k
+      artifactId: camel-k-cron
       schemes:
-      - id: jclouds
+      - id: cron
         http: false
         passive: false
-      javaTypes:
-      - org.apache.camel.component.jclouds.JcloudsComponent
-    camel-quarkus-quickfix:
+    camel-quarkus-pdf:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-quickfix
+      artifactId: camel-quarkus-pdf
       schemes:
-      - id: quickfix
+      - id: pdf
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.quickfixj.QuickfixjComponent
-    camel-quarkus-solr:
+      - org.apache.camel.component.pdf.PdfComponent
+    camel-quarkus-kubernetes:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-solr
+      artifactId: camel-quarkus-kubernetes
       schemes:
-      - id: solrCloud
+      - id: kubernetes-deployments
         http: false
         passive: false
-      - id: solr
+      - id: kubernetes-persistent-volumes-claims
         http: false
         passive: false
-      - id: solrs
+      - id: kubernetes-pods
         http: false
         passive: false
-      javaTypes:
-      - org.apache.camel.component.solr.SolrComponent
-    camel-quarkus-johnzon:
-      groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-johnzon
-      dataformats:
-      - json-johnzon
-      javaTypes:
-      - org.apache.camel.component.johnzon.JohnzonDataFormat
-    camel-quarkus-fop:
-      groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-fop
-      schemes:
-      - id: fop
+      - id: kubernetes-config-maps
         http: false
         passive: false
-      javaTypes:
-      - org.apache.camel.component.fop.FopComponent
-    camel-quarkus-saga:
-      groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-saga
-      schemes:
-      - id: saga
+      - id: kubernetes-persistent-volumes
         http: false
         passive: false
-      javaTypes:
-      - org.apache.camel.component.saga.SagaComponent
-    camel-quarkus-beanstalk:
-      groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-beanstalk
-      schemes:
-      - id: beanstalk
+      - id: kubernetes-services
         http: false
         passive: false
-      javaTypes:
-      - org.apache.camel.component.beanstalk.BeanstalkComponent
-    camel-quarkus-xslt:
-      groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-xslt
-      schemes:
-      - id: xslt
+      - id: kubernetes-secrets
         http: false
         passive: false
-      javaTypes:
-      - org.apache.camel.component.xslt.XsltComponent
-    camel-quarkus-rest:
-      groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-rest
-      schemes:
-      - id: rest-api
+      - id: kubernetes-service-accounts
         http: false
         passive: false
-      - id: rest
-        http: true
+      - id: openshift-build-configs
+        http: false
         passive: false
-      javaTypes:
-      - org.apache.camel.component.rest.RestApiComponent
-      - org.apache.camel.component.rest.RestComponent
-    camel-quarkus-groovy:
-      groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-groovy
-      languages:
-      - groovy
-      javaTypes:
-      - org.apache.camel.language.groovy.GroovyLanguage
-    camel-quarkus-xmlsecurity:
-      groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-xmlsecurity
-      schemes:
-      - id: xmlsecurity-sign
+      - id: kubernetes-job
         http: false
         passive: false
-      - id: xmlsecurity-verify
+      - id: kubernetes-replication-controllers
         http: false
         passive: false
-      dataformats:
-      - secureXML
-      javaTypes:
-      - org.apache.camel.dataformat.xmlsecurity.XMLSecurityDataFormat
-      - org.apache.camel.component.xmlsecurity.XmlVerifierComponent
-      - org.apache.camel.component.xmlsecurity.XmlSignerComponent
-    camel-quarkus-azure:
-      groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-azure
-      schemes:
-      - id: azure-queue
+      - id: kubernetes-resources-quota
         http: false
         passive: false
-      - id: azure-blob
+      - id: openshift-builds
         http: false
         passive: false
-      javaTypes:
-      - org.apache.camel.component.azure.blob.BlobServiceComponent
-      - org.apache.camel.component.azure.queue.QueueServiceComponent
-    camel-quarkus-aws-translate:
-      groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-aws-translate
-      schemes:
-      - id: aws-translate
+      - id: kubernetes-custom-resources
+        http: false
+        passive: false
+      - id: kubernetes-namespaces
+        http: false
+        passive: false
+      - id: kubernetes-nodes
+        http: false
+        passive: false
+      - id: kubernetes-hpa
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.aws.translate.TranslateComponent
-    camel-quarkus-chatscript:
+      - org.apache.camel.component.kubernetes.namespaces.KubernetesNamespacesComponent
+      - org.apache.camel.component.kubernetes.pods.KubernetesPodsComponent
+      - org.apache.camel.component.kubernetes.deployments.KubernetesDeploymentsComponent
+      - org.apache.camel.component.kubernetes.job.KubernetesJobComponent
+      - org.apache.camel.component.kubernetes.replication_controllers.KubernetesReplicationControllersComponent
+      - org.apache.camel.component.kubernetes.customresources.KubernetesCustomResourcesComponent
+      - org.apache.camel.component.kubernetes.persistent_volumes_claims.KubernetesPersistentVolumesClaimsComponent
+      - org.apache.camel.component.openshift.build_configs.OpenshiftBuildConfigsComponent
+      - org.apache.camel.component.kubernetes.persistent_volumes.KubernetesPersistentVolumesComponent
+      - org.apache.camel.component.kubernetes.services.KubernetesServicesComponent
+      - org.apache.camel.component.kubernetes.nodes.KubernetesNodesComponent
+      - org.apache.camel.component.kubernetes.secrets.KubernetesSecretsComponent
+      - org.apache.camel.component.openshift.builds.OpenshiftBuildsComponent
+      - org.apache.camel.component.kubernetes.config_maps.KubernetesConfigMapsComponent
+      - org.apache.camel.component.kubernetes.service_accounts.KubernetesServiceAccountsComponent
+      - org.apache.camel.component.kubernetes.resources_quota.KubernetesResourcesQuotaComponent
+      - org.apache.camel.component.kubernetes.hpa.KubernetesHPAComponent
+    camel-quarkus-aws2-athena:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-chatscript
+      artifactId: camel-quarkus-aws2-athena
       schemes:
-      - id: chatscript
+      - id: aws2-athena
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.chatscript.ChatScriptComponent
-    camel-quarkus-rabbitmq:
+      - org.apache.camel.component.aws2.athena.Athena2Component
+    camel-quarkus-cm-sms:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-rabbitmq
+      artifactId: camel-quarkus-cm-sms
       schemes:
-      - id: rabbitmq
+      - id: cm-sms
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.rabbitmq.RabbitMQComponent
-    camel-quarkus-reactive-streams:
+      - org.apache.camel.component.cm.CMComponent
+    camel-quarkus-crypto:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-reactive-streams
+      artifactId: camel-quarkus-crypto
       schemes:
-      - id: reactive-streams
+      - id: crypto
         http: false
         passive: false
+      dataformats:
+      - crypto
+      - pgp
       javaTypes:
-      - org.apache.camel.component.reactive.streams.ReactiveStreamsComponent
-    camel-quarkus-azure-storage-queue:
+      - org.apache.camel.converter.crypto.PGPDataFormat
+      - org.apache.camel.converter.crypto.CryptoDataFormat
+      - org.apache.camel.component.crypto.DigitalSignatureComponent
+    camel-quarkus-nagios:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-azure-storage-queue
+      artifactId: camel-quarkus-nagios
       schemes:
-      - id: azure-storage-queue
+      - id: nagios
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.azure.storage.queue.QueueComponent
-    camel-quarkus-cron:
+      - org.apache.camel.component.nagios.NagiosComponent
+    camel-quarkus-bonita:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-cron
+      artifactId: camel-quarkus-bonita
       schemes:
-      - id: cron
+      - id: bonita
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.cron.CronComponent
-    camel-quarkus-mongodb-gridfs:
+      - org.apache.camel.component.bonita.BonitaComponent
+    camel-quarkus-djl:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-mongodb-gridfs
+      artifactId: camel-quarkus-djl
       schemes:
-      - id: mongodb-gridfs
+      - id: djl
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.mongodb.gridfs.GridFsComponent
-    camel-quarkus-ignite:
+      - org.apache.camel.component.djl.DJLComponent
+    camel-quarkus-mustache:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-ignite
+      artifactId: camel-quarkus-mustache
       schemes:
-      - id: ignite-cache
-        http: false
-        passive: false
-      - id: ignite-idgen
-        http: false
-        passive: false
-      - id: ignite-set
-        http: false
-        passive: false
-      - id: ignite-queue
-        http: false
-        passive: false
-      - id: ignite-events
-        http: false
-        passive: false
-      - id: ignite-messaging
-        http: false
-        passive: false
-      - id: ignite-compute
+      - id: mustache
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.ignite.events.IgniteEventsComponent
-      - org.apache.camel.component.ignite.compute.IgniteComputeComponent
-      - org.apache.camel.component.ignite.queue.IgniteQueueComponent
-      - org.apache.camel.component.ignite.messaging.IgniteMessagingComponent
-      - org.apache.camel.component.ignite.set.IgniteSetComponent
-      - org.apache.camel.component.ignite.idgen.IgniteIdGenComponent
-      - org.apache.camel.component.ignite.cache.IgniteCacheComponent
-    camel-quarkus-web3j:
+      - org.apache.camel.component.mustache.MustacheComponent
+    camel-quarkus-master:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-web3j
+      artifactId: camel-quarkus-master
       schemes:
-      - id: web3j
+      - id: master
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.web3j.Web3jComponent
-    camel-quarkus-aws-ec2:
+      - org.apache.camel.component.master.MasterComponent
+    camel-k-master:
+      groupId: org.apache.camel.k
+      artifactId: camel-k-master
+      schemes:
+      - id: master
+        http: false
+        passive: false
+    camel-quarkus-aws2-ec2:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-aws-ec2
+      artifactId: camel-quarkus-aws2-ec2
       schemes:
-      - id: aws-ec2
+      - id: aws2-ec2
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.aws.ec2.EC2Component
-    camel-quarkus-ldif:
+      - org.apache.camel.component.aws2.ec2.AWS2EC2Component
+    camel-quarkus-snmp:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-ldif
+      artifactId: camel-quarkus-snmp
       schemes:
-      - id: ldif
+      - id: snmp
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.ldif.LdifComponent
-    camel-quarkus-xml-jaxp:
+      - org.apache.camel.component.snmp.SnmpComponent
+    camel-quarkus-barcode:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-xml-jaxp
-      languages:
-      - xtokenize
+      artifactId: camel-quarkus-barcode
+      dataformats:
+      - barcode
       javaTypes:
-      - org.apache.camel.language.xtokenizer.XMLTokenizeLanguage
-    camel-quarkus-corda:
+      - org.apache.camel.dataformat.barcode.BarcodeDataFormat
+    camel-quarkus-openstack:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-corda
+      artifactId: camel-quarkus-openstack
       schemes:
-      - id: corda
+      - id: openstack-nova
         http: false
         passive: false
-      javaTypes:
-      - org.apache.camel.component.corda.CordaComponent
-    camel-quarkus-github:
-      groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-github
-      schemes:
-      - id: github
+      - id: openstack-cinder
         http: false
         passive: false
-      javaTypes:
-      - org.apache.camel.component.github.GitHubComponent
-    camel-quarkus-aws2-eventbridge:
-      groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-aws2-eventbridge
-      schemes:
-      - id: aws2-eventbridge
+      - id: openstack-keystone
         http: false
         passive: false
-      javaTypes:
-      - org.apache.camel.component.aws2.eventbridge.EventbridgeComponent
-    camel-quarkus-xmpp:
-      groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-xmpp
-      schemes:
-      - id: xmpp
+      - id: openstack-neutron
+        http: false
+        passive: false
+      - id: openstack-swift
+        http: false
+        passive: false
+      - id: openstack-glance
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.xmpp.XmppComponent
-    camel-quarkus-aws-lambda:
+      - org.apache.camel.component.openstack.cinder.CinderComponent
+      - org.apache.camel.component.openstack.keystone.KeystoneComponent
+      - org.apache.camel.component.openstack.neutron.NeutronComponent
+      - org.apache.camel.component.openstack.glance.GlanceComponent
+      - org.apache.camel.component.openstack.swift.SwiftComponent
+      - org.apache.camel.component.openstack.nova.NovaComponent
+    camel-quarkus-aws-kinesis:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-aws-lambda
+      artifactId: camel-quarkus-aws-kinesis
       schemes:
-      - id: aws-lambda
+      - id: aws-kinesis
+        http: false
+        passive: false
+      - id: aws-kinesis-firehose
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.aws.lambda.LambdaComponent
-    camel-quarkus-minio:
+      - org.apache.camel.component.aws.firehose.KinesisFirehoseComponent
+      - org.apache.camel.component.aws.kinesis.KinesisComponent
+    camel-quarkus-git:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-minio
+      artifactId: camel-quarkus-git
       schemes:
-      - id: minio
+      - id: git
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.minio.MinioComponent
-    camel-quarkus-atlasmap:
+      - org.apache.camel.component.git.GitComponent
+    camel-quarkus-servlet:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-atlasmap
+      artifactId: camel-quarkus-servlet
       schemes:
-      - id: atlasmap
-        http: false
+      - id: servlet
+        http: true
         passive: false
       javaTypes:
-      - org.apache.camel.component.atlasmap.AtlasMapComponent
-    camel-quarkus-aws2-sts:
+      - org.apache.camel.component.servlet.ServletComponent
+    camel-quarkus-freemarker:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-aws2-sts
+      artifactId: camel-quarkus-freemarker
       schemes:
-      - id: aws2-sts
+      - id: freemarker
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.aws2.sts.STS2Component
-    camel-quarkus-tarfile:
-      groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-tarfile
-      dataformats:
-      - tarfile
-      javaTypes:
-      - org.apache.camel.dataformat.tarfile.TarFileDataFormat
-    camel-quarkus-avro:
+      - org.apache.camel.component.freemarker.FreemarkerComponent
+    camel-quarkus-soap:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-avro
+      artifactId: camel-quarkus-soap
       dataformats:
-      - avro
+      - soapjaxb
       javaTypes:
-      - org.apache.camel.dataformat.avro.AvroDataFormat
-    camel-quarkus-msv:
+      - org.apache.camel.dataformat.soap.SoapJaxbDataFormat
+    camel-quarkus-arangodb:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-msv
+      artifactId: camel-quarkus-arangodb
       schemes:
-      - id: msv
+      - id: arangodb
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.validator.msv.MsvComponent
-    camel-quarkus-spark:
+      - org.apache.camel.component.arangodb.ArangoDbComponent
+    camel-quarkus-google-mail:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-spark
+      artifactId: camel-quarkus-google-mail
       schemes:
-      - id: spark
+      - id: google-mail
+        http: false
+        passive: false
+      - id: google-mail-stream
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.spark.SparkComponent
-    camel-quarkus-saxon:
+      - org.apache.camel.component.google.mail.stream.GoogleMailStreamComponent
+      - org.apache.camel.component.google.mail.GoogleMailComponent
+    camel-quarkus-websocket-jsr356:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-saxon
+      artifactId: camel-quarkus-websocket-jsr356
       schemes:
-      - id: xquery
+      - id: websocket-jsr356
         http: false
         passive: false
-      languages:
-      - xquery
       javaTypes:
-      - org.apache.camel.component.xquery.XQueryComponent
-      - org.apache.camel.language.xquery.XQueryLanguage
-    camel-quarkus-caffeine:
+      - org.apache.camel.websocket.jsr356.JSR356WebSocketComponent
+    camel-quarkus-lumberjack:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-caffeine
+      artifactId: camel-quarkus-lumberjack
       schemes:
-      - id: caffeine-loadcache
-        http: false
-        passive: false
-      - id: caffeine-cache
+      - id: lumberjack
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.caffeine.cache.CaffeineCacheComponent
-      - org.apache.camel.component.caffeine.load.CaffeineLoadCacheComponent
-    camel-quarkus-elasticsearch-rest:
+      - org.apache.camel.component.lumberjack.LumberjackComponent
+    camel-quarkus-json-validator:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-elasticsearch-rest
+      artifactId: camel-quarkus-json-validator
       schemes:
-      - id: elasticsearch-rest
+      - id: json-validator
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.elasticsearch.ElasticsearchComponent
-    camel-quarkus-bean-validator:
+      - org.apache.camel.component.jsonvalidator.JsonValidatorComponent
+    camel-quarkus-aws2-s3:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-bean-validator
+      artifactId: camel-quarkus-aws2-s3
       schemes:
-      - id: bean-validator
+      - id: aws2-s3
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.bean.validator.BeanValidatorComponent
-    camel-quarkus-jira:
+      - org.apache.camel.component.aws2.s3.AWS2S3Component
+    camel-quarkus-dropbox:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-jira
+      artifactId: camel-quarkus-dropbox
       schemes:
-      - id: jira
+      - id: dropbox
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.jira.JiraComponent
-    camel-quarkus-sql:
+      - org.apache.camel.component.dropbox.DropboxComponent
+    camel-quarkus-google-bigquery:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-sql
+      artifactId: camel-quarkus-google-bigquery
       schemes:
-      - id: sql
+      - id: google-bigquery
         http: false
         passive: false
-      - id: sql-stored
+      - id: google-bigquery-sql
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.sql.stored.SqlStoredComponent
-      - org.apache.camel.component.sql.SqlComponent
-    camel-quarkus-ehcache:
+      - org.apache.camel.component.google.bigquery.sql.GoogleBigQuerySQLComponent
+      - org.apache.camel.component.google.bigquery.GoogleBigQueryComponent
+    camel-quarkus-mail:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-ehcache
+      artifactId: camel-quarkus-mail
       schemes:
-      - id: ehcache
+      - id: smtps
         http: false
         passive: false
-      javaTypes:
-      - org.apache.camel.component.ehcache.EhcacheComponent
-    camel-quarkus-aws2-iam:
-      groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-aws2-iam
-      schemes:
-      - id: aws2-iam
+      - id: pop3
         http: false
         passive: false
-      javaTypes:
-      - org.apache.camel.component.aws2.iam.IAM2Component
-    camel-quarkus-velocity:
-      groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-velocity
-      schemes:
-      - id: velocity
+      - id: smtp
+        http: false
+        passive: false
+      - id: imaps
+        http: false
+        passive: false
+      - id: imap
         http: false
         passive: false
+      - id: pop3s
+        http: false
+        passive: false
+      dataformats:
+      - mime-multipart
       javaTypes:
-      - org.apache.camel.component.velocity.VelocityComponent
-    camel-quarkus-core:
+      - org.apache.camel.dataformat.mime.multipart.MimeMultipartDataFormat
+      - org.apache.camel.component.mail.MailComponent
+    camel-quarkus-platform-http:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-core
-      languages:
-      - constant
-      - csimple
-      - exchangeProperty
-      - tokenize
-      - file
-      - header
-      - simple
-      - ref
+      artifactId: camel-quarkus-platform-http
+      schemes:
+      - id: platform-http
+        http: true
+        passive: false
       javaTypes:
-      - org.apache.camel.language.ref.RefLanguage
-      - org.apache.camel.language.simple.FileLanguage
-      - org.apache.camel.language.csimple.CSimpleLanguage
-      - org.apache.camel.language.constant.ConstantLanguage
-      - org.apache.camel.language.simple.SimpleLanguage
-      - org.apache.camel.language.header.HeaderLanguage
-      - org.apache.camel.language.property.ExchangePropertyLanguage
-      - org.apache.camel.language.tokenizer.TokenizeLanguage
-    camel-quarkus-debezium-mysql:
+      - org.apache.camel.component.platform.http.PlatformHttpComponent
+    camel-quarkus-timer:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-debezium-mysql
+      artifactId: camel-quarkus-timer
       schemes:
-      - id: debezium-mysql
+      - id: timer
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.debezium.DebeziumMySqlComponent
-    camel-quarkus-jcr:
+      - org.apache.camel.component.timer.TimerComponent
+    camel-quarkus-digitalocean:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-jcr
+      artifactId: camel-quarkus-digitalocean
       schemes:
-      - id: jcr
+      - id: digitalocean
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.jcr.JcrComponent
-    camel-quarkus-hdfs:
+      - org.apache.camel.component.digitalocean.DigitalOceanComponent
+    camel-quarkus-couchbase:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-hdfs
+      artifactId: camel-quarkus-couchbase
       schemes:
-      - id: hdfs
+      - id: couchbase
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.hdfs.HdfsComponent
-    camel-quarkus-kudu:
+      - org.apache.camel.component.couchbase.CouchbaseComponent
+    camel-quarkus-aws-sns:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-kudu
+      artifactId: camel-quarkus-aws-sns
       schemes:
-      - id: kudu
+      - id: aws-sns
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.kudu.KuduComponent
-    camel-quarkus-jooq:
+      - org.apache.camel.component.aws.sns.SnsComponent
+    camel-quarkus-slack:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-jooq
+      artifactId: camel-quarkus-slack
       schemes:
-      - id: jooq
+      - id: slack
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.jooq.JooqComponent
-    camel-quarkus-jsonpath:
+      - org.apache.camel.component.slack.SlackComponent
+    camel-quarkus-flatpack:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-jsonpath
-      languages:
-      - jsonpath
+      artifactId: camel-quarkus-flatpack
+      schemes:
+      - id: flatpack
+        http: false
+        passive: false
+      dataformats:
+      - flatpack
       javaTypes:
-      - org.apache.camel.jsonpath.JsonPathLanguage
-    camel-quarkus-hl7:
+      - org.apache.camel.component.flatpack.FlatpackComponent
+      - org.apache.camel.dataformat.flatpack.FlatpackDataFormat
+    camel-quarkus-zipfile:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-hl7
-      languages:
-      - hl7terser
+      artifactId: camel-quarkus-zipfile
       dataformats:
-      - hl7
+      - zipfile
       javaTypes:
-      - org.apache.camel.component.hl7.Hl7TerserLanguage
-      - org.apache.camel.component.hl7.HL7DataFormat
-    camel-quarkus-disruptor:
+      - org.apache.camel.dataformat.zipfile.ZipFileDataFormat
+    camel-quarkus-aws2-ecs:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-disruptor
+      artifactId: camel-quarkus-aws2-ecs
       schemes:
-      - id: disruptor
+      - id: aws2-ecs
         http: false
         passive: false
-      - id: disruptor-vm
-        http: false
+      javaTypes:
+      - org.apache.camel.component.aws2.ecs.ECS2Component
+    camel-quarkus-netty-http:
+      groupId: org.apache.camel.quarkus
+      artifactId: camel-quarkus-netty-http
+      schemes:
+      - id: netty-http
+        http: true
         passive: false
       javaTypes:
-      - org.apache.camel.component.disruptor.vm.DisruptorVmComponent
-      - org.apache.camel.component.disruptor.DisruptorComponent
-    camel-quarkus-graphql:
+      - org.apache.camel.component.netty.http.NettyHttpComponent
+    camel-quarkus-influxdb:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-graphql
+      artifactId: camel-quarkus-influxdb
       schemes:
-      - id: graphql
+      - id: influxdb
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.graphql.GraphqlComponent
-    camel-quarkus-log:
-      groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-log
+      - org.apache.camel.component.influxdb.InfluxDbComponent
+    camel-k-kamelet:
+      groupId: org.apache.camel.k
+      artifactId: camel-k-kamelet
       schemes:
-      - id: log
+      - id: kamelet
         http: false
         passive: true
+    camel-quarkus-tagsoup:
+      groupId: org.apache.camel.quarkus
+      artifactId: camel-quarkus-tagsoup
+      dataformats:
+      - tidyMarkup
       javaTypes:
-      - org.apache.camel.component.log.LogComponent
-    camel-quarkus-ahc:
+      - org.apache.camel.dataformat.tagsoup.TidyMarkupDataFormat
+    camel-quarkus-protobuf:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-ahc
-      schemes:
-      - id: ahc
-        http: true
-        passive: false
+      artifactId: camel-quarkus-protobuf
+      dataformats:
+      - protobuf
       javaTypes:
-      - org.apache.camel.component.ahc.AhcComponent
-    camel-quarkus-milo:
+      - org.apache.camel.dataformat.protobuf.ProtobufDataFormat
+    camel-quarkus-azure-storage-blob:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-milo
+      artifactId: camel-quarkus-azure-storage-blob
       schemes:
-      - id: milo-server
-        http: false
-        passive: false
-      - id: milo-client
+      - id: azure-storage-blob
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.milo.client.MiloClientComponent
-      - org.apache.camel.component.milo.server.MiloServerComponent
-    camel-quarkus-atomix:
+      - org.apache.camel.component.azure.storage.blob.BlobComponent
+    camel-quarkus-asterisk:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-atomix
+      artifactId: camel-quarkus-asterisk
       schemes:
-      - id: atomix-multimap
-        http: false
-        passive: false
-      - id: atomix-map
-        http: false
-        passive: false
-      - id: atomix-queue
-        http: false
-        passive: false
-      - id: atomix-set
+      - id: asterisk
         http: false
         passive: false
-      - id: atomix-messaging
+      javaTypes:
+      - org.apache.camel.component.asterisk.AsteriskComponent
+    camel-quarkus-microprofile-metrics:
+      groupId: org.apache.camel.quarkus
+      artifactId: camel-quarkus-microprofile-metrics
+      schemes:
+      - id: microprofile-metrics
         http: false
         passive: false
-      - id: atomix-value
+      javaTypes:
+      - org.apache.camel.component.microprofile.metrics.MicroProfileMetricsComponent
+    camel-quarkus-nats:
+      groupId: org.apache.camel.quarkus
+      artifactId: camel-quarkus-nats
+      schemes:
+      - id: nats
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.atomix.client.queue.AtomixQueueComponent
-      - org.apache.camel.component.atomix.client.map.AtomixMapComponent
-      - org.apache.camel.component.atomix.client.multimap.AtomixMultiMapComponent
-      - org.apache.camel.component.atomix.client.value.AtomixValueComponent
-      - org.apache.camel.component.atomix.client.set.AtomixSetComponent
-      - org.apache.camel.component.atomix.client.messaging.AtomixMessagingComponent
-    camel-quarkus-fhir:
+      - org.apache.camel.component.nats.NatsComponent
+    camel-quarkus-infinispan:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-fhir
+      artifactId: camel-quarkus-infinispan
       schemes:
-      - id: fhir
+      - id: infinispan
         http: false
         passive: false
-      dataformats:
-      - fhirXml
-      - fhirJson
       javaTypes:
-      - org.apache.camel.component.fhir.FhirXmlDataFormat
-      - org.apache.camel.component.fhir.FhirJsonDataFormat
-      - org.apache.camel.component.fhir.FhirComponent
-    camel-quarkus-csv:
+      - org.apache.camel.component.infinispan.InfinispanComponent
+    camel-quarkus-base64:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-csv
+      artifactId: camel-quarkus-base64
       dataformats:
-      - csv
+      - base64
       javaTypes:
-      - org.apache.camel.dataformat.csv.CsvDataFormat
-    camel-quarkus-aws2-kms:
+      - org.apache.camel.dataformat.base64.Base64DataFormat
+    camel-quarkus-exec:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-aws2-kms
+      artifactId: camel-quarkus-exec
       schemes:
-      - id: aws2-kms
+      - id: exec
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.aws2.kms.KMS2Component
-    camel-quarkus-lucene:
+      - org.apache.camel.component.exec.ExecComponent
+    camel-quarkus-rss:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-lucene
+      artifactId: camel-quarkus-rss
       schemes:
-      - id: lucene
+      - id: rss
         http: false
         passive: false
+      dataformats:
+      - rss
       javaTypes:
-      - org.apache.camel.component.lucene.LuceneComponent
-    camel-quarkus-splunk-hec:
+      - org.apache.camel.component.rss.RssComponent
+      - org.apache.camel.dataformat.rss.RssDataFormat
+    camel-quarkus-gson:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-splunk-hec
-      schemes:
-      - id: splunk-hec
-        http: false
-        passive: false
+      artifactId: camel-quarkus-gson
+      dataformats:
+      - json-gson
       javaTypes:
-      - org.apache.camel.component.splunkhec.SplunkHECComponent
-    camel-quarkus-aws-ecs:
+      - org.apache.camel.component.gson.GsonDataFormat
+    camel-quarkus-geocoder:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-aws-ecs
+      artifactId: camel-quarkus-geocoder
       schemes:
-      - id: aws-ecs
+      - id: geocoder
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.aws.ecs.ECSComponent
-    camel-quarkus-jbpm:
+      - org.apache.camel.component.geocoder.GeoCoderComponent
+    camel-quarkus-pgevent:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-jbpm
+      artifactId: camel-quarkus-pgevent
       schemes:
-      - id: jbpm
+      - id: pgevent
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.jbpm.JBPMComponent
-    camel-quarkus-salesforce:
+      - org.apache.camel.component.pgevent.PgEventComponent
+    camel-quarkus-atom:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-salesforce
+      artifactId: camel-quarkus-atom
       schemes:
-      - id: salesforce
+      - id: atom
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.salesforce.SalesforceComponent
-    camel-quarkus-jcache:
+      - org.apache.camel.component.atom.AtomComponent
+    camel-quarkus-soroush:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-jcache
+      artifactId: camel-quarkus-soroush
       schemes:
-      - id: jcache
+      - id: soroush
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.jcache.JCacheComponent
-    camel-quarkus-vertx-websocket:
+      - org.apache.camel.component.soroushbot.component.SoroushBotComponent
+    camel-quarkus-drill:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-vertx-websocket
+      artifactId: camel-quarkus-drill
       schemes:
-      - id: vertx-websocket
+      - id: drill
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.vertx.websocket.VertxWebsocketComponent
-    camel-quarkus-google-calendar:
+      - org.apache.camel.component.drill.DrillComponent
+    camel-quarkus-cometd:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-google-calendar
+      artifactId: camel-quarkus-cometd
       schemes:
-      - id: google-calendar
+      - id: cometd
         http: false
         passive: false
-      - id: google-calendar-stream
+      - id: cometds
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.google.calendar.stream.GoogleCalendarStreamComponent
-      - org.apache.camel.component.google.calendar.GoogleCalendarComponent
-    camel-quarkus-avro-rpc:
+      - org.apache.camel.component.cometd.CometdComponent
+    camel-quarkus-chunk:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-avro-rpc
+      artifactId: camel-quarkus-chunk
       schemes:
-      - id: avro
+      - id: chunk
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.avro.AvroComponent
-    camel-quarkus-browse:
-      groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-browse
+      - org.apache.camel.component.chunk.ChunkComponent
+    camel-k-webhook:
+      groupId: org.apache.camel.k
+      artifactId: camel-k-webhook
       schemes:
-      - id: browse
-        http: false
+      - id: webhook
+        http: true
         passive: true
-      javaTypes:
-      - org.apache.camel.component.browse.BrowseComponent
-    camel-quarkus-stream:
+    camel-quarkus-dns:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-stream
+      artifactId: camel-quarkus-dns
       schemes:
-      - id: stream
+      - id: dns
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.stream.StreamComponent
-    camel-quarkus-kafka:
+      - org.apache.camel.component.dns.DnsComponent
+    camel-quarkus-mongodb:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-kafka
+      artifactId: camel-quarkus-mongodb
       schemes:
-      - id: kafka
+      - id: mongodb
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.kafka.KafkaComponent
-    camel-quarkus-xslt-saxon:
+      - org.apache.camel.component.mongodb.MongoDbComponent
+    camel-quarkus-jgroups-raft:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-xslt-saxon
+      artifactId: camel-quarkus-jgroups-raft
       schemes:
-      - id: xslt-saxon
+      - id: jgroups-raft
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.xslt.saxon.XsltSaxonComponent
-    camel-quarkus-ssh:
+      - org.apache.camel.component.jgroups.raft.JGroupsRaftComponent
+    camel-quarkus-cassandraql:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-ssh
+      artifactId: camel-quarkus-cassandraql
       schemes:
-      - id: ssh
+      - id: cql
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.ssh.SshComponent
-    camel-quarkus-tika:
+      - org.apache.camel.component.cassandra.CassandraComponent
+    camel-quarkus-ical:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-tika
-      schemes:
-      - id: tika
-        http: false
-        passive: false
+      artifactId: camel-quarkus-ical
+      dataformats:
+      - ical
       javaTypes:
-      - org.apache.camel.component.tika.TikaComponent
-    camel-quarkus-coap:
+      - org.apache.camel.component.ical.ICalDataFormat
+    camel-quarkus-sjms:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-coap
+      artifactId: camel-quarkus-sjms
       schemes:
-      - id: coaps
-        http: false
-        passive: false
-      - id: coap+tcp
-        http: false
-        passive: false
-      - id: coap
+      - id: sjms-batch
         http: false
         passive: false
-      - id: coaps+tcp
+      - id: sjms
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.coap.CoAPComponent
-    camel-quarkus-aws2-mq:
+      - org.apache.camel.component.sjms.SjmsComponent
+      - org.apache.camel.component.sjms.batch.SjmsBatchComponent
+    camel-quarkus-google-drive:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-aws2-mq
+      artifactId: camel-quarkus-google-drive
       schemes:
-      - id: aws2-mq
+      - id: google-drive
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.aws2.mq.MQ2Component
-    camel-quarkus-beanio:
+      - org.apache.camel.component.google.drive.GoogleDriveComponent
+    camel-quarkus-splunk:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-beanio
-      dataformats:
-      - beanio
+      artifactId: camel-quarkus-splunk
+      schemes:
+      - id: splunk
+        http: false
+        passive: false
       javaTypes:
-      - org.apache.camel.dataformat.beanio.BeanIODataFormat
-    camel-quarkus-jsch:
+      - org.apache.camel.component.splunk.SplunkComponent
+    camel-quarkus-dozer:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-jsch
+      artifactId: camel-quarkus-dozer
       schemes:
-      - id: scp
+      - id: dozer
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.scp.ScpComponent
-    camel-quarkus-irc:
+      - org.apache.camel.component.dozer.DozerComponent
+    camel-quarkus-aws-eks:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-irc
+      artifactId: camel-quarkus-aws-eks
       schemes:
-      - id: irc
+      - id: aws-eks
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.irc.IrcComponent
-    camel-quarkus-mllp:
+      - org.apache.camel.component.aws.eks.EKSComponent
+    camel-quarkus-seda:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-mllp
+      artifactId: camel-quarkus-seda
       schemes:
-      - id: mllp
+      - id: seda
         http: false
-        passive: false
+        passive: true
       javaTypes:
-      - org.apache.camel.component.mllp.MllpComponent
-    camel-quarkus-ahc-ws:
+      - org.apache.camel.component.seda.SedaComponent
+    camel-quarkus-nitrite:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-ahc-ws
+      artifactId: camel-quarkus-nitrite
       schemes:
-      - id: ahc-wss
+      - id: nitrite
         http: false
         passive: false
-      - id: ahc-ws
-        http: true
-        passive: false
       javaTypes:
-      - org.apache.camel.component.ahc.ws.WsComponent
-    camel-quarkus-aws2-translate:
+      - org.apache.camel.component.nitrite.NitriteComponent
+    camel-quarkus-activemq:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-aws2-translate
+      artifactId: camel-quarkus-activemq
       schemes:
-      - id: aws2-translate
+      - id: activemq
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.aws2.translate.Translate2Component
-    camel-quarkus-vertx-http:
+      - org.apache.camel.component.activemq.ActiveMQComponent
+    camel-quarkus-twilio:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-vertx-http
+      artifactId: camel-quarkus-twilio
       schemes:
-      - id: vertx-http
+      - id: twilio
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.vertx.http.VertxHttpComponent
-    camel-quarkus-wordpress:
+      - org.apache.camel.component.twilio.TwilioComponent
+    camel-quarkus-zendesk:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-wordpress
+      artifactId: camel-quarkus-zendesk
       schemes:
-      - id: wordpress
+      - id: zendesk
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.wordpress.WordpressComponent
-    camel-quarkus-box:
+      - org.apache.camel.component.zendesk.ZendeskComponent
+    camel-quarkus-braintree:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-box
+      artifactId: camel-quarkus-braintree
       schemes:
-      - id: box
+      - id: braintree
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.box.BoxComponent
-    camel-quarkus-hazelcast:
+      - org.apache.camel.component.braintree.BraintreeComponent
+    camel-quarkus-aws-sqs:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-hazelcast
+      artifactId: camel-quarkus-aws-sqs
       schemes:
-      - id: hazelcast-multimap
+      - id: aws-sqs
         http: false
         passive: false
-      - id: hazelcast-topic
+      javaTypes:
+      - org.apache.camel.component.aws.sqs.SqsComponent
+    camel-quarkus-olingo4:
+      groupId: org.apache.camel.quarkus
+      artifactId: camel-quarkus-olingo4
+      schemes:
+      - id: olingo4
         http: false
         passive: false
-      - id: hazelcast-replicatedmap
-        http: false
-        passive: false
-      - id: hazelcast-atomicvalue
-        http: false
-        passive: false
-      - id: hazelcast-ringbuffer
-        http: false
-        passive: false
-      - id: hazelcast-instance
+      javaTypes:
+      - org.apache.camel.component.olingo4.Olingo4Component
+    camel-quarkus-zookeeper:
+      groupId: org.apache.camel.quarkus
+      artifactId: camel-quarkus-zookeeper
+      schemes:
+      - id: zookeeper
         http: false
         passive: false
-      - id: hazelcast-list
+      javaTypes:
+      - org.apache.camel.component.zookeeper.ZooKeeperComponent
+    camel-quarkus-sjms2:
+      groupId: org.apache.camel.quarkus
+      artifactId: camel-quarkus-sjms2
+      schemes:
+      - id: sjms2
         http: false
         passive: false
-      - id: hazelcast-queue
+      javaTypes:
+      - org.apache.camel.component.sjms2.Sjms2Component
+    camel-quarkus-ldap:
+      groupId: org.apache.camel.quarkus
+      artifactId: camel-quarkus-ldap
+      schemes:
+      - id: ldap
         http: false
         passive: false
-      - id: hazelcast-set
+      javaTypes:
+      - org.apache.camel.component.ldap.LdapComponent
+    camel-quarkus-xchange:
+      groupId: org.apache.camel.quarkus
+      artifactId: camel-quarkus-xchange
+      schemes:
+      - id: xchange
         http: false
         passive: false
-      - id: hazelcast-map
+      javaTypes:
+      - org.apache.camel.component.xchange.XChangeComponent
+    camel-k-kamelet-reify:
+      groupId: org.apache.camel.k
+      artifactId: camel-k-kamelet-reify
+      schemes:
+      - id: wrap
         http: false
         passive: false
-      - id: hazelcast-seda
+    camel-quarkus-atmos:
+      groupId: org.apache.camel.quarkus
+      artifactId: camel-quarkus-atmos
+      schemes:
+      - id: atmos
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.hazelcast.seda.HazelcastSedaComponent
-      - org.apache.camel.component.hazelcast.replicatedmap.HazelcastReplicatedmapComponent
-      - org.apache.camel.component.hazelcast.set.HazelcastSetComponent
-      - org.apache.camel.component.hazelcast.instance.HazelcastInstanceComponent
-      - org.apache.camel.component.hazelcast.multimap.HazelcastMultimapComponent
-      - org.apache.camel.component.hazelcast.ringbuffer.HazelcastRingbufferComponent
-      - org.apache.camel.component.hazelcast.topic.HazelcastTopicComponent
-      - org.apache.camel.component.hazelcast.list.HazelcastListComponent
-      - org.apache.camel.component.hazelcast.atomicnumber.HazelcastAtomicnumberComponent
-      - org.apache.camel.component.hazelcast.queue.HazelcastQueueComponent
-      - org.apache.camel.component.hazelcast.map.HazelcastMapComponent
-    camel-quarkus-aws2-ses:
+      - org.apache.camel.component.atmos.AtmosComponent
+    camel-quarkus-as2:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-aws2-ses
+      artifactId: camel-quarkus-as2
       schemes:
-      - id: aws2-ses
+      - id: as2
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.aws2.ses.Ses2Component
-    camel-quarkus-cmis:
+      - org.apache.camel.component.as2.AS2Component
+    camel-quarkus-etcd:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-cmis
+      artifactId: camel-quarkus-etcd
       schemes:
-      - id: cmis
+      - id: etcd-keys
+        http: false
+        passive: false
+      - id: etcd-stats
+        http: false
+        passive: false
+      - id: etcd-watch
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.cmis.CMISComponent
-    camel-quarkus-google-pubsub:
+      - org.apache.camel.component.etcd.EtcdWatchComponent
+      - org.apache.camel.component.etcd.EtcdStatsComponent
+      - org.apache.camel.component.etcd.EtcdKeysComponent
+    camel-quarkus-quartz:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-google-pubsub
+      artifactId: camel-quarkus-quartz
       schemes:
-      - id: google-pubsub
+      - id: quartz
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.google.pubsub.GooglePubsubComponent
-    camel-quarkus-printer:
+      - org.apache.camel.component.quartz.QuartzComponent
+    camel-quarkus-pg-replication-slot:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-printer
+      artifactId: camel-quarkus-pg-replication-slot
       schemes:
-      - id: lpr
+      - id: pg-replication-slot
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.printer.PrinterComponent
-    camel-quarkus-jackson:
-      groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-jackson
-      dataformats:
-      - json-jackson
-      javaTypes:
-      - org.apache.camel.component.jackson.JacksonDataFormat
-    camel-quarkus-validator:
+      - org.apache.camel.component.pg.replication.slot.PgReplicationSlotComponent
+    camel-quarkus-jms:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-validator
+      artifactId: camel-quarkus-jms
       schemes:
-      - id: validator
+      - id: jms
         http: false
-        passive: true
+        passive: false
       javaTypes:
-      - org.apache.camel.component.validator.ValidatorComponent
-    camel-quarkus-ftp:
+      - org.apache.camel.component.jms.JmsComponent
+    camel-quarkus-thrift:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-ftp
+      artifactId: camel-quarkus-thrift
       schemes:
-      - id: ftps
-        http: false
-        passive: false
-      - id: sftp
-        http: false
-        passive: false
-      - id: ftp
+      - id: thrift
         http: false
         passive: false
+      dataformats:
+      - thrift
       javaTypes:
-      - org.apache.camel.component.file.remote.FtpsComponent
-      - org.apache.camel.component.file.remote.SftpComponent
-      - org.apache.camel.component.file.remote.FtpComponent
-    camel-quarkus-google-sheets:
+      - org.apache.camel.component.thrift.ThriftComponent
+      - org.apache.camel.dataformat.thrift.ThriftDataFormat
+    camel-quarkus-sip:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-google-sheets
+      artifactId: camel-quarkus-sip
       schemes:
-      - id: google-sheets-stream
+      - id: sip
         http: false
         passive: false
-      - id: google-sheets
+      - id: sips
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.google.sheets.GoogleSheetsComponent
-      - org.apache.camel.component.google.sheets.stream.GoogleSheetsStreamComponent
-    camel-quarkus-stomp:
+      - org.apache.camel.component.sip.SipComponent
+    camel-quarkus-aws2-cw:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-stomp
+      artifactId: camel-quarkus-aws2-cw
       schemes:
-      - id: stomp
+      - id: aws2-cw
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.stomp.StompComponent
-    camel-quarkus-stringtemplate:
+      - org.apache.camel.component.aws2.cw.Cw2Component
+    camel-quarkus-asn1:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-stringtemplate
+      artifactId: camel-quarkus-asn1
+      dataformats:
+      - asn1
+      javaTypes:
+      - org.apache.camel.dataformat.asn1.ASN1DataFormat
+    camel-quarkus-schematron:
+      groupId: org.apache.camel.quarkus
+      artifactId: camel-quarkus-schematron
       schemes:
-      - id: string-template
+      - id: schematron
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.stringtemplate.StringTemplateComponent
-    camel-quarkus-aws2-lambda:
+      - org.apache.camel.component.schematron.SchematronComponent
+    camel-quarkus-language:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-aws2-lambda
+      artifactId: camel-quarkus-language
       schemes:
-      - id: aws2-lambda
+      - id: language
         http: false
-        passive: false
+        passive: true
       javaTypes:
-      - org.apache.camel.component.aws2.lambda.Lambda2Component
-    camel-k-cron:
+      - org.apache.camel.component.language.LanguageComponent
+    camel-k-knative:
       groupId: org.apache.camel.k
-      artifactId: camel-k-cron
+      artifactId: camel-k-knative
       schemes:
-      - id: cron
-        http: false
+      - id: knative
+        http: true
         passive: false
-    camel-quarkus-pdf:
+        producer:
+          dependencies:
+          - groupId: org.apache.camel.k
+            artifactId: camel-k-knative-producer
+        consumer:
+          dependencies:
+          - groupId: org.apache.camel.k
+            artifactId: camel-k-knative-consumer
+    camel-quarkus-zookeeper-master:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-pdf
+      artifactId: camel-quarkus-zookeeper-master
       schemes:
-      - id: pdf
+      - id: zookeeper-master
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.pdf.PdfComponent
-    camel-quarkus-kubernetes:
+      - org.apache.camel.component.zookeepermaster.MasterComponent
+    camel-quarkus-jacksonxml:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-kubernetes
+      artifactId: camel-quarkus-jacksonxml
+      dataformats:
+      - jacksonxml
+      javaTypes:
+      - org.apache.camel.component.jacksonxml.JacksonXMLDataFormat
+    camel-quarkus-debezium-mongodb:
+      groupId: org.apache.camel.quarkus
+      artifactId: camel-quarkus-debezium-mongodb
       schemes:
-      - id: kubernetes-resources-quota
-        http: false
-        passive: false
-      - id: openshift-builds
-        http: false
-        passive: false
-      - id: kubernetes-custom-resources
-        http: false
-        passive: false
-      - id: kubernetes-namespaces
-        http: false
-        passive: false
-      - id: kubernetes-nodes
-        http: false
-        passive: false
-      - id: kubernetes-hpa
-        http: false
-        passive: false
-      - id: kubernetes-deployments
-        http: false
-        passive: false
-      - id: kubernetes-persistent-volumes-claims
-        http: false
-        passive: false
-      - id: kubernetes-pods
-        http: false
-        passive: false
-      - id: kubernetes-config-maps
-        http: false
-        passive: false
-      - id: kubernetes-persistent-volumes
-        http: false
-        passive: false
-      - id: kubernetes-services
-        http: false
-        passive: false
-      - id: kubernetes-secrets
-        http: false
-        passive: false
-      - id: kubernetes-service-accounts
-        http: false
-        passive: false
-      - id: openshift-build-configs
+      - id: debezium-mongodb
         http: false
         passive: false
-      - id: kubernetes-job
+      javaTypes:
+      - org.apache.camel.component.debezium.DebeziumMongodbComponent
+    camel-quarkus-xstream:
+      groupId: org.apache.camel.quarkus
+      artifactId: camel-quarkus-xstream
+      dataformats:
+      - xstream
+      - json-xstream
+      javaTypes:
+      - org.apache.camel.dataformat.xstream.JsonDataFormat
+      - org.apache.camel.dataformat.xstream.XStreamDataFormat
+    camel-quarkus-optaplanner:
+      groupId: org.apache.camel.quarkus
+      artifactId: camel-quarkus-optaplanner
+      schemes:
+      - id: optaplanner
         http: false
         passive: false
-      - id: kubernetes-replication-controllers
+      javaTypes:
+      - org.apache.camel.component.optaplanner.OptaPlannerComponent
+    camel-quarkus-apns:
+      groupId: org.apache.camel.quarkus
+      artifactId: camel-quarkus-apns
+      schemes:
+      - id: apns
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.kubernetes.services.KubernetesServicesComponent
-      - org.apache.camel.component.kubernetes.nodes.KubernetesNodesComponent
-      - org.apache.camel.component.kubernetes.secrets.KubernetesSecretsComponent
-      - org.apache.camel.component.openshift.builds.OpenshiftBuildsComponent
-      - org.apache.camel.component.kubernetes.config_maps.KubernetesConfigMapsComponent
-      - org.apache.camel.component.kubernetes.service_accounts.KubernetesServiceAccountsComponent
-      - org.apache.camel.component.kubernetes.resources_quota.KubernetesResourcesQuotaComponent
-      - org.apache.camel.component.kubernetes.hpa.KubernetesHPAComponent
-      - org.apache.camel.component.kubernetes.namespaces.KubernetesNamespacesComponent
-      - org.apache.camel.component.kubernetes.pods.KubernetesPodsComponent
-      - org.apache.camel.component.kubernetes.deployments.KubernetesDeploymentsComponent
-      - org.apache.camel.component.kubernetes.job.KubernetesJobComponent
-      - org.apache.camel.component.kubernetes.replication_controllers.KubernetesReplicationControllersComponent
-      - org.apache.camel.component.kubernetes.customresources.KubernetesCustomResourcesComponent
-      - org.apache.camel.component.kubernetes.persistent_volumes_claims.KubernetesPersistentVolumesClaimsComponent
-      - org.apache.camel.component.openshift.build_configs.OpenshiftBuildConfigsComponent
-      - org.apache.camel.component.kubernetes.persistent_volumes.KubernetesPersistentVolumesComponent
-    camel-quarkus-aws2-athena:
+      - org.apache.camel.component.apns.ApnsComponent
+    camel-quarkus-jslt:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-aws2-athena
+      artifactId: camel-quarkus-jslt
       schemes:
-      - id: aws2-athena
+      - id: jslt
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.aws2.athena.Athena2Component
-    camel-quarkus-cm-sms:
+      - org.apache.camel.component.jslt.JsltComponent
+    camel-quarkus-bindy:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-cm-sms
+      artifactId: camel-quarkus-bindy
+      dataformats:
+      - bindy-kvp
+      - bindy-fixed
+      - bindy-csv
+      javaTypes:
+      - org.apache.camel.dataformat.bindy.kvp.BindyKeyValuePairDataFormat
+      - org.apache.camel.dataformat.bindy.fixed.BindyFixedLengthDataFormat
+      - org.apache.camel.dataformat.bindy.csv.BindyCsvDataFormat
+    camel-quarkus-vm:
+      groupId: org.apache.camel.quarkus
+      artifactId: camel-quarkus-vm
       schemes:
-      - id: cm-sms
+      - id: vm
         http: false
-        passive: false
+        passive: true
       javaTypes:
-      - org.apache.camel.component.cm.CMComponent
-    camel-quarkus-crypto:
+      - org.apache.camel.component.vm.VmComponent
+    camel-quarkus-paho:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-crypto
+      artifactId: camel-quarkus-paho
       schemes:
-      - id: crypto
+      - id: paho
         http: false
         passive: false
+      javaTypes:
+      - org.apache.camel.component.paho.PahoComponent
+    camel-quarkus-lzf:
+      groupId: org.apache.camel.quarkus
+      artifactId: camel-quarkus-lzf
       dataformats:
-      - crypto
-      - pgp
+      - lzf
       javaTypes:
-      - org.apache.camel.converter.crypto.CryptoDataFormat
-      - org.apache.camel.component.crypto.DigitalSignatureComponent
-      - org.apache.camel.converter.crypto.PGPDataFormat
-    camel-quarkus-nagios:
+      - org.apache.camel.dataformat.lzf.LZFDataFormat
+    camel-quarkus-ref:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-nagios
+      artifactId: camel-quarkus-ref
       schemes:
-      - id: nagios
+      - id: ref
         http: false
-        passive: false
+        passive: true
       javaTypes:
-      - org.apache.camel.component.nagios.NagiosComponent
-    camel-quarkus-bonita:
+      - org.apache.camel.component.ref.RefComponent
+    camel-quarkus-univocity-parsers:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-bonita
+      artifactId: camel-quarkus-univocity-parsers
+      dataformats:
+      - univocity-fixed
+      - univocity-tsv
+      - univocity-csv
+      javaTypes:
+      - org.apache.camel.dataformat.univocity.UniVocityTsvDataFormat
+      - org.apache.camel.dataformat.univocity.UniVocityCsvDataFormat
+      - org.apache.camel.dataformat.univocity.UniVocityFixedWidthDataFormat
+    camel-quarkus-mvel:
+      groupId: org.apache.camel.quarkus
+      artifactId: camel-quarkus-mvel
       schemes:
-      - id: bonita
+      - id: mvel
         http: false
         passive: false
+      languages:
+      - mvel
       javaTypes:
-      - org.apache.camel.component.bonita.BonitaComponent
-    camel-quarkus-djl:
+      - org.apache.camel.language.mvel.MvelLanguage
+      - org.apache.camel.component.mvel.MvelComponent
+    camel-quarkus-aws2-sns:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-djl
+      artifactId: camel-quarkus-aws2-sns
       schemes:
-      - id: djl
+      - id: aws2-sns
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.djl.DJLComponent
-    camel-quarkus-mustache:
+      - org.apache.camel.component.aws2.sns.Sns2Component
+    camel-quarkus-jsonb:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-mustache
+      artifactId: camel-quarkus-jsonb
+      dataformats:
+      - json-jsonb
+      javaTypes:
+      - org.apache.camel.component.jsonb.JsonbDataFormat
+    camel-quarkus-nsq:
+      groupId: org.apache.camel.quarkus
+      artifactId: camel-quarkus-nsq
       schemes:
-      - id: mustache
+      - id: nsq
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.mustache.MustacheComponent
-    camel-quarkus-master:
+      - org.apache.camel.component.nsq.NsqComponent
+    camel-quarkus-xpath:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-master
+      artifactId: camel-quarkus-xpath
+      languages:
+      - xpath
+      javaTypes:
+      - org.apache.camel.language.xpath.XPathLanguage
+    camel-quarkus-facebook:
+      groupId: org.apache.camel.quarkus
+      artifactId: camel-quarkus-facebook
       schemes:
-      - id: master
+      - id: facebook
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.master.MasterComponent
-    camel-k-master:
-      groupId: org.apache.camel.k
-      artifactId: camel-k-master
+      - org.apache.camel.component.facebook.FacebookComponent
+    camel-quarkus-ognl:
+      groupId: org.apache.camel.quarkus
+      artifactId: camel-quarkus-ognl
+      languages:
+      - ognl
+      javaTypes:
+      - org.apache.camel.language.ognl.OgnlLanguage
+    camel-quarkus-consul:
+      groupId: org.apache.camel.quarkus
+      artifactId: camel-quarkus-consul
       schemes:
-      - id: master
+      - id: consul
         http: false
         passive: false
-    camel-quarkus-aws2-ec2:
+      javaTypes:
+      - org.apache.camel.component.consul.ConsulComponent
+    camel-quarkus-jdbc:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-aws2-ec2
+      artifactId: camel-quarkus-jdbc
       schemes:
-      - id: aws2-ec2
+      - id: jdbc
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.aws2.ec2.AWS2EC2Component
-    camel-quarkus-snmp:
+      - org.apache.camel.component.jdbc.JdbcComponent
+    camel-quarkus-vertx:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-snmp
+      artifactId: camel-quarkus-vertx
       schemes:
-      - id: snmp
+      - id: vertx
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.snmp.SnmpComponent
-    camel-quarkus-barcode:
+      - org.apache.camel.component.vertx.VertxComponent
+    camel-quarkus-controlbus:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-barcode
-      dataformats:
-      - barcode
+      artifactId: camel-quarkus-controlbus
+      schemes:
+      - id: controlbus
+        http: false
+        passive: true
       javaTypes:
-      - org.apache.camel.dataformat.barcode.BarcodeDataFormat
-    camel-quarkus-openstack:
+      - org.apache.camel.component.controlbus.ControlBusComponent
+    camel-quarkus-weka:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-openstack
+      artifactId: camel-quarkus-weka
       schemes:
-      - id: openstack-glance
+      - id: weka
         http: false
         passive: false
-      - id: openstack-nova
+      javaTypes:
+      - org.apache.camel.component.weka.WekaComponent
+    camel-quarkus-iec60870:
+      groupId: org.apache.camel.quarkus
+      artifactId: camel-quarkus-iec60870
+      schemes:
+      - id: iec60870-client
         http: false
         passive: false
-      - id: openstack-cinder
+      - id: iec60870-server
         http: false
         passive: false
-      - id: openstack-keystone
+      javaTypes:
+      - org.apache.camel.component.iec60870.server.ServerComponent
+      - org.apache.camel.component.iec60870.client.ClientComponent
+    camel-quarkus-mock:
+      groupId: org.apache.camel.quarkus
+      artifactId: camel-quarkus-mock
+      schemes:
+      - id: mock
         http: false
-        passive: false
-      - id: openstack-neutron
+        passive: true
+      javaTypes:
+      - org.apache.camel.component.mock.MockComponent
+    camel-quarkus-aws2-ddb:
+      groupId: org.apache.camel.quarkus
+      artifactId: camel-quarkus-aws2-ddb
+      schemes:
+      - id: aws2-ddbstream
         http: false
         passive: false
-      - id: openstack-swift
+      - id: aws2-ddb
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.openstack.swift.SwiftComponent
-      - org.apache.camel.component.openstack.nova.NovaComponent
-      - org.apache.camel.component.openstack.cinder.CinderComponent
-      - org.apache.camel.component.openstack.keystone.KeystoneComponent
-      - org.apache.camel.component.openstack.neutron.NeutronComponent
-      - org.apache.camel.component.openstack.glance.GlanceComponent
-    camel-quarkus-aws-kinesis:
+      - org.apache.camel.component.aws2.ddbstream.Ddb2StreamComponent
+      - org.apache.camel.component.aws2.ddb.Ddb2Component
+    camel-quarkus-jpa:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-aws-kinesis
+      artifactId: camel-quarkus-jpa
       schemes:
-      - id: aws-kinesis
+      - id: jpa
         http: false
         passive: false
-      - id: aws-kinesis-firehose
+      javaTypes:
+      - org.apache.camel.component.jpa.JpaComponent
+    camel-quarkus-pulsar:
+      groupId: org.apache.camel.quarkus
+      artifactId: camel-quarkus-pulsar
+      schemes:
+      - id: pulsar
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.aws.firehose.KinesisFirehoseComponent
-      - org.apache.camel.component.aws.kinesis.KinesisComponent
-    camel-quarkus-git:
+      - org.apache.camel.component.pulsar.PulsarComponent
+    camel-quarkus-guava-eventbus:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-git
+      artifactId: camel-quarkus-guava-eventbus
       schemes:
-      - id: git
+      - id: guava-eventbus
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.git.GitComponent
-    camel-quarkus-servlet:
+      - org.apache.camel.component.guava.eventbus.GuavaEventBusComponent
+    camel-quarkus-amqp:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-servlet
+      artifactId: camel-quarkus-amqp
       schemes:
-      - id: servlet
-        http: true
+      - id: amqp
+        http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.servlet.ServletComponent
-    camel-quarkus-freemarker:
+      - org.apache.camel.component.amqp.AMQPComponent
+    camel-quarkus-flink:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-freemarker
+      artifactId: camel-quarkus-flink
       schemes:
-      - id: freemarker
+      - id: flink
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.freemarker.FreemarkerComponent
-    camel-quarkus-soap:
+      - org.apache.camel.component.flink.FlinkComponent
+    camel-quarkus-debezium-postgres:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-soap
-      dataformats:
-      - soapjaxb
+      artifactId: camel-quarkus-debezium-postgres
+      schemes:
+      - id: debezium-postgres
+        http: false
+        passive: false
       javaTypes:
-      - org.apache.camel.dataformat.soap.SoapJaxbDataFormat
-    camel-quarkus-arangodb:
+      - org.apache.camel.component.debezium.DebeziumPostgresComponent
+    camel-quarkus-aws-iam:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-arangodb
+      artifactId: camel-quarkus-aws-iam
       schemes:
-      - id: arangodb
+      - id: aws-iam
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.arangodb.ArangoDbComponent
-    camel-quarkus-google-mail:
+      - org.apache.camel.component.aws.iam.IAMComponent
+    camel-quarkus-syslog:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-google-mail
+      artifactId: camel-quarkus-syslog
+      dataformats:
+      - syslog
+      javaTypes:
+      - org.apache.camel.component.syslog.SyslogDataFormat
+    camel-quarkus-smpp:
+      groupId: org.apache.camel.quarkus
+      artifactId: camel-quarkus-smpp
       schemes:
-      - id: google-mail
+      - id: smpp
         http: false
         passive: false
-      - id: google-mail-stream
+      - id: smpps
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.google.mail.stream.GoogleMailStreamComponent
-      - org.apache.camel.component.google.mail.GoogleMailComponent
-    camel-quarkus-websocket-jsr356:
+      - org.apache.camel.component.smpp.SmppComponent
+    camel-quarkus-zip-deflater:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-websocket-jsr356
+      artifactId: camel-quarkus-zip-deflater
+      dataformats:
+      - zipdeflater
+      - gzipdeflater
+      javaTypes:
+      - org.apache.camel.dataformat.deflater.GzipDeflaterDataFormat
+      - org.apache.camel.dataformat.deflater.ZipDeflaterDataFormat
+    camel-quarkus-workday:
+      groupId: org.apache.camel.quarkus
+      artifactId: camel-quarkus-workday
       schemes:
-      - id: websocket-jsr356
+      - id: workday
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.websocket.jsr356.JSR356WebSocketComponent
-    camel-quarkus-lumberjack:
+      - org.apache.camel.component.workday.WorkdayComponent
+    camel-quarkus-couchdb:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-lumberjack
+      artifactId: camel-quarkus-couchdb
       schemes:
-      - id: lumberjack
+      - id: couchdb
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.lumberjack.LumberjackComponent
-    camel-quarkus-json-validator:
+      - org.apache.camel.component.couchdb.CouchDbComponent
+    camel-quarkus-grok:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-json-validator
+      artifactId: camel-quarkus-grok
+      dataformats:
+      - grok
+      javaTypes:
+      - org.apache.camel.component.grok.GrokDataFormat
+    camel-quarkus-aws-s3:
+      groupId: org.apache.camel.quarkus
+      artifactId: camel-quarkus-aws-s3
       schemes:
-      - id: json-validator
+      - id: aws-s3
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.jsonvalidator.JsonValidatorComponent
-    camel-quarkus-aws2-s3:
+      - org.apache.camel.component.aws.s3.S3Component
+    camel-quarkus-bean:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-aws2-s3
+      artifactId: camel-quarkus-bean
       schemes:
-      - id: aws2-s3
+      - id: bean
         http: false
-        passive: false
+        passive: true
+      - id: class
+        http: false
+        passive: true
+      languages:
+      - bean
       javaTypes:
-      - org.apache.camel.component.aws2.s3.AWS2S3Component
-    camel-quarkus-dropbox:
+      - org.apache.camel.language.bean.BeanLanguage
+      - org.apache.camel.component.bean.BeanComponent
+      - org.apache.camel.component.beanclass.ClassComponent
+    camel-quarkus-direct:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-dropbox
+      artifactId: camel-quarkus-direct
       schemes:
-      - id: dropbox
+      - id: direct
         http: false
-        passive: false
+        passive: true
       javaTypes:
-      - org.apache.camel.component.dropbox.DropboxComponent
-    camel-quarkus-google-bigquery:
+      - org.apache.camel.component.direct.DirectComponent
+    camel-quarkus-xj:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-google-bigquery
+      artifactId: camel-quarkus-xj
       schemes:
-      - id: google-bigquery
-        http: false
-        passive: false
-      - id: google-bigquery-sql
+      - id: xj
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.google.bigquery.sql.GoogleBigQuerySQLComponent
-      - org.apache.camel.component.google.bigquery.GoogleBigQueryComponent
-    camel-quarkus-mail:
+      - org.apache.camel.component.xj.XJComponent
+    camel-quarkus-fastjson:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-mail
+      artifactId: camel-quarkus-fastjson
+      dataformats:
+      - json-fastjson
+      javaTypes:
+      - org.apache.camel.component.fastjson.FastjsonDataFormat
+    camel-quarkus-snakeyaml:
+      groupId: org.apache.camel.quarkus
+      artifactId: camel-quarkus-snakeyaml
+      dataformats:
+      - yaml-snakeyaml
+      javaTypes:
+      - org.apache.camel.component.snakeyaml.SnakeYAMLDataFormat
+    camel-quarkus-debezium-sqlserver:
+      groupId: org.apache.camel.quarkus
+      artifactId: camel-quarkus-debezium-sqlserver
       schemes:
-      - id: pop3s
-        http: false
-        passive: false
-      - id: smtps
-        http: false
-        passive: false
-      - id: pop3
-        http: false
-        passive: false
-      - id: smtp
-        http: false
-        passive: false
-      - id: imaps
-        http: false
-        passive: false
-      - id: imap
+      - id: debezium-sqlserver
         http: false
         passive: false
-      dataformats:
-      - mime-multipart
       javaTypes:
-      - org.apache.camel.dataformat.mime.multipart.MimeMultipartDataFormat
-      - org.apache.camel.component.mail.MailComponent
-    camel-quarkus-platform-http:
+      - org.apache.camel.component.debezium.DebeziumSqlserverComponent
+    camel-quarkus-aws2-msk:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-platform-http
+      artifactId: camel-quarkus-aws2-msk
       schemes:
-      - id: platform-http
-        http: true
+      - id: aws2-msk
+        http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.platform.http.PlatformHttpComponent
-    camel-quarkus-timer:
+      - org.apache.camel.component.aws2.msk.MSK2Component
+    camel-quarkus-stax:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-timer
+      artifactId: camel-quarkus-stax
       schemes:
-      - id: timer
+      - id: stax
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.timer.TimerComponent
-    camel-quarkus-digitalocean:
+      - org.apache.camel.component.stax.StAXComponent
+    camel-quarkus-aws-kms:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-digitalocean
+      artifactId: camel-quarkus-aws-kms
       schemes:
-      - id: digitalocean
+      - id: aws-kms
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.digitalocean.DigitalOceanComponent
-    camel-quarkus-couchbase:
+      - org.apache.camel.component.aws.kms.KMSComponent
+    camel-quarkus-ipfs:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-couchbase
+      artifactId: camel-quarkus-ipfs
       schemes:
-      - id: couchbase
+      - id: ipfs
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.couchbase.CouchbaseComponent
-    camel-quarkus-aws-sns:
+      - org.apache.camel.component.ipfs.IPFSComponent
+    camel-quarkus-grpc:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-aws-sns
+      artifactId: camel-quarkus-grpc
       schemes:
-      - id: aws-sns
-        http: false
+      - id: grpc
+        http: true
         passive: false
       javaTypes:
-      - org.apache.camel.component.aws.sns.SnsComponent
-    camel-quarkus-slack:
+      - org.apache.camel.component.grpc.GrpcComponent
+    camel-quarkus-servicenow:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-slack
+      artifactId: camel-quarkus-servicenow
       schemes:
-      - id: slack
+      - id: servicenow
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.slack.SlackComponent
-    camel-quarkus-flatpack:
+      - org.apache.camel.component.servicenow.ServiceNowComponent
+    camel-quarkus-sap-netweaver:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-flatpack
+      artifactId: camel-quarkus-sap-netweaver
       schemes:
-      - id: flatpack
+      - id: sap-netweaver
         http: false
         passive: false
-      dataformats:
-      - flatpack
       javaTypes:
-      - org.apache.camel.component.flatpack.FlatpackComponent
-      - org.apache.camel.dataformat.flatpack.FlatpackDataFormat
-    camel-quarkus-zipfile:
+      - org.apache.camel.component.sap.netweaver.NetWeaverComponent
+    camel-quarkus-aws-sdb:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-zipfile
-      dataformats:
-      - zipfile
+      artifactId: camel-quarkus-aws-sdb
+      schemes:
+      - id: aws-sdb
+        http: false
+        passive: false
       javaTypes:
-      - org.apache.camel.dataformat.zipfile.ZipFileDataFormat
-    camel-quarkus-aws2-ecs:
+      - org.apache.camel.component.aws.sdb.SdbComponent
+    camel-quarkus-hbase:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-aws2-ecs
+      artifactId: camel-quarkus-hbase
       schemes:
-      - id: aws2-ecs
+      - id: hbase
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.aws2.ecs.ECS2Component
-    camel-quarkus-netty-http:
+      - org.apache.camel.component.hbase.HBaseComponent
+    camel-quarkus-yammer:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-netty-http
+      artifactId: camel-quarkus-yammer
       schemes:
-      - id: netty-http
-        http: true
+      - id: yammer
+        http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.netty.http.NettyHttpComponent
-    camel-quarkus-influxdb:
+      - org.apache.camel.component.yammer.YammerComponent
+    camel-quarkus-jgroups:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-influxdb
+      artifactId: camel-quarkus-jgroups
       schemes:
-      - id: influxdb
+      - id: jgroups
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.influxdb.InfluxDbComponent
-    camel-k-kamelet:
-      groupId: org.apache.camel.k
-      artifactId: camel-k-kamelet
+      - org.apache.camel.component.jgroups.JGroupsComponent
+    camel-quarkus-dataformat:
+      groupId: org.apache.camel.quarkus
+      artifactId: camel-quarkus-dataformat
       schemes:
-      - id: kamelet
+      - id: dataformat
         http: false
         passive: true
-    camel-quarkus-tagsoup:
+      javaTypes:
+      - org.apache.camel.component.dataformat.DataFormatComponent
+    camel-quarkus-jing:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-tagsoup
-      dataformats:
-      - tidyMarkup
+      artifactId: camel-quarkus-jing
+      schemes:
+      - id: jing
+        http: false
+        passive: false
       javaTypes:
-      - org.apache.camel.dataformat.tagsoup.TidyMarkupDataFormat
-    camel-quarkus-protobuf:
+      - org.apache.camel.component.validator.jing.JingComponent
+    camel-quarkus-jaxb:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-protobuf
+      artifactId: camel-quarkus-jaxb
       dataformats:
-      - protobuf
+      - jaxb
       javaTypes:
-      - org.apache.camel.dataformat.protobuf.ProtobufDataFormat
-    camel-quarkus-azure-storage-blob:
+      - org.apache.camel.converter.jaxb.JaxbDataFormat
+    camel-quarkus-scheduler:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-azure-storage-blob
+      artifactId: camel-quarkus-scheduler
       schemes:
-      - id: azure-storage-blob
+      - id: scheduler
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.azure.storage.blob.BlobComponent
-    camel-quarkus-asterisk:
+      - org.apache.camel.component.scheduler.SchedulerComponent
+    camel-quarkus-weather:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-asterisk
+      artifactId: camel-quarkus-weather
       schemes:
-      - id: asterisk
+      - id: weather
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.asterisk.AsteriskComponent
-    camel-quarkus-microprofile-metrics:
+      - org.apache.camel.component.weather.WeatherComponent
+    camel-quarkus-aws2-eks:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-microprofile-metrics
+      artifactId: camel-quarkus-aws2-eks
       schemes:
-      - id: microprofile-metrics
+      - id: aws2-eks
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.microprofile.metrics.MicroProfileMetricsComponent
-    camel-quarkus-nats:
+      - org.apache.camel.component.aws2.eks.EKS2Component
+    camel-quarkus-jsonapi:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-nats
-      schemes:
-      - id: nats
-        http: false
-        passive: false
+      artifactId: camel-quarkus-jsonapi
+      dataformats:
+      - jsonApi
       javaTypes:
-      - org.apache.camel.component.nats.NatsComponent
-    camel-quarkus-infinispan:
+      - org.apache.camel.component.jsonapi.JsonApiDataFormat
+    camel-quarkus-iota:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-infinispan
+      artifactId: camel-quarkus-iota
       schemes:
-      - id: infinispan
+      - id: iota
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.infinispan.InfinispanComponent
-    camel-quarkus-base64:
-      groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-base64
-      dataformats:
-      - base64
-      javaTypes:
-      - org.apache.camel.dataformat.base64.Base64DataFormat
-    camel-quarkus-exec:
+      - org.apache.camel.component.iota.IOTAComponent
+    camel-quarkus-jt400:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-exec
+      artifactId: camel-quarkus-jt400
       schemes:
-      - id: exec
+      - id: jt400
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.exec.ExecComponent
-    camel-quarkus-rss:
+      - org.apache.camel.component.jt400.Jt400Component
+    camel-quarkus-aws2-sqs:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-rss
+      artifactId: camel-quarkus-aws2-sqs
       schemes:
-      - id: rss
+      - id: aws2-sqs
         http: false
         passive: false
-      dataformats:
-      - rss
       javaTypes:
-      - org.apache.camel.component.rss.RssComponent
-      - org.apache.camel.dataformat.rss.RssDataFormat
-    camel-quarkus-gson:
+      - org.apache.camel.component.aws2.sqs.Sqs2Component
+    camel-quarkus-stub:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-gson
-      dataformats:
-      - json-gson
+      artifactId: camel-quarkus-stub
+      schemes:
+      - id: stub
+        http: false
+        passive: true
       javaTypes:
-      - org.apache.camel.component.gson.GsonDataFormat
-    camel-quarkus-geocoder:
+      - org.apache.camel.component.stub.StubComponent
+    camel-quarkus-pubnub:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-geocoder
+      artifactId: camel-quarkus-pubnub
       schemes:
-      - id: geocoder
+      - id: pubnub
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.geocoder.GeoCoderComponent
-    camel-quarkus-pgevent:
+      - org.apache.camel.component.pubnub.PubNubComponent
+    camel-quarkus-aws-swf:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-pgevent
+      artifactId: camel-quarkus-aws-swf
       schemes:
-      - id: pgevent
+      - id: aws-swf
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.pgevent.PgEventComponent
-    camel-quarkus-atom:
+      - org.apache.camel.component.aws.swf.SWFComponent
+    camel-quarkus-twitter:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-atom
+      artifactId: camel-quarkus-twitter
       schemes:
-      - id: atom
+      - id: twitter-directmessage
+        http: false
+        passive: false
+      - id: twitter-timeline
+        http: false
+        passive: false
+      - id: twitter-search
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.atom.AtomComponent
-    camel-quarkus-soroush:
+      - org.apache.camel.component.twitter.directmessage.TwitterDirectMessageComponent
+      - org.apache.camel.component.twitter.search.TwitterSearchComponent
+      - org.apache.camel.component.twitter.timeline.TwitterTimelineComponent
+    camel-quarkus-aws2-kinesis:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-soroush
+      artifactId: camel-quarkus-aws2-kinesis
       schemes:
-      - id: soroush
+      - id: aws2-kinesis-firehose
+        http: false
+        passive: false
+      - id: aws2-kinesis
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.soroushbot.component.SoroushBotComponent
-    camel-quarkus-drill:
+      - org.apache.camel.component.aws2.firehose.KinesisFirehose2Component
+      - org.apache.camel.component.aws2.kinesis.Kinesis2Component
+    camel-quarkus-ganglia:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-drill
+      artifactId: camel-quarkus-ganglia
       schemes:
-      - id: drill
+      - id: ganglia
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.drill.DrillComponent
-    camel-quarkus-cometd:
+      - org.apache.camel.component.ganglia.GangliaComponent
+    camel-quarkus-telegram:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-cometd
+      artifactId: camel-quarkus-telegram
       schemes:
-      - id: cometd
-        http: false
-        passive: false
-      - id: cometds
+      - id: telegram
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.cometd.CometdComponent
-    camel-quarkus-chunk:
+      - org.apache.camel.component.telegram.TelegramComponent
+    camel-quarkus-http:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-chunk
+      artifactId: camel-quarkus-http
       schemes:
-      - id: chunk
+      - id: http
+        http: false
+        passive: false
+      - id: https
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.chunk.ChunkComponent
-    camel-k-webhook:
-      groupId: org.apache.camel.k
-      artifactId: camel-k-webhook
-      schemes:
-      - id: webhook
-        http: true
-        passive: true
-    camel-quarkus-dns:
+      - org.apache.camel.component.http.HttpComponent
+    camel-quarkus-jolt:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-dns
+      artifactId: camel-quarkus-jolt
       schemes:
-      - id: dns
+      - id: jolt
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.dns.DnsComponent
-    camel-quarkus-mongodb:
+      - org.apache.camel.component.jolt.JoltComponent
+    camel-quarkus-netty:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-mongodb
+      artifactId: camel-quarkus-netty
       schemes:
-      - id: mongodb
+      - id: netty
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.mongodb.MongoDbComponent
-    camel-quarkus-jgroups-raft:
+      - org.apache.camel.component.netty.NettyComponent
+    camel-quarkus-micrometer:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-jgroups-raft
+      artifactId: camel-quarkus-micrometer
       schemes:
-      - id: jgroups-raft
+      - id: micrometer
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.jgroups.raft.JGroupsRaftComponent
-    camel-quarkus-cassandraql:
+      - org.apache.camel.component.micrometer.MicrometerComponent
+    camel-quarkus-elsql:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-cassandraql
+      artifactId: camel-quarkus-elsql
       schemes:
-      - id: cql
+      - id: elsql
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.cassandra.CassandraComponent
-    camel-quarkus-ical:
+      - org.apache.camel.component.elsql.ElsqlComponent
+    camel-quarkus-cbor:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-ical
+      artifactId: camel-quarkus-cbor
       dataformats:
-      - ical
+      - cbor
       javaTypes:
-      - org.apache.camel.component.ical.ICalDataFormat
-    camel-quarkus-sjms:
+      - org.apache.camel.component.cbor.CBORDataFormat
+    camel-quarkus-mybatis:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-sjms
+      artifactId: camel-quarkus-mybatis
       schemes:
-      - id: sjms-batch
+      - id: mybatis
         http: false
         passive: false
-      - id: sjms
+      - id: mybatis-bean
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.sjms.SjmsComponent
-      - org.apache.camel.component.sjms.batch.SjmsBatchComponent
-    camel-quarkus-google-drive:
+      - org.apache.camel.component.mybatis.MyBatisBeanComponent
+      - org.apache.camel.component.mybatis.MyBatisComponent
+    camel-quarkus-file:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-google-drive
+      artifactId: camel-quarkus-file
       schemes:
-      - id: google-drive
+      - id: file
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.google.drive.GoogleDriveComponent
-    camel-quarkus-splunk:
+      - org.apache.camel.component.file.FileComponent
+    camel-quarkus-robotframework:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-splunk
+      artifactId: camel-quarkus-robotframework
       schemes:
-      - id: splunk
+      - id: robotframework
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.splunk.SplunkComponent
-    camel-quarkus-dozer:
+      - org.apache.camel.component.robotframework.RobotFrameworkComponent
+    camel-quarkus-file-watch:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-dozer
+      artifactId: camel-quarkus-file-watch
       schemes:
-      - id: dozer
+      - id: file-watch
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.dozer.DozerComponent
-    camel-quarkus-aws-eks:
+      - org.apache.camel.component.file.watch.FileWatchComponent
+    camel-quarkus-rest-openapi:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-aws-eks
+      artifactId: camel-quarkus-rest-openapi
       schemes:
-      - id: aws-eks
+      - id: rest-openapi
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.aws.eks.EKSComponent
-    camel-quarkus-seda:
+      - org.apache.camel.component.rest.openapi.RestOpenApiComponent
+    camel-quarkus-jclouds:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-seda
+      artifactId: camel-quarkus-jclouds
       schemes:
-      - id: seda
+      - id: jclouds
         http: false
-        passive: true
+        passive: false
       javaTypes:
-      - org.apache.camel.component.seda.SedaComponent
-    camel-quarkus-nitrite:
+      - org.apache.camel.component.jclouds.JcloudsComponent
+    camel-quarkus-quickfix:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-nitrite
+      artifactId: camel-quarkus-quickfix
       schemes:
-      - id: nitrite
+      - id: quickfix
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.nitrite.NitriteComponent
-    camel-quarkus-activemq:
+      - org.apache.camel.component.quickfixj.QuickfixjComponent
+    camel-quarkus-solr:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-activemq
+      artifactId: camel-quarkus-solr
       schemes:
-      - id: activemq
+      - id: solr
         http: false
         passive: false
-      javaTypes:
-      - org.apache.camel.component.activemq.ActiveMQComponent
-    camel-quarkus-twilio:
-      groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-twilio
-      schemes:
-      - id: twilio
+      - id: solrs
         http: false
         passive: false
-      javaTypes:
-      - org.apache.camel.component.twilio.TwilioComponent
-    camel-quarkus-zendesk:
-      groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-zendesk
-      schemes:
-      - id: zendesk
+      - id: solrCloud
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.zendesk.ZendeskComponent
-    camel-quarkus-braintree:
+      - org.apache.camel.component.solr.SolrComponent
+    camel-quarkus-johnzon:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-braintree
-      schemes:
-      - id: braintree
-        http: false
-        passive: false
+      artifactId: camel-quarkus-johnzon
+      dataformats:
+      - json-johnzon
       javaTypes:
-      - org.apache.camel.component.braintree.BraintreeComponent
-    camel-quarkus-aws-sqs:
+      - org.apache.camel.component.johnzon.JohnzonDataFormat
+    camel-quarkus-fop:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-aws-sqs
+      artifactId: camel-quarkus-fop
       schemes:
-      - id: aws-sqs
+      - id: fop
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.aws.sqs.SqsComponent
-    camel-quarkus-olingo4:
+      - org.apache.camel.component.fop.FopComponent
+    camel-quarkus-saga:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-olingo4
+      artifactId: camel-quarkus-saga
       schemes:
-      - id: olingo4
+      - id: saga
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.olingo4.Olingo4Component
-    camel-quarkus-zookeeper:
+      - org.apache.camel.component.saga.SagaComponent
+    camel-quarkus-beanstalk:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-zookeeper
+      artifactId: camel-quarkus-beanstalk
       schemes:
-      - id: zookeeper
+      - id: beanstalk
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.zookeeper.ZooKeeperComponent
-    camel-quarkus-sjms2:
+      - org.apache.camel.component.beanstalk.BeanstalkComponent
+    camel-quarkus-xslt:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-sjms2
+      artifactId: camel-quarkus-xslt
       schemes:
-      - id: sjms2
+      - id: xslt
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.sjms2.Sjms2Component
-    camel-quarkus-ldap:
+      - org.apache.camel.component.xslt.XsltComponent
+    camel-quarkus-rest:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-ldap
+      artifactId: camel-quarkus-rest
       schemes:
-      - id: ldap
+      - id: rest-api
         http: false
         passive: false
+      - id: rest
+        http: true
+        passive: false
       javaTypes:
-      - org.apache.camel.component.ldap.LdapComponent
-    camel-quarkus-xchange:
+      - org.apache.camel.component.rest.RestApiComponent
+      - org.apache.camel.component.rest.RestComponent
+    camel-quarkus-groovy:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-xchange
+      artifactId: camel-quarkus-groovy
+      languages:
+      - groovy
+      javaTypes:
+      - org.apache.camel.language.groovy.GroovyLanguage
+    camel-quarkus-xmlsecurity:
+      groupId: org.apache.camel.quarkus
+      artifactId: camel-quarkus-xmlsecurity
       schemes:
-      - id: xchange
+      - id: xmlsecurity-sign
+        http: false
+        passive: false
+      - id: xmlsecurity-verify
         http: false
         passive: false
+      dataformats:
+      - secureXML
       javaTypes:
-      - org.apache.camel.component.xchange.XChangeComponent
-    camel-k-kamelet-reify:
-      groupId: org.apache.camel.k
-      artifactId: camel-k-kamelet-reify
+      - org.apache.camel.dataformat.xmlsecurity.XMLSecurityDataFormat
+      - org.apache.camel.component.xmlsecurity.XmlVerifierComponent
+      - org.apache.camel.component.xmlsecurity.XmlSignerComponent
+    camel-quarkus-azure:
+      groupId: org.apache.camel.quarkus
+      artifactId: camel-quarkus-azure
       schemes:
-      - id: wrap
+      - id: azure-queue
+        http: false
+        passive: false
+      - id: azure-blob
         http: false
         passive: false
-    camel-quarkus-atmos:
+      javaTypes:
+      - org.apache.camel.component.azure.blob.BlobServiceComponent
+      - org.apache.camel.component.azure.queue.QueueServiceComponent
+    camel-quarkus-aws-translate:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-atmos
+      artifactId: camel-quarkus-aws-translate
       schemes:
-      - id: atmos
+      - id: aws-translate
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.atmos.AtmosComponent
-    camel-quarkus-as2:
+      - org.apache.camel.component.aws.translate.TranslateComponent
+    camel-quarkus-chatscript:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-as2
+      artifactId: camel-quarkus-chatscript
       schemes:
-      - id: as2
+      - id: chatscript
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.as2.AS2Component
-    camel-quarkus-etcd:
+      - org.apache.camel.component.chatscript.ChatScriptComponent
+    camel-quarkus-rabbitmq:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-etcd
+      artifactId: camel-quarkus-rabbitmq
       schemes:
-      - id: etcd-keys
-        http: false
-        passive: false
-      - id: etcd-stats
-        http: false
-        passive: false
-      - id: etcd-watch
+      - id: rabbitmq
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.etcd.EtcdStatsComponent
-      - org.apache.camel.component.etcd.EtcdKeysComponent
-      - org.apache.camel.component.etcd.EtcdWatchComponent
-    camel-quarkus-quartz:
+      - org.apache.camel.component.rabbitmq.RabbitMQComponent
+    camel-quarkus-reactive-streams:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-quartz
+      artifactId: camel-quarkus-reactive-streams
       schemes:
-      - id: quartz
+      - id: reactive-streams
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.quartz.QuartzComponent
-    camel-quarkus-pg-replication-slot:
+      - org.apache.camel.component.reactive.streams.ReactiveStreamsComponent
+    camel-quarkus-azure-storage-queue:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-pg-replication-slot
+      artifactId: camel-quarkus-azure-storage-queue
       schemes:
-      - id: pg-replication-slot
+      - id: azure-storage-queue
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.pg.replication.slot.PgReplicationSlotComponent
-    camel-quarkus-jms:
+      - org.apache.camel.component.azure.storage.queue.QueueComponent
+    camel-quarkus-cron:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-jms
+      artifactId: camel-quarkus-cron
       schemes:
-      - id: jms
+      - id: cron
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.jms.JmsComponent
-    camel-quarkus-thrift:
+      - org.apache.camel.component.cron.CronComponent
+    camel-quarkus-mongodb-gridfs:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-thrift
+      artifactId: camel-quarkus-mongodb-gridfs
       schemes:
-      - id: thrift
+      - id: mongodb-gridfs
         http: false
         passive: false
-      dataformats:
-      - thrift
       javaTypes:
-      - org.apache.camel.component.thrift.ThriftComponent
-      - org.apache.camel.dataformat.thrift.ThriftDataFormat
-    camel-quarkus-sip:
+      - org.apache.camel.component.mongodb.gridfs.GridFsComponent
+    camel-quarkus-ignite:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-sip
+      artifactId: camel-quarkus-ignite
       schemes:
-      - id: sip
+      - id: ignite-compute
         http: false
         passive: false
-      - id: sips
+      - id: ignite-cache
         http: false
         passive: false
-      javaTypes:
-      - org.apache.camel.component.sip.SipComponent
-    camel-quarkus-aws2-cw:
-      groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-aws2-cw
-      schemes:
-      - id: aws2-cw
+      - id: ignite-idgen
         http: false
         passive: false
-      javaTypes:
-      - org.apache.camel.component.aws2.cw.Cw2Component
-    camel-quarkus-asn1:
-      groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-asn1
-      dataformats:
-      - asn1
-      javaTypes:
-      - org.apache.camel.dataformat.asn1.ASN1DataFormat
-    camel-quarkus-schematron:
-      groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-schematron
-      schemes:
-      - id: schematron
+      - id: ignite-set
+        http: false
+        passive: false
+      - id: ignite-queue
+        http: false
+        passive: false
+      - id: ignite-events
+        http: false
+        passive: false
+      - id: ignite-messaging
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.schematron.SchematronComponent
-    camel-quarkus-language:
+      - org.apache.camel.component.ignite.events.IgniteEventsComponent
+      - org.apache.camel.component.ignite.compute.IgniteComputeComponent
+      - org.apache.camel.component.ignite.queue.IgniteQueueComponent
+      - org.apache.camel.component.ignite.messaging.IgniteMessagingComponent
+      - org.apache.camel.component.ignite.set.IgniteSetComponent
+      - org.apache.camel.component.ignite.idgen.IgniteIdGenComponent
+      - org.apache.camel.component.ignite.cache.IgniteCacheComponent
+    camel-quarkus-web3j:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-language
+      artifactId: camel-quarkus-web3j
       schemes:
-      - id: language
+      - id: web3j
         http: false
-        passive: true
-      javaTypes:
-      - org.apache.camel.component.language.LanguageComponent
-    camel-k-knative:
-      groupId: org.apache.camel.k
-      artifactId: camel-k-knative
-      schemes:
-      - id: knative
-        http: true
         passive: false
-        producer:
-          dependencies:
-          - groupId: org.apache.camel.k
-            artifactId: camel-k-knative-producer
-        consumer:
-          dependencies:
-          - groupId: org.apache.camel.k
-            artifactId: camel-k-knative-consumer
-    camel-quarkus-zookeeper-master:
+      javaTypes:
+      - org.apache.camel.component.web3j.Web3jComponent
+    camel-quarkus-aws-ec2:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-zookeeper-master
+      artifactId: camel-quarkus-aws-ec2
       schemes:
-      - id: zookeeper-master
+      - id: aws-ec2
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.zookeepermaster.MasterComponent
-    camel-quarkus-jacksonxml:
-      groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-jacksonxml
-      dataformats:
-      - jacksonxml
-      javaTypes:
-      - org.apache.camel.component.jacksonxml.JacksonXMLDataFormat
-    camel-quarkus-debezium-mongodb:
+      - org.apache.camel.component.aws.ec2.EC2Component
+    camel-quarkus-ldif:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-debezium-mongodb
+      artifactId: camel-quarkus-ldif
       schemes:
-      - id: debezium-mongodb
+      - id: ldif
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.debezium.DebeziumMongodbComponent
-    camel-quarkus-xstream:
+      - org.apache.camel.component.ldif.LdifComponent
+    camel-quarkus-xml-jaxp:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-xstream
-      dataformats:
-      - xstream
-      - json-xstream
+      artifactId: camel-quarkus-xml-jaxp
+      languages:
+      - xtokenize
       javaTypes:
-      - org.apache.camel.dataformat.xstream.JsonDataFormat
-      - org.apache.camel.dataformat.xstream.XStreamDataFormat
-    camel-quarkus-optaplanner:
+      - org.apache.camel.language.xtokenizer.XMLTokenizeLanguage
+    camel-quarkus-corda:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-optaplanner
+      artifactId: camel-quarkus-corda
       schemes:
-      - id: optaplanner
+      - id: corda
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.optaplanner.OptaPlannerComponent
-    camel-quarkus-apns:
+      - org.apache.camel.component.corda.CordaComponent
+    camel-quarkus-github:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-apns
+      artifactId: camel-quarkus-github
       schemes:
-      - id: apns
+      - id: github
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.apns.ApnsComponent
-    camel-quarkus-jslt:
+      - org.apache.camel.component.github.GitHubComponent
+    camel-quarkus-aws2-eventbridge:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-jslt
+      artifactId: camel-quarkus-aws2-eventbridge
       schemes:
-      - id: jslt
+      - id: aws2-eventbridge
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.jslt.JsltComponent
-    camel-quarkus-bindy:
-      groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-bindy
-      dataformats:
-      - bindy-kvp
-      - bindy-fixed
-      - bindy-csv
-      javaTypes:
-      - org.apache.camel.dataformat.bindy.fixed.BindyFixedLengthDataFormat
-      - org.apache.camel.dataformat.bindy.csv.BindyCsvDataFormat
-      - org.apache.camel.dataformat.bindy.kvp.BindyKeyValuePairDataFormat
-    camel-quarkus-vm:
+      - org.apache.camel.component.aws2.eventbridge.EventbridgeComponent
+    camel-quarkus-xmpp:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-vm
+      artifactId: camel-quarkus-xmpp
       schemes:
-      - id: vm
+      - id: xmpp
         http: false
-        passive: true
+        passive: false
       javaTypes:
-      - org.apache.camel.component.vm.VmComponent
-    camel-quarkus-paho:
+      - org.apache.camel.component.xmpp.XmppComponent
+    camel-quarkus-aws-lambda:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-paho
+      artifactId: camel-quarkus-aws-lambda
       schemes:
-      - id: paho
+      - id: aws-lambda
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.paho.PahoComponent
-    camel-quarkus-lzf:
-      groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-lzf
-      dataformats:
-      - lzf
-      javaTypes:
-      - org.apache.camel.dataformat.lzf.LZFDataFormat
-    camel-quarkus-ref:
+      - org.apache.camel.component.aws.lambda.LambdaComponent
+    camel-quarkus-minio:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-ref
+      artifactId: camel-quarkus-minio
       schemes:
-      - id: ref
-        http: false
-        passive: true
-      javaTypes:
-      - org.apache.camel.component.ref.RefComponent
-    camel-quarkus-univocity-parsers:
-      groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-univocity-parsers
-      dataformats:
-      - univocity-tsv
-      - univocity-csv
-      - univocity-fixed
+      - id: minio
+        http: false
+        passive: false
       javaTypes:
-      - org.apache.camel.dataformat.univocity.UniVocityFixedWidthDataFormat
-      - org.apache.camel.dataformat.univocity.UniVocityTsvDataFormat
-      - org.apache.camel.dataformat.univocity.UniVocityCsvDataFormat
-    camel-quarkus-mvel:
+      - org.apache.camel.component.minio.MinioComponent
+    camel-quarkus-atlasmap:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-mvel
+      artifactId: camel-quarkus-atlasmap
       schemes:
-      - id: mvel
+      - id: atlasmap
         http: false
         passive: false
-      languages:
-      - mvel
       javaTypes:
-      - org.apache.camel.language.mvel.MvelLanguage
-      - org.apache.camel.component.mvel.MvelComponent
-    camel-quarkus-aws2-sns:
+      - org.apache.camel.component.atlasmap.AtlasMapComponent
+    camel-quarkus-aws2-sts:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-aws2-sns
+      artifactId: camel-quarkus-aws2-sts
       schemes:
-      - id: aws2-sns
+      - id: aws2-sts
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.aws2.sns.Sns2Component
-    camel-quarkus-jsonb:
+      - org.apache.camel.component.aws2.sts.STS2Component
+    camel-quarkus-tarfile:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-jsonb
+      artifactId: camel-quarkus-tarfile
       dataformats:
-      - json-jsonb
+      - tarfile
       javaTypes:
-      - org.apache.camel.component.jsonb.JsonbDataFormat
-    camel-quarkus-nsq:
+      - org.apache.camel.dataformat.tarfile.TarFileDataFormat
+    camel-quarkus-avro:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-nsq
+      artifactId: camel-quarkus-avro
+      dataformats:
+      - avro
+      javaTypes:
+      - org.apache.camel.dataformat.avro.AvroDataFormat
+    camel-quarkus-msv:
+      groupId: org.apache.camel.quarkus
+      artifactId: camel-quarkus-msv
       schemes:
-      - id: nsq
+      - id: msv
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.nsq.NsqComponent
-    camel-quarkus-xpath:
-      groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-xpath
-      languages:
-      - xpath
-      javaTypes:
-      - org.apache.camel.language.xpath.XPathLanguage
-    camel-quarkus-facebook:
+      - org.apache.camel.component.validator.msv.MsvComponent
+    camel-quarkus-spark:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-facebook
+      artifactId: camel-quarkus-spark
       schemes:
-      - id: facebook
+      - id: spark
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.facebook.FacebookComponent
-    camel-quarkus-ognl:
+      - org.apache.camel.component.spark.SparkComponent
+    camel-quarkus-saxon:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-ognl
+      artifactId: camel-quarkus-saxon
+      schemes:
+      - id: xquery
+        http: false
+        passive: false
       languages:
-      - ognl
+      - xquery
       javaTypes:
-      - org.apache.camel.language.ognl.OgnlLanguage
-    camel-quarkus-consul:
+      - org.apache.camel.component.xquery.XQueryComponent
+      - org.apache.camel.language.xquery.XQueryLanguage
+    camel-quarkus-caffeine:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-consul
+      artifactId: camel-quarkus-caffeine
       schemes:
-      - id: consul
+      - id: caffeine-loadcache
+        http: false
+        passive: false
+      - id: caffeine-cache
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.consul.ConsulComponent
-    camel-quarkus-jdbc:
+      - org.apache.camel.component.caffeine.cache.CaffeineCacheComponent
+      - org.apache.camel.component.caffeine.load.CaffeineLoadCacheComponent
+    camel-quarkus-elasticsearch-rest:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-jdbc
+      artifactId: camel-quarkus-elasticsearch-rest
       schemes:
-      - id: jdbc
+      - id: elasticsearch-rest
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.jdbc.JdbcComponent
-    camel-quarkus-vertx:
+      - org.apache.camel.component.elasticsearch.ElasticsearchComponent
+    camel-quarkus-bean-validator:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-vertx
+      artifactId: camel-quarkus-bean-validator
       schemes:
-      - id: vertx
+      - id: bean-validator
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.vertx.VertxComponent
-    camel-quarkus-controlbus:
+      - org.apache.camel.component.bean.validator.BeanValidatorComponent
+    camel-quarkus-jira:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-controlbus
+      artifactId: camel-quarkus-jira
       schemes:
-      - id: controlbus
+      - id: jira
         http: false
-        passive: true
+        passive: false
       javaTypes:
-      - org.apache.camel.component.controlbus.ControlBusComponent
-    camel-quarkus-weka:
+      - org.apache.camel.component.jira.JiraComponent
+    camel-quarkus-sql:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-weka
+      artifactId: camel-quarkus-sql
       schemes:
-      - id: weka
+      - id: sql
+        http: false
+        passive: false
+      - id: sql-stored
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.weka.WekaComponent
-    camel-quarkus-iec60870:
+      - org.apache.camel.component.sql.stored.SqlStoredComponent
+      - org.apache.camel.component.sql.SqlComponent
+    camel-quarkus-ehcache:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-iec60870
+      artifactId: camel-quarkus-ehcache
       schemes:
-      - id: iec60870-client
-        http: false
-        passive: false
-      - id: iec60870-server
+      - id: ehcache
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.iec60870.server.ServerComponent
-      - org.apache.camel.component.iec60870.client.ClientComponent
-    camel-quarkus-mock:
+      - org.apache.camel.component.ehcache.EhcacheComponent
+    camel-quarkus-aws2-iam:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-mock
+      artifactId: camel-quarkus-aws2-iam
       schemes:
-      - id: mock
+      - id: aws2-iam
         http: false
-        passive: true
+        passive: false
       javaTypes:
-      - org.apache.camel.component.mock.MockComponent
-    camel-quarkus-aws2-ddb:
+      - org.apache.camel.component.aws2.iam.IAM2Component
+    camel-quarkus-velocity:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-aws2-ddb
+      artifactId: camel-quarkus-velocity
       schemes:
-      - id: aws2-ddbstream
+      - id: velocity
         http: false
         passive: false
-      - id: aws2-ddb
+      javaTypes:
+      - org.apache.camel.component.velocity.VelocityComponent
+    camel-quarkus-core:
+      groupId: org.apache.camel.quarkus
+      artifactId: camel-quarkus-core
+      languages:
+      - exchangeProperty
+      - tokenize
+      - file
+      - header
+      - simple
+      - ref
+      - constant
+      - csimple
+      javaTypes:
+      - org.apache.camel.language.ref.RefLanguage
+      - org.apache.camel.language.simple.FileLanguage
+      - org.apache.camel.language.csimple.CSimpleLanguage
+      - org.apache.camel.language.constant.ConstantLanguage
+      - org.apache.camel.language.simple.SimpleLanguage
+      - org.apache.camel.language.header.HeaderLanguage
+      - org.apache.camel.language.property.ExchangePropertyLanguage
+      - org.apache.camel.language.tokenizer.TokenizeLanguage
+    camel-quarkus-debezium-mysql:
+      groupId: org.apache.camel.quarkus
+      artifactId: camel-quarkus-debezium-mysql
+      schemes:
+      - id: debezium-mysql
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.aws2.ddbstream.Ddb2StreamComponent
-      - org.apache.camel.component.aws2.ddb.Ddb2Component
-    camel-quarkus-jpa:
+      - org.apache.camel.component.debezium.DebeziumMySqlComponent
+    camel-quarkus-jcr:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-jpa
+      artifactId: camel-quarkus-jcr
       schemes:
-      - id: jpa
+      - id: jcr
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.jpa.JpaComponent
-    camel-quarkus-pulsar:
+      - org.apache.camel.component.jcr.JcrComponent
+    camel-quarkus-hdfs:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-pulsar
+      artifactId: camel-quarkus-hdfs
       schemes:
-      - id: pulsar
+      - id: hdfs
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.pulsar.PulsarComponent
-    camel-quarkus-guava-eventbus:
+      - org.apache.camel.component.hdfs.HdfsComponent
+    camel-quarkus-kudu:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-guava-eventbus
+      artifactId: camel-quarkus-kudu
       schemes:
-      - id: guava-eventbus
+      - id: kudu
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.guava.eventbus.GuavaEventBusComponent
-    camel-quarkus-amqp:
+      - org.apache.camel.component.kudu.KuduComponent
+    camel-quarkus-jooq:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-amqp
+      artifactId: camel-quarkus-jooq
       schemes:
-      - id: amqp
+      - id: jooq
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.amqp.AMQPComponent
-    camel-quarkus-flink:
+      - org.apache.camel.component.jooq.JooqComponent
+    camel-quarkus-jsonpath:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-flink
+      artifactId: camel-quarkus-jsonpath
+      languages:
+      - jsonpath
+      javaTypes:
+      - org.apache.camel.jsonpath.JsonPathLanguage
+    camel-quarkus-hl7:
+      groupId: org.apache.camel.quarkus
+      artifactId: camel-quarkus-hl7
+      languages:
+      - hl7terser
+      dataformats:
+      - hl7
+      javaTypes:
+      - org.apache.camel.component.hl7.Hl7TerserLanguage
+      - org.apache.camel.component.hl7.HL7DataFormat
+    camel-quarkus-disruptor:
+      groupId: org.apache.camel.quarkus
+      artifactId: camel-quarkus-disruptor
       schemes:
-      - id: flink
+      - id: disruptor
+        http: false
+        passive: false
+      - id: disruptor-vm
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.flink.FlinkComponent
-    camel-quarkus-debezium-postgres:
+      - org.apache.camel.component.disruptor.vm.DisruptorVmComponent
+      - org.apache.camel.component.disruptor.DisruptorComponent
+    camel-quarkus-graphql:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-debezium-postgres
+      artifactId: camel-quarkus-graphql
       schemes:
-      - id: debezium-postgres
+      - id: graphql
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.debezium.DebeziumPostgresComponent
-    camel-quarkus-aws-iam:
+      - org.apache.camel.component.graphql.GraphqlComponent
+    camel-quarkus-log:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-aws-iam
+      artifactId: camel-quarkus-log
       schemes:
-      - id: aws-iam
+      - id: log
         http: false
-        passive: false
+        passive: true
       javaTypes:
-      - org.apache.camel.component.aws.iam.IAMComponent
-    camel-quarkus-syslog:
+      - org.apache.camel.component.log.LogComponent
+    camel-quarkus-ahc:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-syslog
-      dataformats:
-      - syslog
+      artifactId: camel-quarkus-ahc
+      schemes:
+      - id: ahc
+        http: true
+        passive: false
       javaTypes:
-      - org.apache.camel.component.syslog.SyslogDataFormat
-    camel-quarkus-smpp:
+      - org.apache.camel.component.ahc.AhcComponent
+    camel-quarkus-milo:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-smpp
+      artifactId: camel-quarkus-milo
       schemes:
-      - id: smpp
+      - id: milo-server
         http: false
         passive: false
-      - id: smpps
+      - id: milo-client
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.smpp.SmppComponent
-    camel-quarkus-zip-deflater:
-      groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-zip-deflater
-      dataformats:
-      - zipdeflater
-      - gzipdeflater
-      javaTypes:
-      - org.apache.camel.dataformat.deflater.GzipDeflaterDataFormat
-      - org.apache.camel.dataformat.deflater.ZipDeflaterDataFormat
-    camel-quarkus-workday:
+      - org.apache.camel.component.milo.client.MiloClientComponent
+      - org.apache.camel.component.milo.server.MiloServerComponent
+    camel-quarkus-atomix:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-workday
+      artifactId: camel-quarkus-atomix
       schemes:
-      - id: workday
+      - id: atomix-map
+        http: false
+        passive: false
+      - id: atomix-queue
+        http: false
+        passive: false
+      - id: atomix-set
+        http: false
+        passive: false
+      - id: atomix-messaging
+        http: false
+        passive: false
+      - id: atomix-value
+        http: false
+        passive: false
+      - id: atomix-multimap
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.workday.WorkdayComponent
-    camel-quarkus-couchdb:
+      - org.apache.camel.component.atomix.client.map.AtomixMapComponent
+      - org.apache.camel.component.atomix.client.multimap.AtomixMultiMapComponent
+      - org.apache.camel.component.atomix.client.value.AtomixValueComponent
+      - org.apache.camel.component.atomix.client.set.AtomixSetComponent
+      - org.apache.camel.component.atomix.client.messaging.AtomixMessagingComponent
+      - org.apache.camel.component.atomix.client.queue.AtomixQueueComponent
+    camel-quarkus-fhir:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-couchdb
+      artifactId: camel-quarkus-fhir
       schemes:
-      - id: couchdb
+      - id: fhir
         http: false
         passive: false
+      dataformats:
+      - fhirXml
+      - fhirJson
       javaTypes:
-      - org.apache.camel.component.couchdb.CouchDbComponent
-    camel-quarkus-grok:
+      - org.apache.camel.component.fhir.FhirComponent
+      - org.apache.camel.component.fhir.FhirXmlDataFormat
+      - org.apache.camel.component.fhir.FhirJsonDataFormat
+    camel-quarkus-csv:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-grok
+      artifactId: camel-quarkus-csv
       dataformats:
-      - grok
+      - csv
       javaTypes:
-      - org.apache.camel.component.grok.GrokDataFormat
-    camel-quarkus-aws-s3:
+      - org.apache.camel.dataformat.csv.CsvDataFormat
+    camel-quarkus-aws2-kms:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-aws-s3
+      artifactId: camel-quarkus-aws2-kms
       schemes:
-      - id: aws-s3
+      - id: aws2-kms
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.aws.s3.S3Component
-    camel-quarkus-bean:
+      - org.apache.camel.component.aws2.kms.KMS2Component
+    camel-quarkus-lucene:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-bean
+      artifactId: camel-quarkus-lucene
       schemes:
-      - id: bean
-        http: false
-        passive: true
-      - id: class
+      - id: lucene
         http: false
-        passive: true
-      languages:
-      - bean
+        passive: false
       javaTypes:
-      - org.apache.camel.component.beanclass.ClassComponent
-      - org.apache.camel.language.bean.BeanLanguage
-      - org.apache.camel.component.bean.BeanComponent
-    camel-quarkus-direct:
+      - org.apache.camel.component.lucene.LuceneComponent
+    camel-quarkus-splunk-hec:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-direct
+      artifactId: camel-quarkus-splunk-hec
       schemes:
-      - id: direct
+      - id: splunk-hec
         http: false
-        passive: true
+        passive: false
       javaTypes:
-      - org.apache.camel.component.direct.DirectComponent
-    camel-quarkus-xj:
+      - org.apache.camel.component.splunkhec.SplunkHECComponent
+    camel-quarkus-aws-ecs:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-xj
+      artifactId: camel-quarkus-aws-ecs
       schemes:
-      - id: xj
+      - id: aws-ecs
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.xj.XJComponent
-    camel-quarkus-fastjson:
-      groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-fastjson
-      dataformats:
-      - json-fastjson
-      javaTypes:
-      - org.apache.camel.component.fastjson.FastjsonDataFormat
-    camel-quarkus-snakeyaml:
-      groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-snakeyaml
-      dataformats:
-      - yaml-snakeyaml
-      javaTypes:
-      - org.apache.camel.component.snakeyaml.SnakeYAMLDataFormat
-    camel-quarkus-debezium-sqlserver:
+      - org.apache.camel.component.aws.ecs.ECSComponent
+    camel-quarkus-jbpm:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-debezium-sqlserver
+      artifactId: camel-quarkus-jbpm
       schemes:
-      - id: debezium-sqlserver
+      - id: jbpm
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.debezium.DebeziumSqlserverComponent
-    camel-quarkus-aws2-msk:
+      - org.apache.camel.component.jbpm.JBPMComponent
+    camel-quarkus-salesforce:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-aws2-msk
+      artifactId: camel-quarkus-salesforce
       schemes:
-      - id: aws2-msk
+      - id: salesforce
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.aws2.msk.MSK2Component
-    camel-quarkus-stax:
+      - org.apache.camel.component.salesforce.SalesforceComponent
+    camel-quarkus-jcache:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-stax
+      artifactId: camel-quarkus-jcache
       schemes:
-      - id: stax
+      - id: jcache
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.stax.StAXComponent
-    camel-quarkus-aws-kms:
+      - org.apache.camel.component.jcache.JCacheComponent
+    camel-quarkus-vertx-websocket:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-aws-kms
+      artifactId: camel-quarkus-vertx-websocket
       schemes:
-      - id: aws-kms
+      - id: vertx-websocket
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.aws.kms.KMSComponent
-    camel-quarkus-ipfs:
+      - org.apache.camel.component.vertx.websocket.VertxWebsocketComponent
+    camel-quarkus-google-calendar:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-ipfs
+      artifactId: camel-quarkus-google-calendar
       schemes:
-      - id: ipfs
+      - id: google-calendar
+        http: false
+        passive: false
+      - id: google-calendar-stream
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.ipfs.IPFSComponent
-    camel-quarkus-grpc:
+      - org.apache.camel.component.google.calendar.stream.GoogleCalendarStreamComponent
+      - org.apache.camel.component.google.calendar.GoogleCalendarComponent
+    camel-quarkus-avro-rpc:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-grpc
+      artifactId: camel-quarkus-avro-rpc
       schemes:
-      - id: grpc
-        http: true
+      - id: avro
+        http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.grpc.GrpcComponent
-    camel-quarkus-servicenow:
+      - org.apache.camel.component.avro.AvroComponent
+    camel-quarkus-browse:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-servicenow
+      artifactId: camel-quarkus-browse
       schemes:
-      - id: servicenow
+      - id: browse
         http: false
-        passive: false
+        passive: true
       javaTypes:
-      - org.apache.camel.component.servicenow.ServiceNowComponent
-    camel-quarkus-sap-netweaver:
+      - org.apache.camel.component.browse.BrowseComponent
+    camel-quarkus-stream:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-sap-netweaver
+      artifactId: camel-quarkus-stream
       schemes:
-      - id: sap-netweaver
+      - id: stream
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.sap.netweaver.NetWeaverComponent
-    camel-quarkus-aws-sdb:
+      - org.apache.camel.component.stream.StreamComponent
+    camel-quarkus-kafka:
       groupId: org.apache.camel.quarkus
-      artifactId: camel-quarkus-aws-sdb
+      artifactId: camel-quarkus-kafka
       schemes:
-      - id: aws-sdb
+      - id: kafka
         http: false
         passive: false
       javaTypes:
-      - org.apache.camel.component.aws.sdb.SdbComponent
+      - org.apache.camel.component.kafka.KafkaComponent
   loaders:
-    kts:
-      groupId: org.apache.camel.k
-      artifactId: camel-k-loader-kotlin
-      languages:
-      - kts
-      metadata:
-        native: "false"
-    js:
-      groupId: org.apache.camel.k
-      artifactId: camel-k-loader-js
-      languages:
-      - js
-      metadata:
-        native: "true"
     xml:
       groupId: org.apache.camel.k
       artifactId: camel-k-loader-xml
@@ -2963,3 +2949,17 @@ spec:
       - yaml
       metadata:
         native: "true"
+    kts:
+      groupId: org.apache.camel.k
+      artifactId: camel-k-loader-kotlin
+      languages:
+      - kts
+      metadata:
+        native: "false"
+    js:
+      groupId: org.apache.camel.k
+      artifactId: camel-k-loader-js
+      languages:
+      - js
+      metadata:
+        native: "true"
diff --git a/deploy/olm-catalog/camel-k-dev/1.3.1-snapshot/builds.camel.apache.org.crd.yaml b/deploy/olm-catalog/camel-k-dev/1.3.1-snapshot/builds.camel.apache.org.crd.yaml
new file mode 100644
index 0000000..199ae47
--- /dev/null
+++ b/deploy/olm-catalog/camel-k-dev/1.3.1-snapshot/builds.camel.apache.org.crd.yaml
@@ -0,0 +1,4633 @@
+# ---------------------------------------------------------------------------
+# 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.
+# ---------------------------------------------------------------------------
+
+apiVersion: apiextensions.k8s.io/v1beta1
+kind: CustomResourceDefinition
+metadata:
+  labels:
+    app: "camel-k"
+  annotations:
+    controller-gen.kubebuilder.io/version: v0.4.1
+  creationTimestamp: null
+  name: builds.camel.apache.org
+spec:
+  additionalPrinterColumns:
+  - JSONPath: .status.phase
+    description: The build phase
+    name: Phase
+    type: string
+  - JSONPath: .metadata.creationTimestamp
+    description: The time at which the build was created
+    name: Age
+    type: date
+  - JSONPath: .status.startedAt
+    description: The time at which the build was last (re-)started
+    name: Started
+    type: date
+  - JSONPath: .status.duration
+    description: The build last execution duration
+    name: Duration
+    type: string
+  - JSONPath: .status.failure.recovery.attempt
+    description: The number of execution attempts
+    name: Attempts
+    type: integer
+  group: camel.apache.org
+  names:
+    categories:
+    - kamel
+    - camel
+    kind: Build
+    listKind: BuildList
+    plural: builds
+    shortNames:
+    - ikb
+    singular: build
+  scope: Namespaced
+  subresources:
+    status: {}
+  validation:
+    openAPIV3Schema:
+      description: Build is the Schema for the builds API
+      properties:
+        apiVersion:
+          description: 'APIVersion defines the versioned schema of this representation
+            of an object. Servers should convert recognized schemas to the latest
+            internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
+          type: string
+        kind:
+          description: 'Kind is a string value representing the REST resource this
+            object represents. Servers may infer this from the endpoint the client
+            submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
+          type: string
+        metadata:
+          type: object
+        spec:
+          description: BuildSpec defines the desired state of Build
+          properties:
+            tasks:
+              items:
+                description: Task --
+                properties:
+                  builder:
+                    description: BuilderTask --
+                    properties:
+                      affinity:
+                        description: Affinity is a group of affinity scheduling rules.
+                        properties:
+                          nodeAffinity:
+                            description: Describes node affinity scheduling rules
+                              for the pod.
+                            properties:
+                              preferredDuringSchedulingIgnoredDuringExecution:
+                                description: The scheduler will prefer to schedule
+                                  pods to nodes that satisfy the affinity expressions
+                                  specified by this field, but it may choose a node
+                                  that violates one or more of the expressions. The
+                                  node that is most preferred is the one with the
+                                  greatest sum of weights, i.e. for each node that
+                                  meets all of the scheduling requirements (resource
+                                  request, requiredDuringScheduling affinity expressions,
+                                  etc.), compute a sum by iterating through the elements
+                                  of this field and adding "weight" to the sum if
+                                  the node matches the corresponding matchExpressions;
+                                  the node(s) with the highest sum are the most preferred.
+                                items:
+                                  description: An empty preferred scheduling term
+                                    matches all objects with implicit weight 0 (i.e.
+                                    it's a no-op). A null preferred scheduling term
+                                    matches no objects (i.e. is also a no-op).
+                                  properties:
+                                    preference:
+                                      description: A node selector term, associated
+                                        with the corresponding weight.
+                                      properties:
+                                        matchExpressions:
+                                          description: A list of node selector requirements
+                                            by node's labels.
+                                          items:
+                                            description: A node selector requirement
+                                              is a selector that contains values,
+                                              a key, and an operator that relates
+                                              the key and values.
+                                            properties:
+                                              key:
+                                                description: The label key that the
+                                                  selector applies to.
+                                                type: string
+                                              operator:
+                                                description: Represents a key's relationship
+                                                  to a set of values. Valid operators
+                                                  are In, NotIn, Exists, DoesNotExist.
+                                                  Gt, and Lt.
+                                                type: string
+                                              values:
+                                                description: An array of string values.
+                                                  If the operator is In or NotIn,
+                                                  the values array must be non-empty.
+                                                  If the operator is Exists or DoesNotExist,
+                                                  the values array must be empty.
+                                                  If the operator is Gt or Lt, the
+                                                  values array must have a single
+                                                  element, which will be interpreted
+                                                  as an integer. This array is replaced
+                                                  during a strategic merge patch.
+                                                items:
+                                                  type: string
+                                                type: array
+                                            required:
+                                            - key
+                                            - operator
+                                            type: object
+                                          type: array
+                                        matchFields:
+                                          description: A list of node selector requirements
+                                            by node's fields.
+                                          items:
+                                            description: A node selector requirement
+                                              is a selector that contains values,
+                                              a key, and an operator that relates
+                                              the key and values.
+                                            properties:
+                                              key:
+                                                description: The label key that the
+                                                  selector applies to.
+                                                type: string
+                                              operator:
+                                                description: Represents a key's relationship
+                                                  to a set of values. Valid operators
+                                                  are In, NotIn, Exists, DoesNotExist.
+                                                  Gt, and Lt.
+                                                type: string
+                                              values:
+                                                description: An array of string values.
+                                                  If the operator is In or NotIn,
+                                                  the values array must be non-empty.
+                                                  If the operator is Exists or DoesNotExist,
+                                                  the values array must be empty.
+                                                  If the operator is Gt or Lt, the
+                                                  values array must have a single
+                                                  element, which will be interpreted
+                                                  as an integer. This array is replaced
+                                                  during a strategic merge patch.
+                                                items:
+                                                  type: string
+                                                type: array
+                                            required:
+                                            - key
+                                            - operator
+                                            type: object
+                                          type: array
+                                      type: object
+                                    weight:
+                                      description: Weight associated with matching
+                                        the corresponding nodeSelectorTerm, in the
+                                        range 1-100.
+                                      format: int32
+                                      type: integer
+                                  required:
+                                  - preference
+                                  - weight
+                                  type: object
+                                type: array
+                              requiredDuringSchedulingIgnoredDuringExecution:
+                                description: If the affinity requirements specified
+                                  by this field are not met at scheduling time, the
+                                  pod will not be scheduled onto the node. If the
+                                  affinity requirements specified by this field cease
+                                  to be met at some point during pod execution (e.g.
+                                  due to an update), the system may or may not try
+                                  to eventually evict the pod from its node.
+                                properties:
+                                  nodeSelectorTerms:
+                                    description: Required. A list of node selector
+                                      terms. The terms are ORed.
+                                    items:
+                                      description: A null or empty node selector term
+                                        matches no objects. The requirements of them
+                                        are ANDed. The TopologySelectorTerm type implements
+                                        a subset of the NodeSelectorTerm.
+                                      properties:
+                                        matchExpressions:
+                                          description: A list of node selector requirements
+                                            by node's labels.
+                                          items:
+                                            description: A node selector requirement
+                                              is a selector that contains values,
+                                              a key, and an operator that relates
+                                              the key and values.
+                                            properties:
+                                              key:
+                                                description: The label key that the
+                                                  selector applies to.
+                                                type: string
+                                              operator:
+                                                description: Represents a key's relationship
+                                                  to a set of values. Valid operators
+                                                  are In, NotIn, Exists, DoesNotExist.
+                                                  Gt, and Lt.
+                                                type: string
+                                              values:
+                                                description: An array of string values.
+                                                  If the operator is In or NotIn,
+                                                  the values array must be non-empty.
+                                                  If the operator is Exists or DoesNotExist,
+                                                  the values array must be empty.
+                                                  If the operator is Gt or Lt, the
+                                                  values array must have a single
+                                                  element, which will be interpreted
+                                                  as an integer. This array is replaced
+                                                  during a strategic merge patch.
+                                                items:
+                                                  type: string
+                                                type: array
+                                            required:
+                                            - key
+                                            - operator
+                                            type: object
+                                          type: array
+                                        matchFields:
+                                          description: A list of node selector requirements
+                                            by node's fields.
+                                          items:
+                                            description: A node selector requirement
+                                              is a selector that contains values,
+                                              a key, and an operator that relates
+                                              the key and values.
+                                            properties:
+                                              key:
+                                                description: The label key that the
+                                                  selector applies to.
+                                                type: string
+                                              operator:
+                                                description: Represents a key's relationship
+                                                  to a set of values. Valid operators
+                                                  are In, NotIn, Exists, DoesNotExist.
+                                                  Gt, and Lt.
+                                                type: string
+                                              values:
+                                                description: An array of string values.
+                                                  If the operator is In or NotIn,
+                                                  the values array must be non-empty.
+                                                  If the operator is Exists or DoesNotExist,
+                                                  the values array must be empty.
+                                                  If the operator is Gt or Lt, the
+                                                  values array must have a single
+                                                  element, which will be interpreted
+                                                  as an integer. This array is replaced
+                                                  during a strategic merge patch.
+                                                items:
+                                                  type: string
+                                                type: array
+                                            required:
+                                            - key
+                                            - operator
+                                            type: object
+                                          type: array
+                                      type: object
+                                    type: array
+                                required:
+                                - nodeSelectorTerms
+                                type: object
+                            type: object
+                          podAffinity:
+                            description: Describes pod affinity scheduling rules (e.g.
+                              co-locate this pod in the same node, zone, etc. as some
+                              other pod(s)).
+                            properties:
+                              preferredDuringSchedulingIgnoredDuringExecution:
+                                description: The scheduler will prefer to schedule
+                                  pods to nodes that satisfy the affinity expressions
+                                  specified by this field, but it may choose a node
+                                  that violates one or more of the expressions. The
+                                  node that is most preferred is the one with the
+                                  greatest sum of weights, i.e. for each node that
+                                  meets all of the scheduling requirements (resource
+                                  request, requiredDuringScheduling affinity expressions,
+                                  etc.), compute a sum by iterating through the elements
+                                  of this field and adding "weight" to the sum if
+                                  the node has pods which matches the corresponding
+                                  podAffinityTerm; the node(s) with the highest sum
+                                  are the most preferred.
+                                items:
+                                  description: The weights of all of the matched WeightedPodAffinityTerm
+                                    fields are added per-node to find the most preferred
+                                    node(s)
+                                  properties:
+                                    podAffinityTerm:
+                                      description: Required. A pod affinity term,
+                                        associated with the corresponding weight.
+                                      properties:
+                                        labelSelector:
+                                          description: A label query over a set of
+                                            resources, in this case pods.
+                                          properties:
+                                            matchExpressions:
+                                              description: matchExpressions is a list
+                                                of label selector requirements. The
+                                                requirements are ANDed.
+                                              items:
+                                                description: A label selector requirement
+                                                  is a selector that contains values,
+                                                  a key, and an operator that relates
+                                                  the key and values.
+                                                properties:
+                                                  key:
+                                                    description: key is the label
+                                                      key that the selector applies
+                                                      to.
+                                                    type: string
+                                                  operator:
+                                                    description: operator represents
+                                                      a key's relationship to a set
+                                                      of values. Valid operators are
+                                                      In, NotIn, Exists and DoesNotExist.
+                                                    type: string
+                                                  values:
+                                                    description: values is an array
+                                                      of string values. If the operator
+                                                      is In or NotIn, the values array
+                                                      must be non-empty. If the operator
+                                                      is Exists or DoesNotExist, the
+                                                      values array must be empty.
+                                                      This array is replaced during
+                                                      a strategic merge patch.
+                                                    items:
+                                                      type: string
+                                                    type: array
+                                                required:
+                                                - key
+                                                - operator
+                                                type: object
+                                              type: array
+                                            matchLabels:
+                                              additionalProperties:
+                                                type: string
+                                              description: matchLabels is a map of
+                                                {key,value} pairs. A single {key,value}
+                                                in the matchLabels map is equivalent
+                                                to an element of matchExpressions,
+                                                whose key field is "key", the operator
+                                                is "In", and the values array contains
+                                                only "value". The requirements are
+                                                ANDed.
+                                              type: object
+                                          type: object
+                                        namespaces:
+                                          description: namespaces specifies which
+                                            namespaces the labelSelector applies to
+                                            (matches against); null or empty list
+                                            means "this pod's namespace"
+                                          items:
+                                            type: string
+                                          type: array
+                                        topologyKey:
+                                          description: This pod should be co-located
+                                            (affinity) or not co-located (anti-affinity)
+                                            with the pods matching the labelSelector
+                                            in the specified namespaces, where co-located
+                                            is defined as running on a node whose
+                                            value of the label with key topologyKey
+                                            matches that of any node on which any
+                                            of the selected pods is running. Empty
+                                            topologyKey is not allowed.
+                                          type: string
+                                      required:
+                                      - topologyKey
+                                      type: object
+                                    weight:
+                                      description: weight associated with matching
+                                        the corresponding podAffinityTerm, in the
+                                        range 1-100.
+                                      format: int32
+                                      type: integer
+                                  required:
+                                  - podAffinityTerm
+                                  - weight
+                                  type: object
+                                type: array
+                              requiredDuringSchedulingIgnoredDuringExecution:
+                                description: If the affinity requirements specified
+                                  by this field are not met at scheduling time, the
+                                  pod will not be scheduled onto the node. If the
+                                  affinity requirements specified by this field cease
+                                  to be met at some point during pod execution (e.g.
+                                  due to a pod label update), the system may or may
+                                  not try to eventually evict the pod from its node.
+                                  When there are multiple elements, the lists of nodes
+                                  corresponding to each podAffinityTerm are intersected,
+                                  i.e. all terms must be satisfied.
+                                items:
+                                  description: Defines a set of pods (namely those
+                                    matching the labelSelector relative to the given
+                                    namespace(s)) that this pod should be co-located
+                                    (affinity) or not co-located (anti-affinity) with,
+                                    where co-located is defined as running on a node
+                                    whose value of the label with key <topologyKey>
+                                    matches that of any node on which a pod of the
+                                    set of pods is running
+                                  properties:
+                                    labelSelector:
+                                      description: A label query over a set of resources,
+                                        in this case pods.
+                                      properties:
+                                        matchExpressions:
+                                          description: matchExpressions is a list
+                                            of label selector requirements. The requirements
+                                            are ANDed.
+                                          items:
+                                            description: A label selector requirement
+                                              is a selector that contains values,
+                                              a key, and an operator that relates
+                                              the key and values.
+                                            properties:
+                                              key:
+                                                description: key is the label key
+                                                  that the selector applies to.
+                                                type: string
+                                              operator:
+                                                description: operator represents a
+                                                  key's relationship to a set of values.
+                                                  Valid operators are In, NotIn, Exists
+                                                  and DoesNotExist.
+                                                type: string
+                                              values:
+                                                description: values is an array of
+                                                  string values. If the operator is
+                                                  In or NotIn, the values array must
+                                                  be non-empty. If the operator is
+                                                  Exists or DoesNotExist, the values
+                                                  array must be empty. This array
+                                                  is replaced during a strategic merge
+                                                  patch.
+                                                items:
+                                                  type: string
+                                                type: array
+                                            required:
+                                            - key
+                                            - operator
+                                            type: object
+                                          type: array
+                                        matchLabels:
+                                          additionalProperties:
+                                            type: string
+                                          description: matchLabels is a map of {key,value}
+                                            pairs. A single {key,value} in the matchLabels
+                                            map is equivalent to an element of matchExpressions,
+                                            whose key field is "key", the operator
+                                            is "In", and the values array contains
+                                            only "value". The requirements are ANDed.
+                                          type: object
+                                      type: object
+                                    namespaces:
+                                      description: namespaces specifies which namespaces
+                                        the labelSelector applies to (matches against);
+                                        null or empty list means "this pod's namespace"
+                                      items:
+                                        type: string
+                                      type: array
+                                    topologyKey:
+                                      description: This pod should be co-located (affinity)
+                                        or not co-located (anti-affinity) with the
+                                        pods matching the labelSelector in the specified
+                                        namespaces, where co-located is defined as
+                                        running on a node whose value of the label
+                                        with key topologyKey matches that of any node
+                                        on which any of the selected pods is running.
+                                        Empty topologyKey is not allowed.
+                                      type: string
+                                  required:
+                                  - topologyKey
+                                  type: object
+                                type: array
+                            type: object
+                          podAntiAffinity:
+                            description: Describes pod anti-affinity scheduling rules
+                              (e.g. avoid putting this pod in the same node, zone,
+                              etc. as some other pod(s)).
+                            properties:
+                              preferredDuringSchedulingIgnoredDuringExecution:
+                                description: The scheduler will prefer to schedule
+                                  pods to nodes that satisfy the anti-affinity expressions
+                                  specified by this field, but it may choose a node
+                                  that violates one or more of the expressions. The
+                                  node that is most preferred is the one with the
+                                  greatest sum of weights, i.e. for each node that
+                                  meets all of the scheduling requirements (resource
+                                  request, requiredDuringScheduling anti-affinity
+                                  expressions, etc.), compute a sum by iterating through
+                                  the elements of this field and adding "weight" to
+                                  the sum if the node has pods which matches the corresponding
+                                  podAffinityTerm; the node(s) with the highest sum
+                                  are the most preferred.
+                                items:
+                                  description: The weights of all of the matched WeightedPodAffinityTerm
+                                    fields are added per-node to find the most preferred
+                                    node(s)
+                                  properties:
+                                    podAffinityTerm:
+                                      description: Required. A pod affinity term,
+                                        associated with the corresponding weight.
+                                      properties:
+                                        labelSelector:
+                                          description: A label query over a set of
+                                            resources, in this case pods.
+                                          properties:
+                                            matchExpressions:
+                                              description: matchExpressions is a list
+                                                of label selector requirements. The
+                                                requirements are ANDed.
+                                              items:
+                                                description: A label selector requirement
+                                                  is a selector that contains values,
+                                                  a key, and an operator that relates
+                                                  the key and values.
+                                                properties:
+                                                  key:
+                                                    description: key is the label
+                                                      key that the selector applies
+                                                      to.
+                                                    type: string
+                                                  operator:
+                                                    description: operator represents
+                                                      a key's relationship to a set
+                                                      of values. Valid operators are
+                                                      In, NotIn, Exists and DoesNotExist.
+                                                    type: string
+                                                  values:
+                                                    description: values is an array
+                                                      of string values. If the operator
+                                                      is In or NotIn, the values array
+                                                      must be non-empty. If the operator
+                                                      is Exists or DoesNotExist, the
+                                                      values array must be empty.
+                                                      This array is replaced during
+                                                      a strategic merge patch.
+                                                    items:
+                                                      type: string
+                                                    type: array
+                                                required:
+                                                - key
+                                                - operator
+                                                type: object
+                                              type: array
+                                            matchLabels:
+                                              additionalProperties:
+                                                type: string
+                                              description: matchLabels is a map of
+                                                {key,value} pairs. A single {key,value}
+                                                in the matchLabels map is equivalent
+                                                to an element of matchExpressions,
+                                                whose key field is "key", the operator
+                                                is "In", and the values array contains
+                                                only "value". The requirements are
+                                                ANDed.
+                                              type: object
+                                          type: object
+                                        namespaces:
+                                          description: namespaces specifies which
+                                            namespaces the labelSelector applies to
+                                            (matches against); null or empty list
+                                            means "this pod's namespace"
+                                          items:
+                                            type: string
+                                          type: array
+                                        topologyKey:
+                                          description: This pod should be co-located
+                                            (affinity) or not co-located (anti-affinity)
+                                            with the pods matching the labelSelector
+                                            in the specified namespaces, where co-located
+                                            is defined as running on a node whose
+                                            value of the label with key topologyKey
+                                            matches that of any node on which any
+                                            of the selected pods is running. Empty
+                                            topologyKey is not allowed.
+                                          type: string
+                                      required:
+                                      - topologyKey
+                                      type: object
+                                    weight:
+                                      description: weight associated with matching
+                                        the corresponding podAffinityTerm, in the
+                                        range 1-100.
+                                      format: int32
+                                      type: integer
+                                  required:
+                                  - podAffinityTerm
+                                  - weight
+                                  type: object
+                                type: array
+                              requiredDuringSchedulingIgnoredDuringExecution:
+                                description: If the anti-affinity requirements specified
+                                  by this field are not met at scheduling time, the
+                                  pod will not be scheduled onto the node. If the
+                                  anti-affinity requirements specified by this field
+                                  cease to be met at some point during pod execution
+                                  (e.g. due to a pod label update), the system may
+                                  or may not try to eventually evict the pod from
+                                  its node. When there are multiple elements, the
+                                  lists of nodes corresponding to each podAffinityTerm
+                                  are intersected, i.e. all terms must be satisfied.
+                                items:
+                                  description: Defines a set of pods (namely those
+                                    matching the labelSelector relative to the given
+                                    namespace(s)) that this pod should be co-located
+                                    (affinity) or not co-located (anti-affinity) with,
+                                    where co-located is defined as running on a node
+                                    whose value of the label with key <topologyKey>
+                                    matches that of any node on which a pod of the
+                                    set of pods is running
+                                  properties:
+                                    labelSelector:
+                                      description: A label query over a set of resources,
+                                        in this case pods.
+                                      properties:
+                                        matchExpressions:
+                                          description: matchExpressions is a list
+                                            of label selector requirements. The requirements
+                                            are ANDed.
+                                          items:
+                                            description: A label selector requirement
+                                              is a selector that contains values,
+                                              a key, and an operator that relates
+                                              the key and values.
+                                            properties:
+                                              key:
+                                                description: key is the label key
+                                                  that the selector applies to.
+                                                type: string
+                                              operator:
+                                                description: operator represents a
+                                                  key's relationship to a set of values.
+                                                  Valid operators are In, NotIn, Exists
+                                                  and DoesNotExist.
+                                                type: string
+                                              values:
+                                                description: values is an array of
+                                                  string values. If the operator is
+                                                  In or NotIn, the values array must
+                                                  be non-empty. If the operator is
+                                                  Exists or DoesNotExist, the values
+                                                  array must be empty. This array
+                                                  is replaced during a strategic merge
+                                                  patch.
+                                                items:
+                                                  type: string
+                                                type: array
+                                            required:
+                                            - key
+                                            - operator
+                                            type: object
+                                          type: array
+                                        matchLabels:
+                                          additionalProperties:
+                                            type: string
+                                          description: matchLabels is a map of {key,value}
+                                            pairs. A single {key,value} in the matchLabels
+                                            map is equivalent to an element of matchExpressions,
+                                            whose key field is "key", the operator
+                                            is "In", and the values array contains
+                                            only "value". The requirements are ANDed.
+                                          type: object
+                                      type: object
+                                    namespaces:
+                                      description: namespaces specifies which namespaces
+                                        the labelSelector applies to (matches against);
+                                        null or empty list means "this pod's namespace"
+                                      items:
+                                        type: string
+                                      type: array
+                                    topologyKey:
+                                      description: This pod should be co-located (affinity)
+                                        or not co-located (anti-affinity) with the
+                                        pods matching the labelSelector in the specified
+                                        namespaces, where co-located is defined as
+                                        running on a node whose value of the label
+                                        with key topologyKey matches that of any node
+                                        on which any of the selected pods is running.
+                                        Empty topologyKey is not allowed.
+                                      type: string
+                                  required:
+                                  - topologyKey
+                                  type: object
+                                type: array
+                            type: object
+                        type: object
+                      baseImage:
+                        type: string
+                      buildDir:
+                        type: string
+                      dependencies:
+                        items:
+                          type: string
+                        type: array
+                      image:
+                        type: string
+                      maven:
+                        description: MavenSpec --
+                        properties:
+                          localRepository:
+                            type: string
+                          settings:
+                            description: ValueSource --
+                            properties:
+                              configMapKeyRef:
+                                description: Selects a key of a ConfigMap.
+                                properties:
+                                  key:
+                                    description: The key to select.
+                                    type: string
+                                  name:
+                                    description: 'Name of the referent. More info:
+                                      https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+                                      TODO: Add other useful fields. apiVersion, kind,
+                                      uid?'
+                                    type: string
+                                  optional:
+                                    description: Specify whether the ConfigMap or
+                                      its key must be defined
+                                    type: boolean
+                                required:
+                                - key
+                                type: object
+                              secretKeyRef:
+                                description: Selects a key of a secret.
+                                properties:
+                                  key:
+                                    description: The key of the secret to select from.  Must
+                                      be a valid secret key.
+                                    type: string
+                                  name:
+                                    description: 'Name of the referent. More info:
+                                      https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+                                      TODO: Add other useful fields. apiVersion, kind,
+                                      uid?'
+                                    type: string
+                                  optional:
+                                    description: Specify whether the Secret or its
+                                      key must be defined
+                                    type: boolean
+                                required:
+                                - key
+                                type: object
+                            type: object
+                          timeout:
+                            type: string
+                        type: object
+                      meta:
+                        description: This is required until https://github.com/kubernetes-sigs/controller-tools/pull/395
+                          gets merged
+                        type: object
+                        x-kubernetes-preserve-unknown-fields: true
+                      name:
+                        type: string
+                      properties:
+                        additionalProperties:
+                          type: string
+                        type: object
+                      resources:
+                        items:
+                          description: ResourceSpec --
+                          properties:
+                            compression:
+                              type: boolean
+                            content:
+                              type: string
+                            contentKey:
+                              type: string
+                            contentRef:
+                              type: string
+                            mountPath:
+                              type: string
+                            name:
+                              type: string
+                            type:
+                              description: ResourceType --
+                              type: string
+                          type: object
+                        type: array
+                      runtime:
+                        description: RuntimeSpec --
+                        properties:
+                          applicationClass:
+                            type: string
+                          capabilities:
+                            additionalProperties:
+                              description: Capability --
+                              properties:
+                                dependencies:
+                                  items:
+                                    description: MavenArtifact --
+                                    properties:
+                                      artifactId:
+                                        type: string
+                                      groupId:
+                                        type: string
+                                      version:
+                                        type: string
+                                    required:
+                                    - artifactId
+                                    - groupId
+                                    type: object
+                                  type: array
+                                metadata:
+                                  additionalProperties:
+                                    type: string
+                                  type: object
+                              required:
+                              - dependencies
+                              type: object
+                            type: object
+                          dependencies:
+                            items:
+                              description: MavenArtifact --
+                              properties:
+                                artifactId:
+                                  type: string
+                                groupId:
+                                  type: string
+                                version:
+                                  type: string
+                              required:
+                              - artifactId
+                              - groupId
+                              type: object
+                            type: array
+                          metadata:
+                            additionalProperties:
+                              type: string
+                            type: object
+                          provider:
+                            description: RuntimeProvider --
+                            type: string
+                          version:
+                            type: string
+                        required:
+                        - applicationClass
+                        - dependencies
+                        - provider
+                        - version
+                        type: object
+                      sources:
+                        items:
+                          description: SourceSpec --
+                          properties:
+                            compression:
+                              type: boolean
+                            content:
+                              type: string
+                            contentKey:
+                              type: string
+                            contentRef:
+                              type: string
+                            interceptors:
+                              description: Interceptors are optional identifiers the
+                                org.apache.camel.k.RoutesLoader uses to pre/post process
+                                sources
+                              items:
+                                type: string
+                              type: array
+                            language:
+                              description: Language --
+                              type: string
+                            loader:
+                              description: Loader is an optional id of the org.apache.camel.k.RoutesLoader
+                                that will interpret this source at runtime
+                              type: string
+                            name:
+                              type: string
+                            property-names:
+                              description: List of property names defined in the source
+                                (e.g. if type is "template")
+                              items:
+                                type: string
+                              type: array
+                            type:
+                              description: Type defines the kind of source described
+                                by this object
+                              type: string
+                          type: object
+                        type: array
+                      steps:
+                        items:
+                          type: string
+                        type: array
+                      timeout:
+                        type: string
+                      volumeMounts:
+                        items:
+                          description: VolumeMount describes a mounting of a Volume
+                            within a container.
+                          properties:
+                            mountPath:
+                              description: Path within the container at which the
+                                volume should be mounted.  Must not contain ':'.
+                              type: string
+                            mountPropagation:
+                              description: mountPropagation determines how mounts
+                                are propagated from the host to container and the
+                                other way around. When not set, MountPropagationNone
+                                is used. This field is beta in 1.10.
+                              type: string
+                            name:
+                              description: This must match the Name of a Volume.
+                              type: string
+                            readOnly:
+                              description: Mounted read-only if true, read-write otherwise
+                                (false or unspecified). Defaults to false.
+                              type: boolean
+                            subPath:
+                              description: Path within the volume from which the container's
+                                volume should be mounted. Defaults to "" (volume's
+                                root).
+                              type: string
+                            subPathExpr:
+                              description: Expanded path within the volume from which
+                                the container's volume should be mounted. Behaves
+                                similarly to SubPath but environment variable references
+                                $(VAR_NAME) are expanded using the container's environment.
+                                Defaults to "" (volume's root). SubPathExpr and SubPath
+                                are mutually exclusive.
+                              type: string
+                          required:
+                          - mountPath
+                          - name
+                          type: object
+                        type: array
+                      volumes:
+                        items:
+                          description: Volume represents a named volume in a pod that
+                            may be accessed by any container in the pod.
+                          properties:
+                            awsElasticBlockStore:
+                              description: 'AWSElasticBlockStore represents an AWS
+                                Disk resource that is attached to a kubelet''s host
+                                machine and then exposed to the pod. More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore'
+                              properties:
+                                fsType:
+                                  description: 'Filesystem type of the volume that
+                                    you want to mount. Tip: Ensure that the filesystem
+                                    type is supported by the host operating system.
+                                    Examples: "ext4", "xfs", "ntfs". Implicitly inferred
+                                    to be "ext4" if unspecified. More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
+                                    TODO: how do we prevent errors in the filesystem
+                                    from compromising the machine'
+                                  type: string
+                                partition:
+                                  description: 'The partition in the volume that you
+                                    want to mount. If omitted, the default is to mount
+                                    by volume name. Examples: For volume /dev/sda1,
+                                    you specify the partition as "1". Similarly, the
+                                    volume partition for /dev/sda is "0" (or you can
+                                    leave the property empty).'
+                                  format: int32
+                                  type: integer
+                                readOnly:
+                                  description: 'Specify "true" to force and set the
+                                    ReadOnly property in VolumeMounts to "true". If
+                                    omitted, the default is "false". More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore'
+                                  type: boolean
+                                volumeID:
+                                  description: 'Unique ID of the persistent disk resource
+                                    in AWS (Amazon EBS volume). More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore'
+                                  type: string
+                              required:
+                              - volumeID
+                              type: object
+                            azureDisk:
+                              description: AzureDisk represents an Azure Data Disk
+                                mount on the host and bind mount to the pod.
+                              properties:
+                                cachingMode:
+                                  description: 'Host Caching mode: None, Read Only,
+                                    Read Write.'
+                                  type: string
+                                diskName:
+                                  description: The Name of the data disk in the blob
+                                    storage
+                                  type: string
+                                diskURI:
+                                  description: The URI the data disk in the blob storage
+                                  type: string
+                                fsType:
+                                  description: Filesystem type to mount. Must be a
+                                    filesystem type supported by the host operating
+                                    system. Ex. "ext4", "xfs", "ntfs". Implicitly
+                                    inferred to be "ext4" if unspecified.
+                                  type: string
+                                kind:
+                                  description: 'Expected values Shared: multiple blob
+                                    disks per storage account  Dedicated: single blob
+                                    disk per storage account  Managed: azure managed
+                                    data disk (only in managed availability set).
+                                    defaults to shared'
+                                  type: string
+                                readOnly:
+                                  description: Defaults to false (read/write). ReadOnly
+                                    here will force the ReadOnly setting in VolumeMounts.
+                                  type: boolean
+                              required:
+                              - diskName
+                              - diskURI
+                              type: object
+                            azureFile:
+                              description: AzureFile represents an Azure File Service
+                                mount on the host and bind mount to the pod.
+                              properties:
+                                readOnly:
+                                  description: Defaults to false (read/write). ReadOnly
+                                    here will force the ReadOnly setting in VolumeMounts.
+                                  type: boolean
+                                secretName:
+                                  description: the name of secret that contains Azure
+                                    Storage Account Name and Key
+                                  type: string
+                                shareName:
+                                  description: Share Name
+                                  type: string
+                              required:
+                              - secretName
+                              - shareName
+                              type: object
+                            cephfs:
+                              description: CephFS represents a Ceph FS mount on the
+                                host that shares a pod's lifetime
+                              properties:
+                                monitors:
+                                  description: 'Required: Monitors is a collection
+                                    of Ceph monitors More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+                                  items:
+                                    type: string
+                                  type: array
+                                path:
+                                  description: 'Optional: Used as the mounted root,
+                                    rather than the full Ceph tree, default is /'
+                                  type: string
+                                readOnly:
+                                  description: 'Optional: Defaults to false (read/write).
+                                    ReadOnly here will force the ReadOnly setting
+                                    in VolumeMounts. More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+                                  type: boolean
+                                secretFile:
+                                  description: 'Optional: SecretFile is the path to
+                                    key ring for User, default is /etc/ceph/user.secret
+                                    More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+                                  type: string
+                                secretRef:
+                                  description: 'Optional: SecretRef is reference to
+                                    the authentication secret for User, default is
+                                    empty. More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+                                  properties:
+                                    name:
+                                      description: 'Name of the referent. More info:
+                                        https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+                                        TODO: Add other useful fields. apiVersion,
+                                        kind, uid?'
+                                      type: string
+                                  type: object
+                                user:
+                                  description: 'Optional: User is the rados user name,
+                                    default is admin More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+                                  type: string
+                              required:
+                              - monitors
+                              type: object
+                            cinder:
+                              description: 'Cinder represents a cinder volume attached
+                                and mounted on kubelets host machine. More info: https://examples.k8s.io/mysql-cinder-pd/README.md'
+                              properties:
+                                fsType:
+                                  description: 'Filesystem type to mount. Must be
+                                    a filesystem type supported by the host operating
+                                    system. Examples: "ext4", "xfs", "ntfs". Implicitly
+                                    inferred to be "ext4" if unspecified. More info:
+                                    https://examples.k8s.io/mysql-cinder-pd/README.md'
+                                  type: string
+                                readOnly:
+                                  description: 'Optional: Defaults to false (read/write).
+                                    ReadOnly here will force the ReadOnly setting
+                                    in VolumeMounts. More info: https://examples.k8s.io/mysql-cinder-pd/README.md'
+                                  type: boolean
+                                secretRef:
+                                  description: 'Optional: points to a secret object
+                                    containing parameters used to connect to OpenStack.'
+                                  properties:
+                                    name:
+                                      description: 'Name of the referent. More info:
+                                        https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+                                        TODO: Add other useful fields. apiVersion,
+                                        kind, uid?'
+                                      type: string
+                                  type: object
+                                volumeID:
+                                  description: 'volume id used to identify the volume
+                                    in cinder. More info: https://examples.k8s.io/mysql-cinder-pd/README.md'
+                                  type: string
+                              required:
+                              - volumeID
+                              type: object
+                            configMap:
+                              description: ConfigMap represents a configMap that should
+                                populate this volume
+                              properties:
+                                defaultMode:
+                                  description: 'Optional: mode bits to use on created
+                                    files by default. Must be a value between 0 and
+                                    0777. Defaults to 0644. Directories within the
+                                    path are not affected by this setting. This might
+                                    be in conflict with other options that affect
+                                    the file mode, like fsGroup, and the result can
+                                    be other mode bits set.'
+                                  format: int32
+                                  type: integer
+                                items:
+                                  description: If unspecified, each key-value pair
+                                    in the Data field of the referenced ConfigMap
+                                    will be projected into the volume as a file whose
+                                    name is the key and content is the value. If specified,
+                                    the listed keys will be projected into the specified
+                                    paths, and unlisted keys will not be present.
+                                    If a key is specified which is not present in
+                                    the ConfigMap, the volume setup will error unless
+                                    it is marked optional. Paths must be relative
+                                    and may not contain the '..' path or start with
+                                    '..'.
+                                  items:
+                                    description: Maps a string key to a path within
+                                      a volume.
+                                    properties:
+                                      key:
+                                        description: The key to project.
+                                        type: string
+                                      mode:
+                                        description: 'Optional: mode bits to use on
+                                          this file, must be a value between 0 and
+                                          0777. If not specified, the volume defaultMode
+                                          will be used. This might be in conflict
+                                          with other options that affect the file
+                                          mode, like fsGroup, and the result can be
+                                          other mode bits set.'
+                                        format: int32
+                                        type: integer
+                                      path:
+                                        description: The relative path of the file
+                                          to map the key to. May not be an absolute
+                                          path. May not contain the path element '..'.
+                                          May not start with the string '..'.
+                                        type: string
+                                    required:
+                                    - key
+                                    - path
+                                    type: object
+                                  type: array
+                                name:
+                                  description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+                                    TODO: Add other useful fields. apiVersion, kind,
+                                    uid?'
+                                  type: string
+                                optional:
+                                  description: Specify whether the ConfigMap or its
+                                    keys must be defined
+                                  type: boolean
+                              type: object
+                            csi:
+                              description: CSI (Container Storage Interface) represents
+                                storage that is handled by an external CSI driver
+                                (Alpha feature).
+                              properties:
+                                driver:
+                                  description: Driver is the name of the CSI driver
+                                    that handles this volume. Consult with your admin
+                                    for the correct name as registered in the cluster.
+                                  type: string
+                                fsType:
+                                  description: Filesystem type to mount. Ex. "ext4",
+                                    "xfs", "ntfs". If not provided, the empty value
+                                    is passed to the associated CSI driver which will
+                                    determine the default filesystem to apply.
+                                  type: string
+                                nodePublishSecretRef:
+                                  description: NodePublishSecretRef is a reference
+                                    to the secret object containing sensitive information
+                                    to pass to the CSI driver to complete the CSI
+                                    NodePublishVolume and NodeUnpublishVolume calls.
+                                    This field is optional, and  may be empty if no
+                                    secret is required. If the secret object contains
+                                    more than one secret, all secret references are
+                                    passed.
+                                  properties:
+                                    name:
+                                      description: 'Name of the referent. More info:
+                                        https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+                                        TODO: Add other useful fields. apiVersion,
+                                        kind, uid?'
+                                      type: string
+                                  type: object
+                                readOnly:
+                                  description: Specifies a read-only configuration
+                                    for the volume. Defaults to false (read/write).
+                                  type: boolean
+                                volumeAttributes:
+                                  additionalProperties:
+                                    type: string
+                                  description: VolumeAttributes stores driver-specific
+                                    properties that are passed to the CSI driver.
+                                    Consult your driver's documentation for supported
+                                    values.
+                                  type: object
+                              required:
+                              - driver
+                              type: object
+                            downwardAPI:
+                              description: DownwardAPI represents downward API about
+                                the pod that should populate this volume
+                              properties:
+                                defaultMode:
+                                  description: 'Optional: mode bits to use on created
+                                    files by default. Must be a value between 0 and
+                                    0777. Defaults to 0644. Directories within the
+                                    path are not affected by this setting. This might
+                                    be in conflict with other options that affect
+                                    the file mode, like fsGroup, and the result can
+                                    be other mode bits set.'
+                                  format: int32
+                                  type: integer
+                                items:
+                                  description: Items is a list of downward API volume
+                                    file
+                                  items:
+                                    description: DownwardAPIVolumeFile represents
+                                      information to create the file containing the
+                                      pod field
+                                    properties:
+                                      fieldRef:
+                                        description: 'Required: Selects a field of
+                                          the pod: only annotations, labels, name
+                                          and namespace are supported.'
+                                        properties:
+                                          apiVersion:
+                                            description: Version of the schema the
+                                              FieldPath is written in terms of, defaults
+                                              to "v1".
+                                            type: string
+                                          fieldPath:
+                                            description: Path of the field to select
+                                              in the specified API version.
+                                            type: string
+                                        required:
+                                        - fieldPath
+                                        type: object
+                                      mode:
+                                        description: 'Optional: mode bits to use on
+                                          this file, must be a value between 0 and
+                                          0777. If not specified, the volume defaultMode
+                                          will be used. This might be in conflict
+                                          with other options that affect the file
+                                          mode, like fsGroup, and the result can be
+                                          other mode bits set.'
+                                        format: int32
+                                        type: integer
+                                      path:
+                                        description: 'Required: Path is  the relative
+                                          path name of the file to be created. Must
+                                          not be absolute or contain the ''..'' path.
+                                          Must be utf-8 encoded. The first item of
+                                          the relative path must not start with ''..'''
+                                        type: string
+                                      resourceFieldRef:
+                                        description: 'Selects a resource of the container:
+                                          only resources limits and requests (limits.cpu,
+                                          limits.memory, requests.cpu and requests.memory)
+                                          are currently supported.'
+                                        properties:
+                                          containerName:
+                                            description: 'Container name: required
+                                              for volumes, optional for env vars'
+                                            type: string
+                                          divisor:
+                                            anyOf:
+                                            - type: integer
+                                            - type: string
+                                            description: Specifies the output format
+                                              of the exposed resources, defaults to
+                                              "1"
+                                            pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+                                            x-kubernetes-int-or-string: true
+                                          resource:
+                                            description: 'Required: resource to select'
+                                            type: string
+                                        required:
+                                        - resource
+                                        type: object
+                                    required:
+                                    - path
+                                    type: object
+                                  type: array
+                              type: object
+                            emptyDir:
+                              description: 'EmptyDir represents a temporary directory
+                                that shares a pod''s lifetime. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir'
+                              properties:
+                                medium:
+                                  description: 'What type of storage medium should
+                                    back this directory. The default is "" which means
+                                    to use the node''s default medium. Must be an
+                                    empty string (default) or Memory. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir'
+                                  type: string
+                                sizeLimit:
+                                  anyOf:
+                                  - type: integer
+                                  - type: string
+                                  description: 'Total amount of local storage required
+                                    for this EmptyDir volume. The size limit is also
+                                    applicable for memory medium. The maximum usage
+                                    on memory medium EmptyDir would be the minimum
+                                    value between the SizeLimit specified here and
+                                    the sum of memory limits of all containers in
+                                    a pod. The default is nil which means that the
+                                    limit is undefined. More info: http://kubernetes.io/docs/user-guide/volumes#emptydir'
+                                  pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+                                  x-kubernetes-int-or-string: true
+                              type: object
+                            fc:
+                              description: FC represents a Fibre Channel resource
+                                that is attached to a kubelet's host machine and then
+                                exposed to the pod.
+                              properties:
+                                fsType:
+                                  description: 'Filesystem type to mount. Must be
+                                    a filesystem type supported by the host operating
+                                    system. Ex. "ext4", "xfs", "ntfs". Implicitly
+                                    inferred to be "ext4" if unspecified. TODO: how
+                                    do we prevent errors in the filesystem from compromising
+                                    the machine'
+                                  type: string
+                                lun:
+                                  description: 'Optional: FC target lun number'
+                                  format: int32
+                                  type: integer
+                                readOnly:
+                                  description: 'Optional: Defaults to false (read/write).
+                                    ReadOnly here will force the ReadOnly setting
+                                    in VolumeMounts.'
+                                  type: boolean
+                                targetWWNs:
+                                  description: 'Optional: FC target worldwide names
+                                    (WWNs)'
+                                  items:
+                                    type: string
+                                  type: array
+                                wwids:
+                                  description: 'Optional: FC volume world wide identifiers
+                                    (wwids) Either wwids or combination of targetWWNs
+                                    and lun must be set, but not both simultaneously.'
+                                  items:
+                                    type: string
+                                  type: array
+                              type: object
+                            flexVolume:
+                              description: FlexVolume represents a generic volume
+                                resource that is provisioned/attached using an exec
+                                based plugin.
+                              properties:
+                                driver:
+                                  description: Driver is the name of the driver to
+                                    use for this volume.
+                                  type: string
+                                fsType:
+                                  description: Filesystem type to mount. Must be a
+                                    filesystem type supported by the host operating
+                                    system. Ex. "ext4", "xfs", "ntfs". The default
+                                    filesystem depends on FlexVolume script.
+                                  type: string
+                                options:
+                                  additionalProperties:
+                                    type: string
+                                  description: 'Optional: Extra command options if
+                                    any.'
+                                  type: object
+                                readOnly:
+                                  description: 'Optional: Defaults to false (read/write).
+                                    ReadOnly here will force the ReadOnly setting
+                                    in VolumeMounts.'
+                                  type: boolean
+                                secretRef:
+                                  description: 'Optional: SecretRef is reference to
+                                    the secret object containing sensitive information
+                                    to pass to the plugin scripts. This may be empty
+                                    if no secret object is specified. If the secret
+                                    object contains more than one secret, all secrets
+                                    are passed to the plugin scripts.'
+                                  properties:
+                                    name:
+                                      description: 'Name of the referent. More info:
+                                        https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+                                        TODO: Add other useful fields. apiVersion,
+                                        kind, uid?'
+                                      type: string
+                                  type: object
+                              required:
+                              - driver
+                              type: object
+                            flocker:
+                              description: Flocker represents a Flocker volume attached
+                                to a kubelet's host machine. This depends on the Flocker
+                                control service being running
+                              properties:
+                                datasetName:
+                                  description: Name of the dataset stored as metadata
+                                    -> name on the dataset for Flocker should be considered
+                                    as deprecated
+                                  type: string
+                                datasetUUID:
+                                  description: UUID of the dataset. This is unique
+                                    identifier of a Flocker dataset
+                                  type: string
+                              type: object
+                            gcePersistentDisk:
+                              description: 'GCEPersistentDisk represents a GCE Disk
+                                resource that is attached to a kubelet''s host machine
+                                and then exposed to the pod. More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk'
+                              properties:
+                                fsType:
+                                  description: 'Filesystem type of the volume that
+                                    you want to mount. Tip: Ensure that the filesystem
+                                    type is supported by the host operating system.
+                                    Examples: "ext4", "xfs", "ntfs". Implicitly inferred
+                                    to be "ext4" if unspecified. More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk
+                                    TODO: how do we prevent errors in the filesystem
+                                    from compromising the machine'
+                                  type: string
+                                partition:
+                                  description: 'The partition in the volume that you
+                                    want to mount. If omitted, the default is to mount
+                                    by volume name. Examples: For volume /dev/sda1,
+                                    you specify the partition as "1". Similarly, the
+                                    volume partition for /dev/sda is "0" (or you can
+                                    leave the property empty). More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk'
+                                  format: int32
+                                  type: integer
+                                pdName:
+                                  description: 'Unique name of the PD resource in
+                                    GCE. Used to identify the disk in GCE. More info:
+                                    https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk'
+                                  type: string
+                                readOnly:
+                                  description: 'ReadOnly here will force the ReadOnly
+                                    setting in VolumeMounts. Defaults to false. More
+                                    info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk'
+                                  type: boolean
+                              required:
+                              - pdName
+                              type: object
+                            gitRepo:
+                              description: 'GitRepo represents a git repository at
+                                a particular revision. DEPRECATED: GitRepo is deprecated.
+                                To provision a container with a git repo, mount an
+                                EmptyDir into an InitContainer that clones the repo
+                                using git, then mount the EmptyDir into the Pod''s
+                                container.'
+                              properties:
+                                directory:
+                                  description: Target directory name. Must not contain
+                                    or start with '..'.  If '.' is supplied, the volume
+                                    directory will be the git repository.  Otherwise,
+                                    if specified, the volume will contain the git
+                                    repository in the subdirectory with the given
+                                    name.
+                                  type: string
+                                repository:
+                                  description: Repository URL
+                                  type: string
+                                revision:
+                                  description: Commit hash for the specified revision.
+                                  type: string
+                              required:
+                              - repository
+                              type: object
+                            glusterfs:
+                              description: 'Glusterfs represents a Glusterfs mount
+                                on the host that shares a pod''s lifetime. More info:
+                                https://examples.k8s.io/volumes/glusterfs/README.md'
+                              properties:
+                                endpoints:
+                                  description: 'EndpointsName is the endpoint name
+                                    that details Glusterfs topology. More info: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod'
+                                  type: string
+                                path:
+                                  description: 'Path is the Glusterfs volume path.
+                                    More info: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod'
+                                  type: string
+                                readOnly:
+                                  description: 'ReadOnly here will force the Glusterfs
+                                    volume to be mounted with read-only permissions.
+                                    Defaults to false. More info: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod'
+                                  type: boolean
+                              required:
+                              - endpoints
+                              - path
+                              type: object
+                            hostPath:
+                              description: 'HostPath represents a pre-existing file
+                                or directory on the host machine that is directly
+                                exposed to the container. This is generally used for
+                                system agents or other privileged things that are
+                                allowed to see the host machine. Most containers will
+                                NOT need this. More info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath
+                                --- TODO(jonesdl) We need to restrict who can use
+                                host directory mounts and who can/can not mount host
+                                directories as read/write.'
+                              properties:
+                                path:
+                                  description: 'Path of the directory on the host.
+                                    If the path is a symlink, it will follow the link
+                                    to the real path. More info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath'
+                                  type: string
+                                type:
+                                  description: 'Type for HostPath Volume Defaults
+                                    to "" More info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath'
+                                  type: string
+                              required:
+                              - path
+                              type: object
+                            iscsi:
+                              description: 'ISCSI represents an ISCSI Disk resource
+                                that is attached to a kubelet''s host machine and
+                                then exposed to the pod. More info: https://examples.k8s.io/volumes/iscsi/README.md'
+                              properties:
+                                chapAuthDiscovery:
+                                  description: whether support iSCSI Discovery CHAP
+                                    authentication
+                                  type: boolean
+                                chapAuthSession:
+                                  description: whether support iSCSI Session CHAP
+                                    authentication
+                                  type: boolean
+                                fsType:
+                                  description: 'Filesystem type of the volume that
+                                    you want to mount. Tip: Ensure that the filesystem
+                                    type is supported by the host operating system.
+                                    Examples: "ext4", "xfs", "ntfs". Implicitly inferred
+                                    to be "ext4" if unspecified. More info: https://kubernetes.io/docs/concepts/storage/volumes#iscsi
+                                    TODO: how do we prevent errors in the filesystem
+                                    from compromising the machine'
+                                  type: string
+                                initiatorName:
+                                  description: Custom iSCSI Initiator Name. If initiatorName
+                                    is specified with iscsiInterface simultaneously,
+                                    new iSCSI interface <target portal>:<volume name>
+                                    will be created for the connection.
+                                  type: string
+                                iqn:
+                                  description: Target iSCSI Qualified Name.
+                                  type: string
+                                iscsiInterface:
+                                  description: iSCSI Interface Name that uses an iSCSI
+                                    transport. Defaults to 'default' (tcp).
+                                  type: string
+                                lun:
+                                  description: iSCSI Target Lun number.
+                                  format: int32
+                                  type: integer
+                                portals:
+                                  description: iSCSI Target Portal List. The portal
+                                    is either an IP or ip_addr:port if the port is
+                                    other than default (typically TCP ports 860 and
+                                    3260).
+                                  items:
+                                    type: string
+                                  type: array
+                                readOnly:
+                                  description: ReadOnly here will force the ReadOnly
+                                    setting in VolumeMounts. Defaults to false.
+                                  type: boolean
+                                secretRef:
+                                  description: CHAP Secret for iSCSI target and initiator
+                                    authentication
+                                  properties:
+                                    name:
+                                      description: 'Name of the referent. More info:
+                                        https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+                                        TODO: Add other useful fields. apiVersion,
+                                        kind, uid?'
+                                      type: string
+                                  type: object
+                                targetPortal:
+                                  description: iSCSI Target Portal. The Portal is
+                                    either an IP or ip_addr:port if the port is other
+                                    than default (typically TCP ports 860 and 3260).
+                                  type: string
+                              required:
+                              - iqn
+                              - lun
+                              - targetPortal
+                              type: object
+                            name:
+                              description: 'Volume''s name. Must be a DNS_LABEL and
+                                unique within the pod. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
+                              type: string
+                            nfs:
+                              description: 'NFS represents an NFS mount on the host
+                                that shares a pod''s lifetime More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs'
+                              properties:
+                                path:
+                                  description: 'Path that is exported by the NFS server.
+                                    More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs'
+                                  type: string
+                                readOnly:
+                                  description: 'ReadOnly here will force the NFS export
+                                    to be mounted with read-only permissions. Defaults
+                                    to false. More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs'
+                                  type: boolean
+                                server:
+                                  description: 'Server is the hostname or IP address
+                                    of the NFS server. More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs'
+                                  type: string
+                              required:
+                              - path
+                              - server
+                              type: object
+                            persistentVolumeClaim:
+                              description: 'PersistentVolumeClaimVolumeSource represents
+                                a reference to a PersistentVolumeClaim in the same
+                                namespace. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims'
+                              properties:
+                                claimName:
+                                  description: 'ClaimName is the name of a PersistentVolumeClaim
+                                    in the same namespace as the pod using this volume.
+                                    More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims'
+                                  type: string
+                                readOnly:
+                                  description: Will force the ReadOnly setting in
+                                    VolumeMounts. Default false.
+                                  type: boolean
+                              required:
+                              - claimName
+                              type: object
+                            photonPersistentDisk:
+                              description: PhotonPersistentDisk represents a PhotonController
+                                persistent disk attached and mounted on kubelets host
+                                machine
+                              properties:
+                                fsType:
+                                  description: Filesystem type to mount. Must be a
+                                    filesystem type supported by the host operating
+                                    system. Ex. "ext4", "xfs", "ntfs". Implicitly
+                                    inferred to be "ext4" if unspecified.
+                                  type: string
+                                pdID:
+                                  description: ID that identifies Photon Controller
+                                    persistent disk
+                                  type: string
+                              required:
+                              - pdID
+                              type: object
+                            portworxVolume:
+                              description: PortworxVolume represents a portworx volume
+                                attached and mounted on kubelets host machine
+                              properties:
+                                fsType:
+                                  description: FSType represents the filesystem type
+                                    to mount Must be a filesystem type supported by
+                                    the host operating system. Ex. "ext4", "xfs".
+                                    Implicitly inferred to be "ext4" if unspecified.
+                                  type: string
+                                readOnly:
+                                  description: Defaults to false (read/write). ReadOnly
+                                    here will force the ReadOnly setting in VolumeMounts.
+                                  type: boolean
+                                volumeID:
+                                  description: VolumeID uniquely identifies a Portworx
+                                    volume
+                                  type: string
+                              required:
+                              - volumeID
+                              type: object
+                            projected:
+                              description: Items for all in one resources secrets,
+                                configmaps, and downward API
+                              properties:
+                                defaultMode:
+                                  description: Mode bits to use on created files by
+                                    default. Must be a value between 0 and 0777. Directories
+                                    within the path are not affected by this setting.
+                                    This might be in conflict with other options that
+                                    affect the file mode, like fsGroup, and the result
+                                    can be other mode bits set.
+                                  format: int32
+                                  type: integer
+                                sources:
+                                  description: list of volume projections
+                                  items:
+                                    description: Projection that may be projected
+                                      along with other supported volume types
+                                    properties:
+                                      configMap:
+                                        description: information about the configMap
+                                          data to project
+                                        properties:
+                                          items:
+                                            description: If unspecified, each key-value
+                                              pair in the Data field of the referenced
+                                              ConfigMap will be projected into the
+                                              volume as a file whose name is the key
+                                              and content is the value. If specified,
+                                              the listed keys will be projected into
+                                              the specified paths, and unlisted keys
+                                              will not be present. If a key is specified
+                                              which is not present in the ConfigMap,
+                                              the volume setup will error unless it
+                                              is marked optional. Paths must be relative
+                                              and may not contain the '..' path or
+                                              start with '..'.
+                                            items:
+                                              description: Maps a string key to a
+                                                path within a volume.
+                                              properties:
+                                                key:
+                                                  description: The key to project.
+                                                  type: string
+                                                mode:
+                                                  description: 'Optional: mode bits
+                                                    to use on this file, must be a
+                                                    value between 0 and 0777. If not
+                                                    specified, the volume defaultMode
+                                                    will be used. This might be in
+                                                    conflict with other options that
+                                                    affect the file mode, like fsGroup,
+                                                    and the result can be other mode
+                                                    bits set.'
+                                                  format: int32
+                                                  type: integer
+                                                path:
+                                                  description: The relative path of
+                                                    the file to map the key to. May
+                                                    not be an absolute path. May not
+                                                    contain the path element '..'.
+                                                    May not start with the string
+                                                    '..'.
+                                                  type: string
+                                              required:
+                                              - key
+                                              - path
+                                              type: object
+                                            type: array
+                                          name:
+                                            description: 'Name of the referent. More
+                                              info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+                                              TODO: Add other useful fields. apiVersion,
+                                              kind, uid?'
+                                            type: string
+                                          optional:
+                                            description: Specify whether the ConfigMap
+                                              or its keys must be defined
+                                            type: boolean
+                                        type: object
+                                      downwardAPI:
+                                        description: information about the downwardAPI
+                                          data to project
+                                        properties:
+                                          items:
+                                            description: Items is a list of DownwardAPIVolume
+                                              file
+                                            items:
+                                              description: DownwardAPIVolumeFile represents
+                                                information to create the file containing
+                                                the pod field
+                                              properties:
+                                                fieldRef:
+                                                  description: 'Required: Selects
+                                                    a field of the pod: only annotations,
+                                                    labels, name and namespace are
+                                                    supported.'
+                                                  properties:
+                                                    apiVersion:
+                                                      description: Version of the
+                                                        schema the FieldPath is written
+                                                        in terms of, defaults to "v1".
+                                                      type: string
+                                                    fieldPath:
+                                                      description: Path of the field
+                                                        to select in the specified
+                                                        API version.
+                                                      type: string
+                                                  required:
+                                                  - fieldPath
+                                                  type: object
+                                                mode:
+                                                  description: 'Optional: mode bits
+                                                    to use on this file, must be a
+                                                    value between 0 and 0777. If not
+                                                    specified, the volume defaultMode
+                                                    will be used. This might be in
+                                                    conflict with other options that
+                                                    affect the file mode, like fsGroup,
+                                                    and the result can be other mode
+                                                    bits set.'
+                                                  format: int32
+                                                  type: integer
+                                                path:
+                                                  description: 'Required: Path is  the
+                                                    relative path name of the file
+                                                    to be created. Must not be absolute
+                                                    or contain the ''..'' path. Must
+                                                    be utf-8 encoded. The first item
+                                                    of the relative path must not
+                                                    start with ''..'''
+                                                  type: string
+                                                resourceFieldRef:
+                                                  description: 'Selects a resource
+                                                    of the container: only resources
+                                                    limits and requests (limits.cpu,
+                                                    limits.memory, requests.cpu and
+                                                    requests.memory) are currently
+                                                    supported.'
+                                                  properties:
+                                                    containerName:
+                                                      description: 'Container name:
+                                                        required for volumes, optional
+                                                        for env vars'
+                                                      type: string
+                                                    divisor:
+                                                      anyOf:
+                                                      - type: integer
+                                                      - type: string
+                                                      description: Specifies the output
+                                                        format of the exposed resources,
+                                                        defaults to "1"
+                                                      pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+                                                      x-kubernetes-int-or-string: true
+                                                    resource:
+                                                      description: 'Required: resource
+                                                        to select'
+                                                      type: string
+                                                  required:
+                                                  - resource
+                                                  type: object
+                                              required:
+                                              - path
+                                              type: object
+                                            type: array
+                                        type: object
+                                      secret:
+                                        description: information about the secret
+                                          data to project
+                                        properties:
+                                          items:
+                                            description: If unspecified, each key-value
+                                              pair in the Data field of the referenced
+                                              Secret will be projected into the volume
+                                              as a file whose name is the key and
+                                              content is the value. If specified,
+                                              the listed keys will be projected into
+                                              the specified paths, and unlisted keys
+                                              will not be present. If a key is specified
+                                              which is not present in the Secret,
+                                              the volume setup will error unless it
+                                              is marked optional. Paths must be relative
+                                              and may not contain the '..' path or
+                                              start with '..'.
+                                            items:
+                                              description: Maps a string key to a
+                                                path within a volume.
+                                              properties:
+                                                key:
+                                                  description: The key to project.
+                                                  type: string
+                                                mode:
+                                                  description: 'Optional: mode bits
+                                                    to use on this file, must be a
+                                                    value between 0 and 0777. If not
+                                                    specified, the volume defaultMode
+                                                    will be used. This might be in
+                                                    conflict with other options that
+                                                    affect the file mode, like fsGroup,
+                                                    and the result can be other mode
+                                                    bits set.'
+                                                  format: int32
+                                                  type: integer
+                                                path:
+                                                  description: The relative path of
+                                                    the file to map the key to. May
+                                                    not be an absolute path. May not
+                                                    contain the path element '..'.
+                                                    May not start with the string
+                                                    '..'.
+                                                  type: string
+                                              required:
+                                              - key
+                                              - path
+                                              type: object
+                                            type: array
+                                          name:
+                                            description: 'Name of the referent. More
+                                              info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+                                              TODO: Add other useful fields. apiVersion,
+                                              kind, uid?'
+                                            type: string
+                                          optional:
+                                            description: Specify whether the Secret
+                                              or its key must be defined
+                                            type: boolean
+                                        type: object
+                                      serviceAccountToken:
+                                        description: information about the serviceAccountToken
+                                          data to project
+                                        properties:
+                                          audience:
+                                            description: Audience is the intended
+                                              audience of the token. A recipient of
+                                              a token must identify itself with an
+                                              identifier specified in the audience
+                                              of the token, and otherwise should reject
+                                              the token. The audience defaults to
+                                              the identifier of the apiserver.
+                                            type: string
+                                          expirationSeconds:
+                                            description: ExpirationSeconds is the
+                                              requested duration of validity of the
+                                              service account token. As the token
+                                              approaches expiration, the kubelet volume
+                                              plugin will proactively rotate the service
+                                              account token. The kubelet will start
+                                              trying to rotate the token if the token
+                                              is older than 80 percent of its time
+                                              to live or if the token is older than
+                                              24 hours.Defaults to 1 hour and must
+                                              be at least 10 minutes.
+                                            format: int64
+                                            type: integer
+                                          path:
+                                            description: Path is the path relative
+                                              to the mount point of the file to project
+                                              the token into.
+                                            type: string
+                                        required:
+                                        - path
+                                        type: object
+                                    type: object
+                                  type: array
+                              required:
+                              - sources
+                              type: object
+                            quobyte:
+                              description: Quobyte represents a Quobyte mount on the
+                                host that shares a pod's lifetime
+                              properties:
+                                group:
+                                  description: Group to map volume access to Default
+                                    is no group
+                                  type: string
+                                readOnly:
+                                  description: ReadOnly here will force the Quobyte
+                                    volume to be mounted with read-only permissions.
+                                    Defaults to false.
+                                  type: boolean
+                                registry:
+                                  description: Registry represents a single or multiple
+                                    Quobyte Registry services specified as a string
+                                    as host:port pair (multiple entries are separated
+                                    with commas) which acts as the central registry
+                                    for volumes
+                                  type: string
+                                tenant:
+                                  description: Tenant owning the given Quobyte volume
+                                    in the Backend Used with dynamically provisioned
+                                    Quobyte volumes, value is set by the plugin
+                                  type: string
+                                user:
+                                  description: User to map volume access to Defaults
+                                    to serivceaccount user
+                                  type: string
+                                volume:
+                                  description: Volume is a string that references
+                                    an already created Quobyte volume by name.
+                                  type: string
+                              required:
+                              - registry
+                              - volume
+                              type: object
+                            rbd:
+                              description: 'RBD represents a Rados Block Device mount
+                                on the host that shares a pod''s lifetime. More info:
+                                https://examples.k8s.io/volumes/rbd/README.md'
+                              properties:
+                                fsType:
+                                  description: 'Filesystem type of the volume that
+                                    you want to mount. Tip: Ensure that the filesystem
+                                    type is supported by the host operating system.
+                                    Examples: "ext4", "xfs", "ntfs". Implicitly inferred
+                                    to be "ext4" if unspecified. More info: https://kubernetes.io/docs/concepts/storage/volumes#rbd
+                                    TODO: how do we prevent errors in the filesystem
+                                    from compromising the machine'
+                                  type: string
+                                image:
+                                  description: 'The rados image name. More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it'
+                                  type: string
+                                keyring:
+                                  description: 'Keyring is the path to key ring for
+                                    RBDUser. Default is /etc/ceph/keyring. More info:
+                                    https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it'
+                                  type: string
+                                monitors:
+                                  description: 'A collection of Ceph monitors. More
+                                    info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it'
+                                  items:
+                                    type: string
+                                  type: array
+                                pool:
+                                  description: 'The rados pool name. Default is rbd.
+                                    More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it'
+                                  type: string
+                                readOnly:
+                                  description: 'ReadOnly here will force the ReadOnly
+                                    setting in VolumeMounts. Defaults to false. More
+                                    info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it'
+                                  type: boolean
+                                secretRef:
+                                  description: 'SecretRef is name of the authentication
+                                    secret for RBDUser. If provided overrides keyring.
+                                    Default is nil. More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it'
+                                  properties:
+                                    name:
+                                      description: 'Name of the referent. More info:
+                                        https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+                                        TODO: Add other useful fields. apiVersion,
+                                        kind, uid?'
+                                      type: string
+                                  type: object
+                                user:
+                                  description: 'The rados user name. Default is admin.
+                                    More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it'
+                                  type: string
+                              required:
+                              - image
+                              - monitors
+                              type: object
+                            scaleIO:
+                              description: ScaleIO represents a ScaleIO persistent
+                                volume attached and mounted on Kubernetes nodes.
+                              properties:
+                                fsType:
+                                  description: Filesystem type to mount. Must be a
+                                    filesystem type supported by the host operating
+                                    system. Ex. "ext4", "xfs", "ntfs". Default is
+                                    "xfs".
+                                  type: string
+                                gateway:
+                                  description: The host address of the ScaleIO API
+                                    Gateway.
+                                  type: string
+                                protectionDomain:
+                                  description: The name of the ScaleIO Protection
+                                    Domain for the configured storage.
+                                  type: string
+                                readOnly:
+                                  description: Defaults to false (read/write). ReadOnly
+                                    here will force the ReadOnly setting in VolumeMounts.
+                                  type: boolean
+                                secretRef:
+                                  description: SecretRef references to the secret
+                                    for ScaleIO user and other sensitive information.
+                                    If this is not provided, Login operation will
+                                    fail.
+                                  properties:
+                                    name:
+                                      description: 'Name of the referent. More info:
+                                        https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+                                        TODO: Add other useful fields. apiVersion,
+                                        kind, uid?'
+                                      type: string
+                                  type: object
+                                sslEnabled:
+                                  description: Flag to enable/disable SSL communication
+                                    with Gateway, default false
+                                  type: boolean
+                                storageMode:
+                                  description: Indicates whether the storage for a
+                                    volume should be ThickProvisioned or ThinProvisioned.
+                                    Default is ThinProvisioned.
+                                  type: string
+                                storagePool:
+                                  description: The ScaleIO Storage Pool associated
+                                    with the protection domain.
+                                  type: string
+                                system:
+                                  description: The name of the storage system as configured
+                                    in ScaleIO.
+                                  type: string
+                                volumeName:
+                                  description: The name of a volume already created
+                                    in the ScaleIO system that is associated with
+                                    this volume source.
+                                  type: string
+                              required:
+                              - gateway
+                              - secretRef
+                              - system
+                              type: object
+                            secret:
+                              description: 'Secret represents a secret that should
+                                populate this volume. More info: https://kubernetes.io/docs/concepts/storage/volumes#secret'
+                              properties:
+                                defaultMode:
+                                  description: 'Optional: mode bits to use on created
+                                    files by default. Must be a value between 0 and
+                                    0777. Defaults to 0644. Directories within the
+                                    path are not affected by this setting. This might
+                                    be in conflict with other options that affect
+                                    the file mode, like fsGroup, and the result can
+                                    be other mode bits set.'
+                                  format: int32
+                                  type: integer
+                                items:
+                                  description: If unspecified, each key-value pair
+                                    in the Data field of the referenced Secret will
+                                    be projected into the volume as a file whose name
+                                    is the key and content is the value. If specified,
+                                    the listed keys will be projected into the specified
+                                    paths, and unlisted keys will not be present.
+                                    If a key is specified which is not present in
+                                    the Secret, the volume setup will error unless
+                                    it is marked optional. Paths must be relative
+                                    and may not contain the '..' path or start with
+                                    '..'.
+                                  items:
+                                    description: Maps a string key to a path within
+                                      a volume.
+                                    properties:
+                                      key:
+                                        description: The key to project.
+                                        type: string
+                                      mode:
+                                        description: 'Optional: mode bits to use on
+                                          this file, must be a value between 0 and
+                                          0777. If not specified, the volume defaultMode
+                                          will be used. This might be in conflict
+                                          with other options that affect the file
+                                          mode, like fsGroup, and the result can be
+                                          other mode bits set.'
+                                        format: int32
+                                        type: integer
+                                      path:
+                                        description: The relative path of the file
+                                          to map the key to. May not be an absolute
+                                          path. May not contain the path element '..'.
+                                          May not start with the string '..'.
+                                        type: string
+                                    required:
+                                    - key
+                                    - path
+                                    type: object
+                                  type: array
+                                optional:
+                                  description: Specify whether the Secret or its keys
+                                    must be defined
+                                  type: boolean
+                                secretName:
+                                  description: 'Name of the secret in the pod''s namespace
+                                    to use. More info: https://kubernetes.io/docs/concepts/storage/volumes#secret'
+                                  type: string
+                              type: object
+                            storageos:
+                              description: StorageOS represents a StorageOS volume
+                                attached and mounted on Kubernetes nodes.
+                              properties:
+                                fsType:
+                                  description: Filesystem type to mount. Must be a
+                                    filesystem type supported by the host operating
+                                    system. Ex. "ext4", "xfs", "ntfs". Implicitly
+                                    inferred to be "ext4" if unspecified.
+                                  type: string
+                                readOnly:
+                                  description: Defaults to false (read/write). ReadOnly
+                                    here will force the ReadOnly setting in VolumeMounts.
+                                  type: boolean
+                                secretRef:
+                                  description: SecretRef specifies the secret to use
+                                    for obtaining the StorageOS API credentials.  If
+                                    not specified, default values will be attempted.
+                                  properties:
+                                    name:
+                                      description: 'Name of the referent. More info:
+                                        https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+                                        TODO: Add other useful fields. apiVersion,
+                                        kind, uid?'
+                                      type: string
+                                  type: object
+                                volumeName:
+                                  description: VolumeName is the human-readable name
+                                    of the StorageOS volume.  Volume names are only
+                                    unique within a namespace.
+                                  type: string
+                                volumeNamespace:
+                                  description: VolumeNamespace specifies the scope
+                                    of the volume within StorageOS.  If no namespace
+                                    is specified then the Pod's namespace will be
+                                    used.  This allows the Kubernetes name scoping
+                                    to be mirrored within StorageOS for tighter integration.
+                                    Set VolumeName to any name to override the default
+                                    behaviour. Set to "default" if you are not using
+                                    namespaces within StorageOS. Namespaces that do
+                                    not pre-exist within StorageOS will be created.
+                                  type: string
+                              type: object
+                            vsphereVolume:
+                              description: VsphereVolume represents a vSphere volume
+                                attached and mounted on kubelets host machine
+                              properties:
+                                fsType:
+                                  description: Filesystem type to mount. Must be a
+                                    filesystem type supported by the host operating
+                                    system. Ex. "ext4", "xfs", "ntfs". Implicitly
+                                    inferred to be "ext4" if unspecified.
+                                  type: string
+                                storagePolicyID:
+                                  description: Storage Policy Based Management (SPBM)
+                                    profile ID associated with the StoragePolicyName.
+                                  type: string
+                                storagePolicyName:
+                                  description: Storage Policy Based Management (SPBM)
+                                    profile name.
+                                  type: string
+                                volumePath:
+                                  description: Path that identifies vSphere volume
+                                    vmdk
+                                  type: string
+                              required:
+                              - volumePath
+                              type: object
+                          required:
+                          - name
+                          type: object
+                        type: array
+                    type: object
+                  image:
+                    description: ImageTask --
+                    properties:
+                      affinity:
+                        description: Affinity is a group of affinity scheduling rules.
+                        properties:
+                          nodeAffinity:
+                            description: Describes node affinity scheduling rules
+                              for the pod.
+                            properties:
+                              preferredDuringSchedulingIgnoredDuringExecution:
+                                description: The scheduler will prefer to schedule
+                                  pods to nodes that satisfy the affinity expressions
+                                  specified by this field, but it may choose a node
+                                  that violates one or more of the expressions. The
+                                  node that is most preferred is the one with the
+                                  greatest sum of weights, i.e. for each node that
+                                  meets all of the scheduling requirements (resource
+                                  request, requiredDuringScheduling affinity expressions,
+                                  etc.), compute a sum by iterating through the elements
+                                  of this field and adding "weight" to the sum if
+                                  the node matches the corresponding matchExpressions;
+                                  the node(s) with the highest sum are the most preferred.
+                                items:
+                                  description: An empty preferred scheduling term
+                                    matches all objects with implicit weight 0 (i.e.
+                                    it's a no-op). A null preferred scheduling term
+                                    matches no objects (i.e. is also a no-op).
+                                  properties:
+                                    preference:
+                                      description: A node selector term, associated
+                                        with the corresponding weight.
+                                      properties:
+                                        matchExpressions:
+                                          description: A list of node selector requirements
+                                            by node's labels.
+                                          items:
+                                            description: A node selector requirement
+                                              is a selector that contains values,
+                                              a key, and an operator that relates
+                                              the key and values.
+                                            properties:
+                                              key:
+                                                description: The label key that the
+                                                  selector applies to.
+                                                type: string
+                                              operator:
+                                                description: Represents a key's relationship
+                                                  to a set of values. Valid operators
+                                                  are In, NotIn, Exists, DoesNotExist.
+                                                  Gt, and Lt.
+                                                type: string
+                                              values:
+                                                description: An array of string values.
+                                                  If the operator is In or NotIn,
+                                                  the values array must be non-empty.
+                                                  If the operator is Exists or DoesNotExist,
+                                                  the values array must be empty.
+                                                  If the operator is Gt or Lt, the
+                                                  values array must have a single
+                                                  element, which will be interpreted
+                                                  as an integer. This array is replaced
+                                                  during a strategic merge patch.
+                                                items:
+                                                  type: string
+                                                type: array
+                                            required:
+                                            - key
+                                            - operator
+                                            type: object
+                                          type: array
+                                        matchFields:
+                                          description: A list of node selector requirements
+                                            by node's fields.
+                                          items:
+                                            description: A node selector requirement
+                                              is a selector that contains values,
+                                              a key, and an operator that relates
+                                              the key and values.
+                                            properties:
+                                              key:
+                                                description: The label key that the
+                                                  selector applies to.
+                                                type: string
+                                              operator:
+                                                description: Represents a key's relationship
+                                                  to a set of values. Valid operators
+                                                  are In, NotIn, Exists, DoesNotExist.
+                                                  Gt, and Lt.
+                                                type: string
+                                              values:
+                                                description: An array of string values.
+                                                  If the operator is In or NotIn,
+                                                  the values array must be non-empty.
+                                                  If the operator is Exists or DoesNotExist,
+                                                  the values array must be empty.
+                                                  If the operator is Gt or Lt, the
+                                                  values array must have a single
+                                                  element, which will be interpreted
+                                                  as an integer. This array is replaced
+                                                  during a strategic merge patch.
+                                                items:
+                                                  type: string
+                                                type: array
+                                            required:
+                                            - key
+                                            - operator
+                                            type: object
+                                          type: array
+                                      type: object
+                                    weight:
+                                      description: Weight associated with matching
+                                        the corresponding nodeSelectorTerm, in the
+                                        range 1-100.
+                                      format: int32
+                                      type: integer
+                                  required:
+                                  - preference
+                                  - weight
+                                  type: object
+                                type: array
+                              requiredDuringSchedulingIgnoredDuringExecution:
+                                description: If the affinity requirements specified
+                                  by this field are not met at scheduling time, the
+                                  pod will not be scheduled onto the node. If the
+                                  affinity requirements specified by this field cease
+                                  to be met at some point during pod execution (e.g.
+                                  due to an update), the system may or may not try
+                                  to eventually evict the pod from its node.
+                                properties:
+                                  nodeSelectorTerms:
+                                    description: Required. A list of node selector
+                                      terms. The terms are ORed.
+                                    items:
+                                      description: A null or empty node selector term
+                                        matches no objects. The requirements of them
+                                        are ANDed. The TopologySelectorTerm type implements
+                                        a subset of the NodeSelectorTerm.
+                                      properties:
+                                        matchExpressions:
+                                          description: A list of node selector requirements
+                                            by node's labels.
+                                          items:
+                                            description: A node selector requirement
+                                              is a selector that contains values,
+                                              a key, and an operator that relates
+                                              the key and values.
+                                            properties:
+                                              key:
+                                                description: The label key that the
+                                                  selector applies to.
+                                                type: string
+                                              operator:
+                                                description: Represents a key's relationship
+                                                  to a set of values. Valid operators
+                                                  are In, NotIn, Exists, DoesNotExist.
+                                                  Gt, and Lt.
+                                                type: string
+                                              values:
+                                                description: An array of string values.
+                                                  If the operator is In or NotIn,
+                                                  the values array must be non-empty.
+                                                  If the operator is Exists or DoesNotExist,
+                                                  the values array must be empty.
+                                                  If the operator is Gt or Lt, the
+                                                  values array must have a single
+                                                  element, which will be interpreted
+                                                  as an integer. This array is replaced
+                                                  during a strategic merge patch.
+                                                items:
+                                                  type: string
+                                                type: array
+                                            required:
+                                            - key
+                                            - operator
+                                            type: object
+                                          type: array
+                                        matchFields:
+                                          description: A list of node selector requirements
+                                            by node's fields.
+                                          items:
+                                            description: A node selector requirement
+                                              is a selector that contains values,
+                                              a key, and an operator that relates
+                                              the key and values.
+                                            properties:
+                                              key:
+                                                description: The label key that the
+                                                  selector applies to.
+                                                type: string
+                                              operator:
+                                                description: Represents a key's relationship
+                                                  to a set of values. Valid operators
+                                                  are In, NotIn, Exists, DoesNotExist.
+                                                  Gt, and Lt.
+                                                type: string
+                                              values:
+                                                description: An array of string values.
+                                                  If the operator is In or NotIn,
+                                                  the values array must be non-empty.
+                                                  If the operator is Exists or DoesNotExist,
+                                                  the values array must be empty.
+                                                  If the operator is Gt or Lt, the
+                                                  values array must have a single
+                                                  element, which will be interpreted
+                                                  as an integer. This array is replaced
+                                                  during a strategic merge patch.
+                                                items:
+                                                  type: string
+                                                type: array
+                                            required:
+                                            - key
+                                            - operator
+                                            type: object
+                                          type: array
+                                      type: object
+                                    type: array
+                                required:
+                                - nodeSelectorTerms
+                                type: object
+                            type: object
+                          podAffinity:
+                            description: Describes pod affinity scheduling rules (e.g.
+                              co-locate this pod in the same node, zone, etc. as some
+                              other pod(s)).
+                            properties:
+                              preferredDuringSchedulingIgnoredDuringExecution:
+                                description: The scheduler will prefer to schedule
+                                  pods to nodes that satisfy the affinity expressions
+                                  specified by this field, but it may choose a node
+                                  that violates one or more of the expressions. The
+                                  node that is most preferred is the one with the
+                                  greatest sum of weights, i.e. for each node that
+                                  meets all of the scheduling requirements (resource
+                                  request, requiredDuringScheduling affinity expressions,
+                                  etc.), compute a sum by iterating through the elements
+                                  of this field and adding "weight" to the sum if
+                                  the node has pods which matches the corresponding
+                                  podAffinityTerm; the node(s) with the highest sum
+                                  are the most preferred.
+                                items:
+                                  description: The weights of all of the matched WeightedPodAffinityTerm
+                                    fields are added per-node to find the most preferred
+                                    node(s)
+                                  properties:
+                                    podAffinityTerm:
+                                      description: Required. A pod affinity term,
+                                        associated with the corresponding weight.
+                                      properties:
+                                        labelSelector:
+                                          description: A label query over a set of
+                                            resources, in this case pods.
+                                          properties:
+                                            matchExpressions:
+                                              description: matchExpressions is a list
+                                                of label selector requirements. The
+                                                requirements are ANDed.
+                                              items:
+                                                description: A label selector requirement
+                                                  is a selector that contains values,
+                                                  a key, and an operator that relates
+                                                  the key and values.
+                                                properties:
+                                                  key:
+                                                    description: key is the label
+                                                      key that the selector applies
+                                                      to.
+                                                    type: string
+                                                  operator:
+                                                    description: operator represents
+                                                      a key's relationship to a set
+                                                      of values. Valid operators are
+                                                      In, NotIn, Exists and DoesNotExist.
+                                                    type: string
+                                                  values:
+                                                    description: values is an array
+                                                      of string values. If the operator
+                                                      is In or NotIn, the values array
+                                                      must be non-empty. If the operator
+                                                      is Exists or DoesNotExist, the
+                                                      values array must be empty.
+                                                      This array is replaced during
+                                                      a strategic merge patch.
+                                                    items:
+                                                      type: string
+                                                    type: array
+                                                required:
+                                                - key
+                                                - operator
+                                                type: object
+                                              type: array
+                                            matchLabels:
+                                              additionalProperties:
+                                                type: string
+                                              description: matchLabels is a map of
+                                                {key,value} pairs. A single {key,value}
+                                                in the matchLabels map is equivalent
+                                                to an element of matchExpressions,
+                                                whose key field is "key", the operator
+                                                is "In", and the values array contains
+                                                only "value". The requirements are
+                                                ANDed.
+                                              type: object
+                                          type: object
+                                        namespaces:
+                                          description: namespaces specifies which
+                                            namespaces the labelSelector applies to
+                                            (matches against); null or empty list
+                                            means "this pod's namespace"
+                                          items:
+                                            type: string
+                                          type: array
+                                        topologyKey:
+                                          description: This pod should be co-located
+                                            (affinity) or not co-located (anti-affinity)
+                                            with the pods matching the labelSelector
+                                            in the specified namespaces, where co-located
+                                            is defined as running on a node whose
+                                            value of the label with key topologyKey
+                                            matches that of any node on which any
+                                            of the selected pods is running. Empty
+                                            topologyKey is not allowed.
+                                          type: string
+                                      required:
+                                      - topologyKey
+                                      type: object
+                                    weight:
+                                      description: weight associated with matching
+                                        the corresponding podAffinityTerm, in the
+                                        range 1-100.
+                                      format: int32
+                                      type: integer
+                                  required:
+                                  - podAffinityTerm
+                                  - weight
+                                  type: object
+                                type: array
+                              requiredDuringSchedulingIgnoredDuringExecution:
+                                description: If the affinity requirements specified
+                                  by this field are not met at scheduling time, the
+                                  pod will not be scheduled onto the node. If the
+                                  affinity requirements specified by this field cease
+                                  to be met at some point during pod execution (e.g.
+                                  due to a pod label update), the system may or may
+                                  not try to eventually evict the pod from its node.
+                                  When there are multiple elements, the lists of nodes
+                                  corresponding to each podAffinityTerm are intersected,
+                                  i.e. all terms must be satisfied.
+                                items:
+                                  description: Defines a set of pods (namely those
+                                    matching the labelSelector relative to the given
+                                    namespace(s)) that this pod should be co-located
+                                    (affinity) or not co-located (anti-affinity) with,
+                                    where co-located is defined as running on a node
+                                    whose value of the label with key <topologyKey>
+                                    matches that of any node on which a pod of the
+                                    set of pods is running
+                                  properties:
+                                    labelSelector:
+                                      description: A label query over a set of resources,
+                                        in this case pods.
+                                      properties:
+                                        matchExpressions:
+                                          description: matchExpressions is a list
+                                            of label selector requirements. The requirements
+                                            are ANDed.
+                                          items:
+                                            description: A label selector requirement
+                                              is a selector that contains values,
+                                              a key, and an operator that relates
+                                              the key and values.
+                                            properties:
+                                              key:
+                                                description: key is the label key
+                                                  that the selector applies to.
+                                                type: string
+                                              operator:
+                                                description: operator represents a
+                                                  key's relationship to a set of values.
+                                                  Valid operators are In, NotIn, Exists
+                                                  and DoesNotExist.
+                                                type: string
+                                              values:
+                                                description: values is an array of
+                                                  string values. If the operator is
+                                                  In or NotIn, the values array must
+                                                  be non-empty. If the operator is
+                                                  Exists or DoesNotExist, the values
+                                                  array must be empty. This array
+                                                  is replaced during a strategic merge
+                                                  patch.
+                                                items:
+                                                  type: string
+                                                type: array
+                                            required:
+                                            - key
+                                            - operator
+                                            type: object
+                                          type: array
+                                        matchLabels:
+                                          additionalProperties:
+                                            type: string
+                                          description: matchLabels is a map of {key,value}
+                                            pairs. A single {key,value} in the matchLabels
+                                            map is equivalent to an element of matchExpressions,
+                                            whose key field is "key", the operator
+                                            is "In", and the values array contains
+                                            only "value". The requirements are ANDed.
+                                          type: object
+                                      type: object
+                                    namespaces:
+                                      description: namespaces specifies which namespaces
+                                        the labelSelector applies to (matches against);
+                                        null or empty list means "this pod's namespace"
+                                      items:
+                                        type: string
+                                      type: array
+                                    topologyKey:
+                                      description: This pod should be co-located (affinity)
+                                        or not co-located (anti-affinity) with the
+                                        pods matching the labelSelector in the specified
+                                        namespaces, where co-located is defined as
+                                        running on a node whose value of the label
+                                        with key topologyKey matches that of any node
+                                        on which any of the selected pods is running.
+                                        Empty topologyKey is not allowed.
+                                      type: string
+                                  required:
+                                  - topologyKey
+                                  type: object
+                                type: array
+                            type: object
+                          podAntiAffinity:
+                            description: Describes pod anti-affinity scheduling rules
+                              (e.g. avoid putting this pod in the same node, zone,
+                              etc. as some other pod(s)).
+                            properties:
+                              preferredDuringSchedulingIgnoredDuringExecution:
+                                description: The scheduler will prefer to schedule
+                                  pods to nodes that satisfy the anti-affinity expressions
+                                  specified by this field, but it may choose a node
+                                  that violates one or more of the expressions. The
+                                  node that is most preferred is the one with the
+                                  greatest sum of weights, i.e. for each node that
+                                  meets all of the scheduling requirements (resource
+                                  request, requiredDuringScheduling anti-affinity
+                                  expressions, etc.), compute a sum by iterating through
+                                  the elements of this field and adding "weight" to
+                                  the sum if the node has pods which matches the corresponding
+                                  podAffinityTerm; the node(s) with the highest sum
+                                  are the most preferred.
+                                items:
+                                  description: The weights of all of the matched WeightedPodAffinityTerm
+                                    fields are added per-node to find the most preferred
+                                    node(s)
+                                  properties:
+                                    podAffinityTerm:
+                                      description: Required. A pod affinity term,
+                                        associated with the corresponding weight.
+                                      properties:
+                                        labelSelector:
+                                          description: A label query over a set of
+                                            resources, in this case pods.
+                                          properties:
+                                            matchExpressions:
+                                              description: matchExpressions is a list
+                                                of label selector requirements. The
+                                                requirements are ANDed.
+                                              items:
+                                                description: A label selector requirement
+                                                  is a selector that contains values,
+                                                  a key, and an operator that relates
+                                                  the key and values.
+                                                properties:
+                                                  key:
+                                                    description: key is the label
+                                                      key that the selector applies
+                                                      to.
+                                                    type: string
+                                                  operator:
+                                                    description: operator represents
+                                                      a key's relationship to a set
+                                                      of values. Valid operators are
+                                                      In, NotIn, Exists and DoesNotExist.
+                                                    type: string
+                                                  values:
+                                                    description: values is an array
+                                                      of string values. If the operator
+                                                      is In or NotIn, the values array
+                                                      must be non-empty. If the operator
+                                                      is Exists or DoesNotExist, the
+                                                      values array must be empty.
+                                                      This array is replaced during
+                                                      a strategic merge patch.
+                                                    items:
+                                                      type: string
+                                                    type: array
+                                                required:
+                                                - key
+                                                - operator
+                                                type: object
+                                              type: array
+                                            matchLabels:
+                                              additionalProperties:
+                                                type: string
+                                              description: matchLabels is a map of
+                                                {key,value} pairs. A single {key,value}
+                                                in the matchLabels map is equivalent
+                                                to an element of matchExpressions,
+                                                whose key field is "key", the operator
+                                                is "In", and the values array contains
+                                                only "value". The requirements are
+                                                ANDed.
+                                              type: object
+                                          type: object
+                                        namespaces:
+                                          description: namespaces specifies which
+                                            namespaces the labelSelector applies to
+                                            (matches against); null or empty list
+                                            means "this pod's namespace"
+                                          items:
+                                            type: string
+                                          type: array
+                                        topologyKey:
+                                          description: This pod should be co-located
+                                            (affinity) or not co-located (anti-affinity)
+                                            with the pods matching the labelSelector
+                                            in the specified namespaces, where co-located
+                                            is defined as running on a node whose
+                                            value of the label with key topologyKey
+                                            matches that of any node on which any
+                                            of the selected pods is running. Empty
+                                            topologyKey is not allowed.
+                                          type: string
+                                      required:
+                                      - topologyKey
+                                      type: object
+                                    weight:
+                                      description: weight associated with matching
+                                        the corresponding podAffinityTerm, in the
+                                        range 1-100.
+                                      format: int32
+                                      type: integer
+                                  required:
+                                  - podAffinityTerm
+                                  - weight
+                                  type: object
+                                type: array
+                              requiredDuringSchedulingIgnoredDuringExecution:
+                                description: If the anti-affinity requirements specified
+                                  by this field are not met at scheduling time, the
+                                  pod will not be scheduled onto the node. If the
+                                  anti-affinity requirements specified by this field
+                                  cease to be met at some point during pod execution
+                                  (e.g. due to a pod label update), the system may
+                                  or may not try to eventually evict the pod from
+                                  its node. When there are multiple elements, the
+                                  lists of nodes corresponding to each podAffinityTerm
+                                  are intersected, i.e. all terms must be satisfied.
+                                items:
+                                  description: Defines a set of pods (namely those
+                                    matching the labelSelector relative to the given
+                                    namespace(s)) that this pod should be co-located
+                                    (affinity) or not co-located (anti-affinity) with,
+                                    where co-located is defined as running on a node
+                                    whose value of the label with key <topologyKey>
+                                    matches that of any node on which a pod of the
+                                    set of pods is running
+                                  properties:
+                                    labelSelector:
+                                      description: A label query over a set of resources,
+                                        in this case pods.
+                                      properties:
+                                        matchExpressions:
+                                          description: matchExpressions is a list
+                                            of label selector requirements. The requirements
+                                            are ANDed.
+                                          items:
+                                            description: A label selector requirement
+                                              is a selector that contains values,
+                                              a key, and an operator that relates
+                                              the key and values.
+                                            properties:
+                                              key:
+                                                description: key is the label key
+                                                  that the selector applies to.
+                                                type: string
+                                              operator:
+                                                description: operator represents a
+                                                  key's relationship to a set of values.
+                                                  Valid operators are In, NotIn, Exists
+                                                  and DoesNotExist.
+                                                type: string
+                                              values:
+                                                description: values is an array of
+                                                  string values. If the operator is
+                                                  In or NotIn, the values array must
+                                                  be non-empty. If the operator is
+                                                  Exists or DoesNotExist, the values
+                                                  array must be empty. This array
+                                                  is replaced during a strategic merge
+                                                  patch.
+                                                items:
+                                                  type: string
+                                                type: array
+                                            required:
+                                            - key
+                                            - operator
+                                            type: object
+                                          type: array
+                                        matchLabels:
+                                          additionalProperties:
+                                            type: string
+                                          description: matchLabels is a map of {key,value}
+                                            pairs. A single {key,value} in the matchLabels
+                                            map is equivalent to an element of matchExpressions,
+                                            whose key field is "key", the operator
+                                            is "In", and the values array contains
+                                            only "value". The requirements are ANDed.
+                                          type: object
+                                      type: object
+                                    namespaces:
+                                      description: namespaces specifies which namespaces
+                                        the labelSelector applies to (matches against);
+                                        null or empty list means "this pod's namespace"
+                                      items:
+                                        type: string
+                                      type: array
+                                    topologyKey:
+                                      description: This pod should be co-located (affinity)
+                                        or not co-located (anti-affinity) with the
+                                        pods matching the labelSelector in the specified
+                                        namespaces, where co-located is defined as
+                                        running on a node whose value of the label
+                                        with key topologyKey matches that of any node
+                                        on which any of the selected pods is running.
+                                        Empty topologyKey is not allowed.
+                                      type: string
+                                  required:
+                                  - topologyKey
+                                  type: object
+                                type: array
+                            type: object
+                        type: object
+                      args:
+                        items:
+                          type: string
+                        type: array
+                      builtImage:
+                        type: string
+                      command:
+                        items:
+                          type: string
+                        type: array
+                      env:
+                        items:
+                          description: EnvVar represents an environment variable present
+                            in a Container.
+                          properties:
+                            name:
+                              description: Name of the environment variable. Must
+                                be a C_IDENTIFIER.
+                              type: string
+                            value:
+                              description: 'Variable references $(VAR_NAME) are expanded
+                                using the previous defined environment variables in
+                                the container and any service environment variables.
+                                If a variable cannot be resolved, the reference in
+                                the input string will be unchanged. The $(VAR_NAME)
+                                syntax can be escaped with a double $$, ie: $$(VAR_NAME).
+                                Escaped references will never be expanded, regardless
+                                of whether the variable exists or not. Defaults to
+                                "".'
+                              type: string
+                            valueFrom:
+                              description: Source for the environment variable's value.
+                                Cannot be used if value is not empty.
+                              properties:
+                                configMapKeyRef:
+                                  description: Selects a key of a ConfigMap.
+                                  properties:
+                                    key:
+                                      description: The key to select.
+                                      type: string
+                                    name:
+                                      description: 'Name of the referent. More info:
+                                        https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+                                        TODO: Add other useful fields. apiVersion,
+                                        kind, uid?'
+                                      type: string
+                                    optional:
+                                      description: Specify whether the ConfigMap or
+                                        its key must be defined
+                                      type: boolean
+                                  required:
+                                  - key
+                                  type: object
+                                fieldRef:
+                                  description: 'Selects a field of the pod: supports
+                                    metadata.name, metadata.namespace, metadata.labels,
+                                    metadata.annotations, spec.nodeName, spec.serviceAccountName,
+                                    status.hostIP, status.podIP, status.podIPs.'
+                                  properties:
+                                    apiVersion:
+                                      description: Version of the schema the FieldPath
+                                        is written in terms of, defaults to "v1".
+                                      type: string
+                                    fieldPath:
+                                      description: Path of the field to select in
+                                        the specified API version.
+                                      type: string
+                                  required:
+                                  - fieldPath
+                                  type: object
+                                resourceFieldRef:
+                                  description: 'Selects a resource of the container:
+                                    only resources limits and requests (limits.cpu,
+                                    limits.memory, limits.ephemeral-storage, requests.cpu,
+                                    requests.memory and requests.ephemeral-storage)
+                                    are currently supported.'
+                                  properties:
+                                    containerName:
+                                      description: 'Container name: required for volumes,
+                                        optional for env vars'
+                                      type: string
+                                    divisor:
+                                      anyOf:
+                                      - type: integer
+                                      - type: string
+                                      description: Specifies the output format of
+                                        the exposed resources, defaults to "1"
+                                      pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+                                      x-kubernetes-int-or-string: true
+                                    resource:
+                                      description: 'Required: resource to select'
+                                      type: string
+                                  required:
+                                  - resource
+                                  type: object
+                                secretKeyRef:
+                                  description: Selects a key of a secret in the pod's
+                                    namespace
+                                  properties:
+                                    key:
+                                      description: The key of the secret to select
+                                        from.  Must be a valid secret key.
+                                      type: string
+                                    name:
+                                      description: 'Name of the referent. More info:
+                                        https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+                                        TODO: Add other useful fields. apiVersion,
+                                        kind, uid?'
+                                      type: string
+                                    optional:
+                                      description: Specify whether the Secret or its
+                                        key must be defined
+                                      type: boolean
+                                  required:
+                                  - key
+                                  type: object
+                              type: object
+                          required:
+                          - name
+                          type: object
+                        type: array
+                      image:
+                        type: string
+                      name:
+                        type: string
+                      securityContext:
+                        description: SecurityContext holds security configuration
+                          that will be applied to a container. Some fields are present
+                          in both SecurityContext and PodSecurityContext.  When both
+                          are set, the values in SecurityContext take precedence.
+                        properties:
+                          allowPrivilegeEscalation:
+                            description: 'AllowPrivilegeEscalation controls whether
+                              a process can gain more privileges than its parent process.
+                              This bool directly controls if the no_new_privs flag
+                              will be set on the container process. AllowPrivilegeEscalation
+                              is true always when the container is: 1) run as Privileged
+                              2) has CAP_SYS_ADMIN'
+                            type: boolean
+                          capabilities:
+                            description: The capabilities to add/drop when running
+                              containers. Defaults to the default set of capabilities
+                              granted by the container runtime.
+                            properties:
+                              add:
+                                description: Added capabilities
+                                items:
+                                  description: Capability represent POSIX capabilities
+                                    type
+                                  type: string
+                                type: array
+                              drop:
+                                description: Removed capabilities
+                                items:
+                                  description: Capability represent POSIX capabilities
+                                    type
+                                  type: string
+                                type: array
+                            type: object
+                          privileged:
+                            description: Run container in privileged mode. Processes
+                              in privileged containers are essentially equivalent
+                              to root on the host. Defaults to false.
+                            type: boolean
+                          procMount:
+                            description: procMount denotes the type of proc mount
+                              to use for the containers. The default is DefaultProcMount
+                              which uses the container runtime defaults for readonly
+                              paths and masked paths. This requires the ProcMountType
+                              feature flag to be enabled.
+                            type: string
+                          readOnlyRootFilesystem:
+                            description: Whether this container has a read-only root
+                              filesystem. Default is false.
+                            type: boolean
+                          runAsGroup:
+                            description: The GID to run the entrypoint of the container
+                              process. Uses runtime default if unset. May also be
+                              set in PodSecurityContext.  If set in both SecurityContext
+                              and PodSecurityContext, the value specified in SecurityContext
+                              takes precedence.
+                            format: int64
+                            type: integer
+                          runAsNonRoot:
+                            description: Indicates that the container must run as
+                              a non-root user. If true, the Kubelet will validate
+                              the image at runtime to ensure that it does not run
+                              as UID 0 (root) and fail to start the container if it
+                              does. If unset or false, no such validation will be
+                              performed. May also be set in PodSecurityContext.  If
+                              set in both SecurityContext and PodSecurityContext,
+                              the value specified in SecurityContext takes precedence.
+                            type: boolean
+                          runAsUser:
+                            description: The UID to run the entrypoint of the container
+                              process. Defaults to user specified in image metadata
+                              if unspecified. May also be set in PodSecurityContext.  If
+                              set in both SecurityContext and PodSecurityContext,
+                              the value specified in SecurityContext takes precedence.
+                            format: int64
+                            type: integer
+                          seLinuxOptions:
+                            description: The SELinux context to be applied to the
+                              container. If unspecified, the container runtime will
+                              allocate a random SELinux context for each container.  May
+                              also be set in PodSecurityContext.  If set in both SecurityContext
+                              and PodSecurityContext, the value specified in SecurityContext
+                              takes precedence.
+                            properties:
+                              level:
+                                description: Level is SELinux level label that applies
+                                  to the container.
+                                type: string
+                              role:
+                                description: Role is a SELinux role label that applies
+                                  to the container.
+                                type: string
+                              type:
+                                description: Type is a SELinux type label that applies
+                                  to the container.
+                                type: string
+                              user:
+                                description: User is a SELinux user label that applies
+                                  to the container.
+                                type: string
+                            type: object
+                          windowsOptions:
+                            description: The Windows specific settings applied to
+                              all containers. If unspecified, the options from the
+                              PodSecurityContext will be used. If set in both SecurityContext
+                              and PodSecurityContext, the value specified in SecurityContext
+                              takes precedence.
+                            properties:
+                              gmsaCredentialSpec:
+                                description: GMSACredentialSpec is where the GMSA
+                                  admission webhook (https://github.com/kubernetes-sigs/windows-gmsa)
+                                  inlines the contents of the GMSA credential spec
+                                  named by the GMSACredentialSpecName field.
+                                type: string
+                              gmsaCredentialSpecName:
+                                description: GMSACredentialSpecName is the name of
+                                  the GMSA credential spec to use.
+                                type: string
+                              runAsUserName:
+                                description: The UserName in Windows to run the entrypoint
+                                  of the container process. Defaults to the user specified
+                                  in image metadata if unspecified. May also be set
+                                  in PodSecurityContext. If set in both SecurityContext
+                                  and PodSecurityContext, the value specified in SecurityContext
+                                  takes precedence.
+                                type: string
+                            type: object
+                        type: object
+                      volumeMounts:
+                        items:
+                          description: VolumeMount describes a mounting of a Volume
+                            within a container.
+                          properties:
+                            mountPath:
+                              description: Path within the container at which the
+                                volume should be mounted.  Must not contain ':'.
+                              type: string
+                            mountPropagation:
+                              description: mountPropagation determines how mounts
+                                are propagated from the host to container and the
+                                other way around. When not set, MountPropagationNone
+                                is used. This field is beta in 1.10.
+                              type: string
+                            name:
+                              description: This must match the Name of a Volume.
+                              type: string
+                            readOnly:
+                              description: Mounted read-only if true, read-write otherwise
+                                (false or unspecified). Defaults to false.
+                              type: boolean
+                            subPath:
+                              description: Path within the volume from which the container's
+                                volume should be mounted. Defaults to "" (volume's
+                                root).
+                              type: string
+                            subPathExpr:
+                              description: Expanded path within the volume from which
+                                the container's volume should be mounted. Behaves
+                                similarly to SubPath but environment variable references
+                                $(VAR_NAME) are expanded using the container's environment.
+                                Defaults to "" (volume's root). SubPathExpr and SubPath
+                                are mutually exclusive.
+                              type: string
+                          required:
+                          - mountPath
+                          - name
+                          type: object
+                        type: array
+                      volumes:
+                        items:
+                          description: Volume represents a named volume in a pod that
+                            may be accessed by any container in the pod.
+                          properties:
+                            awsElasticBlockStore:
+                              description: 'AWSElasticBlockStore represents an AWS
+                                Disk resource that is attached to a kubelet''s host
+                                machine and then exposed to the pod. More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore'
+                              properties:
+                                fsType:
+                                  description: 'Filesystem type of the volume that
+                                    you want to mount. Tip: Ensure that the filesystem
+                                    type is supported by the host operating system.
+                                    Examples: "ext4", "xfs", "ntfs". Implicitly inferred
+                                    to be "ext4" if unspecified. More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
+                                    TODO: how do we prevent errors in the filesystem
+                                    from compromising the machine'
+                                  type: string
+                                partition:
+                                  description: 'The partition in the volume that you
+                                    want to mount. If omitted, the default is to mount
+                                    by volume name. Examples: For volume /dev/sda1,
+                                    you specify the partition as "1". Similarly, the
+                                    volume partition for /dev/sda is "0" (or you can
+                                    leave the property empty).'
+                                  format: int32
+                                  type: integer
+                                readOnly:
+                                  description: 'Specify "true" to force and set the
+                                    ReadOnly property in VolumeMounts to "true". If
+                                    omitted, the default is "false". More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore'
+                                  type: boolean
+                                volumeID:
+                                  description: 'Unique ID of the persistent disk resource
+                                    in AWS (Amazon EBS volume). More info: https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore'
+                                  type: string
+                              required:
+                              - volumeID
+                              type: object
+                            azureDisk:
+                              description: AzureDisk represents an Azure Data Disk
+                                mount on the host and bind mount to the pod.
+                              properties:
+                                cachingMode:
+                                  description: 'Host Caching mode: None, Read Only,
+                                    Read Write.'
+                                  type: string
+                                diskName:
+                                  description: The Name of the data disk in the blob
+                                    storage
+                                  type: string
+                                diskURI:
+                                  description: The URI the data disk in the blob storage
+                                  type: string
+                                fsType:
+                                  description: Filesystem type to mount. Must be a
+                                    filesystem type supported by the host operating
+                                    system. Ex. "ext4", "xfs", "ntfs". Implicitly
+                                    inferred to be "ext4" if unspecified.
+                                  type: string
+                                kind:
+                                  description: 'Expected values Shared: multiple blob
+                                    disks per storage account  Dedicated: single blob
+                                    disk per storage account  Managed: azure managed
+                                    data disk (only in managed availability set).
+                                    defaults to shared'
+                                  type: string
+                                readOnly:
+                                  description: Defaults to false (read/write). ReadOnly
+                                    here will force the ReadOnly setting in VolumeMounts.
+                                  type: boolean
+                              required:
+                              - diskName
+                              - diskURI
+                              type: object
+                            azureFile:
+                              description: AzureFile represents an Azure File Service
+                                mount on the host and bind mount to the pod.
+                              properties:
+                                readOnly:
+                                  description: Defaults to false (read/write). ReadOnly
+                                    here will force the ReadOnly setting in VolumeMounts.
+                                  type: boolean
+                                secretName:
+                                  description: the name of secret that contains Azure
+                                    Storage Account Name and Key
+                                  type: string
+                                shareName:
+                                  description: Share Name
+                                  type: string
+                              required:
+                              - secretName
+                              - shareName
+                              type: object
+                            cephfs:
+                              description: CephFS represents a Ceph FS mount on the
+                                host that shares a pod's lifetime
+                              properties:
+                                monitors:
+                                  description: 'Required: Monitors is a collection
+                                    of Ceph monitors More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+                                  items:
+                                    type: string
+                                  type: array
+                                path:
+                                  description: 'Optional: Used as the mounted root,
+                                    rather than the full Ceph tree, default is /'
+                                  type: string
+                                readOnly:
+                                  description: 'Optional: Defaults to false (read/write).
+                                    ReadOnly here will force the ReadOnly setting
+                                    in VolumeMounts. More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+                                  type: boolean
+                                secretFile:
+                                  description: 'Optional: SecretFile is the path to
+                                    key ring for User, default is /etc/ceph/user.secret
+                                    More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+                                  type: string
+                                secretRef:
+                                  description: 'Optional: SecretRef is reference to
+                                    the authentication secret for User, default is
+                                    empty. More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+                                  properties:
+                                    name:
+                                      description: 'Name of the referent. More info:
+                                        https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+                                        TODO: Add other useful fields. apiVersion,
+                                        kind, uid?'
+                                      type: string
+                                  type: object
+                                user:
+                                  description: 'Optional: User is the rados user name,
+                                    default is admin More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it'
+                                  type: string
+                              required:
+                              - monitors
+                              type: object
+                            cinder:
+                              description: 'Cinder represents a cinder volume attached
+                                and mounted on kubelets host machine. More info: https://examples.k8s.io/mysql-cinder-pd/README.md'
+                              properties:
+                                fsType:
+                                  description: 'Filesystem type to mount. Must be
+                                    a filesystem type supported by the host operating
+                                    system. Examples: "ext4", "xfs", "ntfs". Implicitly
+                                    inferred to be "ext4" if unspecified. More info:
+                                    https://examples.k8s.io/mysql-cinder-pd/README.md'
+                                  type: string
+                                readOnly:
+                                  description: 'Optional: Defaults to false (read/write).
+                                    ReadOnly here will force the ReadOnly setting
+                                    in VolumeMounts. More info: https://examples.k8s.io/mysql-cinder-pd/README.md'
+                                  type: boolean
+                                secretRef:
+                                  description: 'Optional: points to a secret object
+                                    containing parameters used to connect to OpenStack.'
+                                  properties:
+                                    name:
+                                      description: 'Name of the referent. More info:
+                                        https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+                                        TODO: Add other useful fields. apiVersion,
+                                        kind, uid?'
+                                      type: string
+                                  type: object
+                                volumeID:
+                                  description: 'volume id used to identify the volume
+                                    in cinder. More info: https://examples.k8s.io/mysql-cinder-pd/README.md'
+                                  type: string
+                              required:
+                              - volumeID
+                              type: object
+                            configMap:
+                              description: ConfigMap represents a configMap that should
+                                populate this volume
+                              properties:
+                                defaultMode:
+                                  description: 'Optional: mode bits to use on created
+                                    files by default. Must be a value between 0 and
+                                    0777. Defaults to 0644. Directories within the
+                                    path are not affected by this setting. This might
+                                    be in conflict with other options that affect
+                                    the file mode, like fsGroup, and the result can
+                                    be other mode bits set.'
+                                  format: int32
+                                  type: integer
+                                items:
+                                  description: If unspecified, each key-value pair
+                                    in the Data field of the referenced ConfigMap
+                                    will be projected into the volume as a file whose
+                                    name is the key and content is the value. If specified,
+                                    the listed keys will be projected into the specified
+                                    paths, and unlisted keys will not be present.
+                                    If a key is specified which is not present in
+                                    the ConfigMap, the volume setup will error unless
+                                    it is marked optional. Paths must be relative
+                                    and may not contain the '..' path or start with
+                                    '..'.
+                                  items:
+                                    description: Maps a string key to a path within
+                                      a volume.
+                                    properties:
+                                      key:
+                                        description: The key to project.
+                                        type: string
+                                      mode:
+                                        description: 'Optional: mode bits to use on
+                                          this file, must be a value between 0 and
+                                          0777. If not specified, the volume defaultMode
+                                          will be used. This might be in conflict
+                                          with other options that affect the file
+                                          mode, like fsGroup, and the result can be
+                                          other mode bits set.'
+                                        format: int32
+                                        type: integer
+                                      path:
+                                        description: The relative path of the file
+                                          to map the key to. May not be an absolute
+                                          path. May not contain the path element '..'.
+                                          May not start with the string '..'.
+                                        type: string
+                                    required:
+                                    - key
+                                    - path
+                                    type: object
+                                  type: array
+                                name:
+                                  description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+                                    TODO: Add other useful fields. apiVersion, kind,
+                                    uid?'
+                                  type: string
+                                optional:
+                                  description: Specify whether the ConfigMap or its
+                                    keys must be defined
+                                  type: boolean
+                              type: object
+                            csi:
+                              description: CSI (Container Storage Interface) represents
+                                storage that is handled by an external CSI driver
+                                (Alpha feature).
+                              properties:
+                                driver:
+                                  description: Driver is the name of the CSI driver
+                                    that handles this volume. Consult with your admin
+                                    for the correct name as registered in the cluster.
+                                  type: string
+                                fsType:
+                                  description: Filesystem type to mount. Ex. "ext4",
+                                    "xfs", "ntfs". If not provided, the empty value
+                                    is passed to the associated CSI driver which will
+                                    determine the default filesystem to apply.
+                                  type: string
+                                nodePublishSecretRef:
+                                  description: NodePublishSecretRef is a reference
+                                    to the secret object containing sensitive information
+                                    to pass to the CSI driver to complete the CSI
+                                    NodePublishVolume and NodeUnpublishVolume calls.
+                                    This field is optional, and  may be empty if no
+                                    secret is required. If the secret object contains
+                                    more than one secret, all secret references are
+                                    passed.
+                                  properties:
+                                    name:
+                                      description: 'Name of the referent. More info:
+                                        https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+                                        TODO: Add other useful fields. apiVersion,
+                                        kind, uid?'
+                                      type: string
+                                  type: object
+                                readOnly:
+                                  description: Specifies a read-only configuration
+                                    for the volume. Defaults to false (read/write).
+                                  type: boolean
+                                volumeAttributes:
+                                  additionalProperties:
+                                    type: string
+                                  description: VolumeAttributes stores driver-specific
+                                    properties that are passed to the CSI driver.
+                                    Consult your driver's documentation for supported
+                                    values.
+                                  type: object
+                              required:
+                              - driver
+                              type: object
+                            downwardAPI:
+                              description: DownwardAPI represents downward API about
+                                the pod that should populate this volume
+                              properties:
+                                defaultMode:
+                                  description: 'Optional: mode bits to use on created
+                                    files by default. Must be a value between 0 and
+                                    0777. Defaults to 0644. Directories within the
+                                    path are not affected by this setting. This might
+                                    be in conflict with other options that affect
+                                    the file mode, like fsGroup, and the result can
+                                    be other mode bits set.'
+                                  format: int32
+                                  type: integer
+                                items:
+                                  description: Items is a list of downward API volume
+                                    file
+                                  items:
+                                    description: DownwardAPIVolumeFile represents
+                                      information to create the file containing the
+                                      pod field
+                                    properties:
+                                      fieldRef:
+                                        description: 'Required: Selects a field of
+                                          the pod: only annotations, labels, name
+                                          and namespace are supported.'
+                                        properties:
+                                          apiVersion:
+                                            description: Version of the schema the
+                                              FieldPath is written in terms of, defaults
+                                              to "v1".
+                                            type: string
+                                          fieldPath:
+                                            description: Path of the field to select
+                                              in the specified API version.
+                                            type: string
+                                        required:
+                                        - fieldPath
+                                        type: object
+                                      mode:
+                                        description: 'Optional: mode bits to use on
+                                          this file, must be a value between 0 and
+                                          0777. If not specified, the volume defaultMode
+                                          will be used. This might be in conflict
+                                          with other options that affect the file
+                                          mode, like fsGroup, and the result can be
+                                          other mode bits set.'
+                                        format: int32
+                                        type: integer
+                                      path:
+                                        description: 'Required: Path is  the relative
+                                          path name of the file to be created. Must
+                                          not be absolute or contain the ''..'' path.
+                                          Must be utf-8 encoded. The first item of
+                                          the relative path must not start with ''..'''
+                                        type: string
+                                      resourceFieldRef:
+                                        description: 'Selects a resource of the container:
+                                          only resources limits and requests (limits.cpu,
+                                          limits.memory, requests.cpu and requests.memory)
+                                          are currently supported.'
+                                        properties:
+                                          containerName:
+                                            description: 'Container name: required
+                                              for volumes, optional for env vars'
+                                            type: string
+                                          divisor:
+                                            anyOf:
+                                            - type: integer
+                                            - type: string
+                                            description: Specifies the output format
+                                              of the exposed resources, defaults to
+                                              "1"
+                                            pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+                                            x-kubernetes-int-or-string: true
+                                          resource:
+                                            description: 'Required: resource to select'
+                                            type: string
+                                        required:
+                                        - resource
+                                        type: object
+                                    required:
+                                    - path
+                                    type: object
+                                  type: array
+                              type: object
+                            emptyDir:
+                              description: 'EmptyDir represents a temporary directory
+                                that shares a pod''s lifetime. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir'
+                              properties:
+                                medium:
+                                  description: 'What type of storage medium should
+                                    back this directory. The default is "" which means
+                                    to use the node''s default medium. Must be an
+                                    empty string (default) or Memory. More info: https://kubernetes.io/docs/concepts/storage/volumes#emptydir'
+                                  type: string
+                                sizeLimit:
+                                  anyOf:
+                                  - type: integer
+                                  - type: string
+                                  description: 'Total amount of local storage required
+                                    for this EmptyDir volume. The size limit is also
+                                    applicable for memory medium. The maximum usage
+                                    on memory medium EmptyDir would be the minimum
+                                    value between the SizeLimit specified here and
+                                    the sum of memory limits of all containers in
+                                    a pod. The default is nil which means that the
+                                    limit is undefined. More info: http://kubernetes.io/docs/user-guide/volumes#emptydir'
+                                  pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+                                  x-kubernetes-int-or-string: true
+                              type: object
+                            fc:
+                              description: FC represents a Fibre Channel resource
+                                that is attached to a kubelet's host machine and then
+                                exposed to the pod.
+                              properties:
+                                fsType:
+                                  description: 'Filesystem type to mount. Must be
+                                    a filesystem type supported by the host operating
+                                    system. Ex. "ext4", "xfs", "ntfs". Implicitly
+                                    inferred to be "ext4" if unspecified. TODO: how
+                                    do we prevent errors in the filesystem from compromising
+                                    the machine'
+                                  type: string
+                                lun:
+                                  description: 'Optional: FC target lun number'
+                                  format: int32
+                                  type: integer
+                                readOnly:
+                                  description: 'Optional: Defaults to false (read/write).
+                                    ReadOnly here will force the ReadOnly setting
+                                    in VolumeMounts.'
+                                  type: boolean
+                                targetWWNs:
+                                  description: 'Optional: FC target worldwide names
+                                    (WWNs)'
+                                  items:
+                                    type: string
+                                  type: array
+                                wwids:
+                                  description: 'Optional: FC volume world wide identifiers
+                                    (wwids) Either wwids or combination of targetWWNs
+                                    and lun must be set, but not both simultaneously.'
+                                  items:
+                                    type: string
+                                  type: array
+                              type: object
+                            flexVolume:
+                              description: FlexVolume represents a generic volume
+                                resource that is provisioned/attached using an exec
+                                based plugin.
+                              properties:
+                                driver:
+                                  description: Driver is the name of the driver to
+                                    use for this volume.
+                                  type: string
+                                fsType:
+                                  description: Filesystem type to mount. Must be a
+                                    filesystem type supported by the host operating
+                                    system. Ex. "ext4", "xfs", "ntfs". The default
+                                    filesystem depends on FlexVolume script.
+                                  type: string
+                                options:
+                                  additionalProperties:
+                                    type: string
+                                  description: 'Optional: Extra command options if
+                                    any.'
+                                  type: object
+                                readOnly:
+                                  description: 'Optional: Defaults to false (read/write).
+                                    ReadOnly here will force the ReadOnly setting
+                                    in VolumeMounts.'
+                                  type: boolean
+                                secretRef:
+                                  description: 'Optional: SecretRef is reference to
+                                    the secret object containing sensitive information
+                                    to pass to the plugin scripts. This may be empty
+                                    if no secret object is specified. If the secret
+                                    object contains more than one secret, all secrets
+                                    are passed to the plugin scripts.'
+                                  properties:
+                                    name:
+                                      description: 'Name of the referent. More info:
+                                        https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+                                        TODO: Add other useful fields. apiVersion,
+                                        kind, uid?'
+                                      type: string
+                                  type: object
+                              required:
+                              - driver
+                              type: object
+                            flocker:
+                              description: Flocker represents a Flocker volume attached
+                                to a kubelet's host machine. This depends on the Flocker
+                                control service being running
+                              properties:
+                                datasetName:
+                                  description: Name of the dataset stored as metadata
+                                    -> name on the dataset for Flocker should be considered
+                                    as deprecated
+                                  type: string
+                                datasetUUID:
+                                  description: UUID of the dataset. This is unique
+                                    identifier of a Flocker dataset
+                                  type: string
+                              type: object
+                            gcePersistentDisk:
+                              description: 'GCEPersistentDisk represents a GCE Disk
+                                resource that is attached to a kubelet''s host machine
+                                and then exposed to the pod. More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk'
+                              properties:
+                                fsType:
+                                  description: 'Filesystem type of the volume that
+                                    you want to mount. Tip: Ensure that the filesystem
+                                    type is supported by the host operating system.
+                                    Examples: "ext4", "xfs", "ntfs". Implicitly inferred
+                                    to be "ext4" if unspecified. More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk
+                                    TODO: how do we prevent errors in the filesystem
+                                    from compromising the machine'
+                                  type: string
+                                partition:
+                                  description: 'The partition in the volume that you
+                                    want to mount. If omitted, the default is to mount
+                                    by volume name. Examples: For volume /dev/sda1,
+                                    you specify the partition as "1". Similarly, the
+                                    volume partition for /dev/sda is "0" (or you can
+                                    leave the property empty). More info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk'
+                                  format: int32
+                                  type: integer
+                                pdName:
+                                  description: 'Unique name of the PD resource in
+                                    GCE. Used to identify the disk in GCE. More info:
+                                    https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk'
+                                  type: string
+                                readOnly:
+                                  description: 'ReadOnly here will force the ReadOnly
+                                    setting in VolumeMounts. Defaults to false. More
+                                    info: https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk'
+                                  type: boolean
+                              required:
+                              - pdName
+                              type: object
+                            gitRepo:
+                              description: 'GitRepo represents a git repository at
+                                a particular revision. DEPRECATED: GitRepo is deprecated.
+                                To provision a container with a git repo, mount an
+                                EmptyDir into an InitContainer that clones the repo
+                                using git, then mount the EmptyDir into the Pod''s
+                                container.'
+                              properties:
+                                directory:
+                                  description: Target directory name. Must not contain
+                                    or start with '..'.  If '.' is supplied, the volume
+                                    directory will be the git repository.  Otherwise,
+                                    if specified, the volume will contain the git
+                                    repository in the subdirectory with the given
+                                    name.
+                                  type: string
+                                repository:
+                                  description: Repository URL
+                                  type: string
+                                revision:
+                                  description: Commit hash for the specified revision.
+                                  type: string
+                              required:
+                              - repository
+                              type: object
+                            glusterfs:
+                              description: 'Glusterfs represents a Glusterfs mount
+                                on the host that shares a pod''s lifetime. More info:
+                                https://examples.k8s.io/volumes/glusterfs/README.md'
+                              properties:
+                                endpoints:
+                                  description: 'EndpointsName is the endpoint name
+                                    that details Glusterfs topology. More info: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod'
+                                  type: string
+                                path:
+                                  description: 'Path is the Glusterfs volume path.
+                                    More info: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod'
+                                  type: string
+                                readOnly:
+                                  description: 'ReadOnly here will force the Glusterfs
+                                    volume to be mounted with read-only permissions.
+                                    Defaults to false. More info: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod'
+                                  type: boolean
+                              required:
+                              - endpoints
+                              - path
+                              type: object
+                            hostPath:
+                              description: 'HostPath represents a pre-existing file
+                                or directory on the host machine that is directly
+                                exposed to the container. This is generally used for
+                                system agents or other privileged things that are
+                                allowed to see the host machine. Most containers will
+                                NOT need this. More info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath
+                                --- TODO(jonesdl) We need to restrict who can use
+                                host directory mounts and who can/can not mount host
+                                directories as read/write.'
+                              properties:
+                                path:
+                                  description: 'Path of the directory on the host.
+                                    If the path is a symlink, it will follow the link
+                                    to the real path. More info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath'
+                                  type: string
+                                type:
+                                  description: 'Type for HostPath Volume Defaults
+                                    to "" More info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath'
+                                  type: string
+                              required:
+                              - path
+                              type: object
+                            iscsi:
+                              description: 'ISCSI represents an ISCSI Disk resource
+                                that is attached to a kubelet''s host machine and
+                                then exposed to the pod. More info: https://examples.k8s.io/volumes/iscsi/README.md'
+                              properties:
+                                chapAuthDiscovery:
+                                  description: whether support iSCSI Discovery CHAP
+                                    authentication
+                                  type: boolean
+                                chapAuthSession:
+                                  description: whether support iSCSI Session CHAP
+                                    authentication
+                                  type: boolean
+                                fsType:
+                                  description: 'Filesystem type of the volume that
+                                    you want to mount. Tip: Ensure that the filesystem
+                                    type is supported by the host operating system.
+                                    Examples: "ext4", "xfs", "ntfs". Implicitly inferred
+                                    to be "ext4" if unspecified. More info: https://kubernetes.io/docs/concepts/storage/volumes#iscsi
+                                    TODO: how do we prevent errors in the filesystem
+                                    from compromising the machine'
+                                  type: string
+                                initiatorName:
+                                  description: Custom iSCSI Initiator Name. If initiatorName
+                                    is specified with iscsiInterface simultaneously,
+                                    new iSCSI interface <target portal>:<volume name>
+                                    will be created for the connection.
+                                  type: string
+                                iqn:
+                                  description: Target iSCSI Qualified Name.
+                                  type: string
+                                iscsiInterface:
+                                  description: iSCSI Interface Name that uses an iSCSI
+                                    transport. Defaults to 'default' (tcp).
+                                  type: string
+                                lun:
+                                  description: iSCSI Target Lun number.
+                                  format: int32
+                                  type: integer
+                                portals:
+                                  description: iSCSI Target Portal List. The portal
+                                    is either an IP or ip_addr:port if the port is
+                                    other than default (typically TCP ports 860 and
+                                    3260).
+                                  items:
+                                    type: string
+                                  type: array
+                                readOnly:
+                                  description: ReadOnly here will force the ReadOnly
+                                    setting in VolumeMounts. Defaults to false.
+                                  type: boolean
+                                secretRef:
+                                  description: CHAP Secret for iSCSI target and initiator
+                                    authentication
+                                  properties:
+                                    name:
+                                      description: 'Name of the referent. More info:
+                                        https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+                                        TODO: Add other useful fields. apiVersion,
+                                        kind, uid?'
+                                      type: string
+                                  type: object
+                                targetPortal:
+                                  description: iSCSI Target Portal. The Portal is
+                                    either an IP or ip_addr:port if the port is other
+                                    than default (typically TCP ports 860 and 3260).
+                                  type: string
+                              required:
+                              - iqn
+                              - lun
+                              - targetPortal
+                              type: object
+                            name:
+                              description: 'Volume''s name. Must be a DNS_LABEL and
+                                unique within the pod. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
+                              type: string
+                            nfs:
+                              description: 'NFS represents an NFS mount on the host
+                                that shares a pod''s lifetime More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs'
+                              properties:
+                                path:
+                                  description: 'Path that is exported by the NFS server.
+                                    More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs'
+                                  type: string
+                                readOnly:
+                                  description: 'ReadOnly here will force the NFS export
+                                    to be mounted with read-only permissions. Defaults
+                                    to false. More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs'
+                                  type: boolean
+                                server:
+                                  description: 'Server is the hostname or IP address
+                                    of the NFS server. More info: https://kubernetes.io/docs/concepts/storage/volumes#nfs'
+                                  type: string
+                              required:
+                              - path
+                              - server
+                              type: object
+                            persistentVolumeClaim:
+                              description: 'PersistentVolumeClaimVolumeSource represents
+                                a reference to a PersistentVolumeClaim in the same
+                                namespace. More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims'
+                              properties:
+                                claimName:
+                                  description: 'ClaimName is the name of a PersistentVolumeClaim
+                                    in the same namespace as the pod using this volume.
+                                    More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims'
+                                  type: string
+                                readOnly:
+                                  description: Will force the ReadOnly setting in
+                                    VolumeMounts. Default false.
+                                  type: boolean
+                              required:
+                              - claimName
+                              type: object
+                            photonPersistentDisk:
+                              description: PhotonPersistentDisk represents a PhotonController
+                                persistent disk attached and mounted on kubelets host
+                                machine
+                              properties:
+                                fsType:
+                                  description: Filesystem type to mount. Must be a
+                                    filesystem type supported by the host operating
+                                    system. Ex. "ext4", "xfs", "ntfs". Implicitly
+                                    inferred to be "ext4" if unspecified.
+                                  type: string
+                                pdID:
+                                  description: ID that identifies Photon Controller
+                                    persistent disk
+                                  type: string
+                              required:
+                              - pdID
+                              type: object
+                            portworxVolume:
+                              description: PortworxVolume represents a portworx volume
+                                attached and mounted on kubelets host machine
+                              properties:
+                                fsType:
+                                  description: FSType represents the filesystem type
+                                    to mount Must be a filesystem type supported by
+                                    the host operating system. Ex. "ext4", "xfs".
+                                    Implicitly inferred to be "ext4" if unspecified.
+                                  type: string
+                                readOnly:
+                                  description: Defaults to false (read/write). ReadOnly
+                                    here will force the ReadOnly setting in VolumeMounts.
+                                  type: boolean
+                                volumeID:
+                                  description: VolumeID uniquely identifies a Portworx
+                                    volume
+                                  type: string
+                              required:
+                              - volumeID
+                              type: object
+                            projected:
+                              description: Items for all in one resources secrets,
+                                configmaps, and downward API
+                              properties:
+                                defaultMode:
+                                  description: Mode bits to use on created files by
+                                    default. Must be a value between 0 and 0777. Directories
+                                    within the path are not affected by this setting.
+                                    This might be in conflict with other options that
+                                    affect the file mode, like fsGroup, and the result
+                                    can be other mode bits set.
+                                  format: int32
+                                  type: integer
+                                sources:
+                                  description: list of volume projections
+                                  items:
+                                    description: Projection that may be projected
+                                      along with other supported volume types
+                                    properties:
+                                      configMap:
+                                        description: information about the configMap
+                                          data to project
+                                        properties:
+                                          items:
+                                            description: If unspecified, each key-value
+                                              pair in the Data field of the referenced
+                                              ConfigMap will be projected into the
+                                              volume as a file whose name is the key
+                                              and content is the value. If specified,
+                                              the listed keys will be projected into
+                                              the specified paths, and unlisted keys
+                                              will not be present. If a key is specified
+                                              which is not present in the ConfigMap,
+                                              the volume setup will error unless it
+                                              is marked optional. Paths must be relative
+                                              and may not contain the '..' path or
+                                              start with '..'.
+                                            items:
+                                              description: Maps a string key to a
+                                                path within a volume.
+                                              properties:
+                                                key:
+                                                  description: The key to project.
+                                                  type: string
+                                                mode:
+                                                  description: 'Optional: mode bits
+                                                    to use on this file, must be a
+                                                    value between 0 and 0777. If not
+                                                    specified, the volume defaultMode
+                                                    will be used. This might be in
+                                                    conflict with other options that
+                                                    affect the file mode, like fsGroup,
+                                                    and the result can be other mode
+                                                    bits set.'
+                                                  format: int32
+                                                  type: integer
+                                                path:
+                                                  description: The relative path of
+                                                    the file to map the key to. May
+                                                    not be an absolute path. May not
+                                                    contain the path element '..'.
+                                                    May not start with the string
+                                                    '..'.
+                                                  type: string
+                                              required:
+                                              - key
+                                              - path
+                                              type: object
+                                            type: array
+                                          name:
+                                            description: 'Name of the referent. More
+                                              info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+                                              TODO: Add other useful fields. apiVersion,
+                                              kind, uid?'
+                                            type: string
+                                          optional:
+                                            description: Specify whether the ConfigMap
+                                              or its keys must be defined
+                                            type: boolean
+                                        type: object
+                                      downwardAPI:
+                                        description: information about the downwardAPI
+                                          data to project
+                                        properties:
+                                          items:
+                                            description: Items is a list of DownwardAPIVolume
+                                              file
+                                            items:
+                                              description: DownwardAPIVolumeFile represents
+                                                information to create the file containing
+                                                the pod field
+                                              properties:
+                                                fieldRef:
+                                                  description: 'Required: Selects
+                                                    a field of the pod: only annotations,
+                                                    labels, name and namespace are
+                                                    supported.'
+                                                  properties:
+                                                    apiVersion:
+                                                      description: Version of the
+                                                        schema the FieldPath is written
+                                                        in terms of, defaults to "v1".
+                                                      type: string
+                                                    fieldPath:
+                                                      description: Path of the field
+                                                        to select in the specified
+                                                        API version.
+                                                      type: string
+                                                  required:
+                                                  - fieldPath
+                                                  type: object
+                                                mode:
+                                                  description: 'Optional: mode bits
+                                                    to use on this file, must be a
+                                                    value between 0 and 0777. If not
+                                                    specified, the volume defaultMode
+                                                    will be used. This might be in
+                                                    conflict with other options that
+                                                    affect the file mode, like fsGroup,
+                                                    and the result can be other mode
+                                                    bits set.'
+                                                  format: int32
+                                                  type: integer
+                                                path:
+                                                  description: 'Required: Path is  the
+                                                    relative path name of the file
+                                                    to be created. Must not be absolute
+                                                    or contain the ''..'' path. Must
+                                                    be utf-8 encoded. The first item
+                                                    of the relative path must not
+                                                    start with ''..'''
+                                                  type: string
+                                                resourceFieldRef:
+                                                  description: 'Selects a resource
+                                                    of the container: only resources
+                                                    limits and requests (limits.cpu,
+                                                    limits.memory, requests.cpu and
+                                                    requests.memory) are currently
+                                                    supported.'
+                                                  properties:
+                                                    containerName:
+                                                      description: 'Container name:
+                                                        required for volumes, optional
+                                                        for env vars'
+                                                      type: string
+                                                    divisor:
+                                                      anyOf:
+                                                      - type: integer
+                                                      - type: string
+                                                      description: Specifies the output
+                                                        format of the exposed resources,
+                                                        defaults to "1"
+                                                      pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
+                                                      x-kubernetes-int-or-string: true
+                                                    resource:
+                                                      description: 'Required: resource
+                                                        to select'
+                                                      type: string
+                                                  required:
+                                                  - resource
+                                                  type: object
+                                              required:
+                                              - path
+                                              type: object
+                                            type: array
+                                        type: object
+                                      secret:
+                                        description: information about the secret
+                                          data to project
+                                        properties:
+                                          items:
+                                            description: If unspecified, each key-value
+                                              pair in the Data field of the referenced
+                                              Secret will be projected into the volume
+                                              as a file whose name is the key and
+                                              content is the value. If specified,
+                                              the listed keys will be projected into
+                                              the specified paths, and unlisted keys
+                                              will not be present. If a key is specified
+                                              which is not present in the Secret,
+                                              the volume setup will error unless it
+                                              is marked optional. Paths must be relative
+                                              and may not contain the '..' path or
+                                              start with '..'.
+                                            items:
+                                              description: Maps a string key to a
+                                                path within a volume.
+                                              properties:
+                                                key:
+                                                  description: The key to project.
+                                                  type: string
+                                                mode:
+                                                  description: 'Optional: mode bits
+                                                    to use on this file, must be a
+                                                    value between 0 and 0777. If not
+                                                    specified, the volume defaultMode
+                                                    will be used. This might be in
+                                                    conflict with other options that
+                                                    affect the file mode, like fsGroup,
+                                                    and the result can be other mode
+                                                    bits set.'
+                                                  format: int32
+                                                  type: integer
+                                                path:
+                                                  description: The relative path of
+                                                    the file to map the key to. May
+                                                    not be an absolute path. May not
+                                                    contain the path element '..'.
+                                                    May not start with the string
+                                                    '..'.
+                                                  type: string
+                                              required:
+                                              - key
+                                              - path
+                                              type: object
+                                            type: array
+                                          name:
+                                            description: 'Name of the referent. More
+                                              info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+                                              TODO: Add other useful fields. apiVersion,
+                                              kind, uid?'
+                                            type: string
+                                          optional:
+                                            description: Specify whether the Secret
+                                              or its key must be defined
+                                            type: boolean
+                                        type: object
+                                      serviceAccountToken:
+                                        description: information about the serviceAccountToken
+                                          data to project
+                                        properties:
+                                          audience:
+                                            description: Audience is the intended
+                                              audience of the token. A recipient of
+                                              a token must identify itself with an
+                                              identifier specified in the audience
+                                              of the token, and otherwise should reject
+                                              the token. The audience defaults to
+                                              the identifier of the apiserver.
+                                            type: string
+                                          expirationSeconds:
+                                            description: ExpirationSeconds is the
+                                              requested duration of validity of the
+                                              service account token. As the token
+                                              approaches expiration, the kubelet volume
+                                              plugin will proactively rotate the service
+                                              account token. The kubelet will start
+                                              trying to rotate the token if the token
+                                              is older than 80 percent of its time
+                                              to live or if the token is older than
+                                              24 hours.Defaults to 1 hour and must
+                                              be at least 10 minutes.
+                                            format: int64
+                                            type: integer
+                                          path:
+                                            description: Path is the path relative
+                                              to the mount point of the file to project
+                                              the token into.
+                                            type: string
+                                        required:
+                                        - path
+                                        type: object
+                                    type: object
+                                  type: array
+                              required:
+                              - sources
+                              type: object
+                            quobyte:
+                              description: Quobyte represents a Quobyte mount on the
+                                host that shares a pod's lifetime
+                              properties:
+                                group:
+                                  description: Group to map volume access to Default
+                                    is no group
+                                  type: string
+                                readOnly:
+                                  description: ReadOnly here will force the Quobyte
+                                    volume to be mounted with read-only permissions.
+                                    Defaults to false.
+                                  type: boolean
+                                registry:
+                                  description: Registry represents a single or multiple
+                                    Quobyte Registry services specified as a string
+                                    as host:port pair (multiple entries are separated
+                                    with commas) which acts as the central registry
+                                    for volumes
+                                  type: string
+                                tenant:
+                                  description: Tenant owning the given Quobyte volume
+                                    in the Backend Used with dynamically provisioned
+                                    Quobyte volumes, value is set by the plugin
+                                  type: string
+                                user:
+                                  description: User to map volume access to Defaults
+                                    to serivceaccount user
+                                  type: string
+                                volume:
+                                  description: Volume is a string that references
+                                    an already created Quobyte volume by name.
+                                  type: string
+                              required:
+                              - registry
+                              - volume
+                              type: object
+                            rbd:
+                              description: 'RBD represents a Rados Block Device mount
+                                on the host that shares a pod''s lifetime. More info:
+                                https://examples.k8s.io/volumes/rbd/README.md'
+                              properties:
+                                fsType:
+                                  description: 'Filesystem type of the volume that
+                                    you want to mount. Tip: Ensure that the filesystem
+                                    type is supported by the host operating system.
+                                    Examples: "ext4", "xfs", "ntfs". Implicitly inferred
+                                    to be "ext4" if unspecified. More info: https://kubernetes.io/docs/concepts/storage/volumes#rbd
+                                    TODO: how do we prevent errors in the filesystem
+                                    from compromising the machine'
+                                  type: string
+                                image:
+                                  description: 'The rados image name. More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it'
+                                  type: string
+                                keyring:
+                                  description: 'Keyring is the path to key ring for
+                                    RBDUser. Default is /etc/ceph/keyring. More info:
+                                    https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it'
+                                  type: string
+                                monitors:
+                                  description: 'A collection of Ceph monitors. More
+                                    info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it'
+                                  items:
+                                    type: string
+                                  type: array
+                                pool:
+                                  description: 'The rados pool name. Default is rbd.
+                                    More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it'
+                                  type: string
+                                readOnly:
+                                  description: 'ReadOnly here will force the ReadOnly
+                                    setting in VolumeMounts. Defaults to false. More
+                                    info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it'
+                                  type: boolean
+                                secretRef:
+                                  description: 'SecretRef is name of the authentication
+                                    secret for RBDUser. If provided overrides keyring.
+                                    Default is nil. More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it'
+                                  properties:
+                                    name:
+                                      description: 'Name of the referent. More info:
+                                        https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+                                        TODO: Add other useful fields. apiVersion,
+                                        kind, uid?'
+                                      type: string
+                                  type: object
+                                user:
+                                  description: 'The rados user name. Default is admin.
+                                    More info: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it'
+                                  type: string
+                              required:
+                              - image
+                              - monitors
+                              type: object
+                            scaleIO:
+                              description: ScaleIO represents a ScaleIO persistent
+                                volume attached and mounted on Kubernetes nodes.
+                              properties:
+                                fsType:
+                                  description: Filesystem type to mount. Must be a
+                                    filesystem type supported by the host operating
+                                    system. Ex. "ext4", "xfs", "ntfs". Default is
+                                    "xfs".
+                                  type: string
+                                gateway:
+                                  description: The host address of the ScaleIO API
+                                    Gateway.
+                                  type: string
+                                protectionDomain:
+                                  description: The name of the ScaleIO Protection
+                                    Domain for the configured storage.
+                                  type: string
+                                readOnly:
+                                  description: Defaults to false (read/write). ReadOnly
+                                    here will force the ReadOnly setting in VolumeMounts.
+                                  type: boolean
+                                secretRef:
+                                  description: SecretRef references to the secret
+                                    for ScaleIO user and other sensitive information.
+                                    If this is not provided, Login operation will
+                                    fail.
+                                  properties:
+                                    name:
+                                      description: 'Name of the referent. More info:
+                                        https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+                                        TODO: Add other useful fields. apiVersion,
+                                        kind, uid?'
+                                      type: string
+                                  type: object
+                                sslEnabled:
+                                  description: Flag to enable/disable SSL communication
+                                    with Gateway, default false
+                                  type: boolean
+                                storageMode:
+                                  description: Indicates whether the storage for a
+                                    volume should be ThickProvisioned or ThinProvisioned.
+                                    Default is ThinProvisioned.
+                                  type: string
+                                storagePool:
+                                  description: The ScaleIO Storage Pool associated
+                                    with the protection domain.
+                                  type: string
+                                system:
+                                  description: The name of the storage system as configured
+                                    in ScaleIO.
+                                  type: string
+                                volumeName:
+                                  description: The name of a volume already created
+                                    in the ScaleIO system that is associated with
+                                    this volume source.
+                                  type: string
+                              required:
+                              - gateway
+                              - secretRef
+                              - system
+                              type: object
+                            secret:
+                              description: 'Secret represents a secret that should
+                                populate this volume. More info: https://kubernetes.io/docs/concepts/storage/volumes#secret'
+                              properties:
+                                defaultMode:
+                                  description: 'Optional: mode bits to use on created
+                                    files by default. Must be a value between 0 and
+                                    0777. Defaults to 0644. Directories within the
+                                    path are not affected by this setting. This might
+                                    be in conflict with other options that affect
+                                    the file mode, like fsGroup, and the result can
+                                    be other mode bits set.'
+                                  format: int32
+                                  type: integer
+                                items:
+                                  description: If unspecified, each key-value pair
+                                    in the Data field of the referenced Secret will
+                                    be projected into the volume as a file whose name
+                                    is the key and content is the value. If specified,
+                                    the listed keys will be projected into the specified
+                                    paths, and unlisted keys will not be present.
+                                    If a key is specified which is not present in
+                                    the Secret, the volume setup will error unless
+                                    it is marked optional. Paths must be relative
+                                    and may not contain the '..' path or start with
+                                    '..'.
+                                  items:
+                                    description: Maps a string key to a path within
+                                      a volume.
+                                    properties:
+                                      key:
+                                        description: The key to project.
+                                        type: string
+                                      mode:
+                                        description: 'Optional: mode bits to use on
+                                          this file, must be a value between 0 and
+                                          0777. If not specified, the volume defaultMode
+                                          will be used. This might be in conflict
+                                          with other options that affect the file
+                                          mode, like fsGroup, and the result can be
+                                          other mode bits set.'
+                                        format: int32
+                                        type: integer
+                                      path:
+                                        description: The relative path of the file
+                                          to map the key to. May not be an absolute
+                                          path. May not contain the path element '..'.
+                                          May not start with the string '..'.
+                                        type: string
+                                    required:
+                                    - key
+                                    - path
+                                    type: object
+                                  type: array
+                                optional:
+                                  description: Specify whether the Secret or its keys
+                                    must be defined
+                                  type: boolean
+                                secretName:
+                                  description: 'Name of the secret in the pod''s namespace
+                                    to use. More info: https://kubernetes.io/docs/concepts/storage/volumes#secret'
+                                  type: string
+                              type: object
+                            storageos:
+                              description: StorageOS represents a StorageOS volume
+                                attached and mounted on Kubernetes nodes.
+                              properties:
+                                fsType:
+                                  description: Filesystem type to mount. Must be a
+                                    filesystem type supported by the host operating
+                                    system. Ex. "ext4", "xfs", "ntfs". Implicitly
+                                    inferred to be "ext4" if unspecified.
+                                  type: string
+                                readOnly:
+                                  description: Defaults to false (read/write). ReadOnly
+                                    here will force the ReadOnly setting in VolumeMounts.
+                                  type: boolean
+                                secretRef:
+                                  description: SecretRef specifies the secret to use
+                                    for obtaining the StorageOS API credentials.  If
+                                    not specified, default values will be attempted.
+                                  properties:
+                                    name:
+                                      description: 'Name of the referent. More info:
+                                        https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+                                        TODO: Add other useful fields. apiVersion,
+                                        kind, uid?'
+                                      type: string
+                                  type: object
+                                volumeName:
+                                  description: VolumeName is the human-readable name
+                                    of the StorageOS volume.  Volume names are only
+                                    unique within a namespace.
+                                  type: string
+                                volumeNamespace:
+                                  description: VolumeNamespace specifies the scope
+                                    of the volume within StorageOS.  If no namespace
+                                    is specified then the Pod's namespace will be
+                                    used.  This allows the Kubernetes name scoping
+                                    to be mirrored within StorageOS for tighter integration.
+                                    Set VolumeName to any name to override the default
+                                    behaviour. Set to "default" if you are not using
+                                    namespaces within StorageOS. Namespaces that do
+                                    not pre-exist within StorageOS will be created.
+                                  type: string
+                              type: object
+                            vsphereVolume:
+                              description: VsphereVolume represents a vSphere volume
+                                attached and mounted on kubelets host machine
+                              properties:
+                                fsType:
+                                  description: Filesystem type to mount. Must be a
+                                    filesystem type supported by the host operating
+                                    system. Ex. "ext4", "xfs", "ntfs". Implicitly
+                                    inferred to be "ext4" if unspecified.
+                                  type: string
+                                storagePolicyID:
+                                  description: Storage Policy Based Management (SPBM)
+                                    profile ID associated with the StoragePolicyName.
+                                  type: string
+                                storagePolicyName:
+                                  description: Storage Policy Based Management (SPBM)
+                                    profile name.
+                                  type: string
+                                volumePath:
+                                  description: Path that identifies vSphere volume
+                                    vmdk
+                                  type: string
+                              required:
+                              - volumePath
+                              type: object
+                          required:
+                          - name
+                          type: object
+                        type: array
+                      workingDir:
+                        type: string
+                    type: object
+                type: object
+              type: array
+          type: object
+        status:
+          description: BuildStatus defines the observed state of Build
+          properties:
+            artifacts:
+              items:
+                description: Artifact --
+                properties:
+                  checksum:
+                    type: string
+                  id:
+                    type: string
+                  location:
+                    type: string
+                  target:
+                    type: string
+                required:
+                - id
+                type: object
+              type: array
+            baseImage:
+              type: string
+            conditions:
+              items:
+                description: BuildCondition describes the state of a resource at a
+                  certain point.
+                properties:
+                  lastTransitionTime:
+                    description: Last time the condition transitioned from one status
+                      to another.
+                    format: date-time
+                    type: string
+                  lastUpdateTime:
+                    description: The last time this condition was updated.
+                    format: date-time
+                    type: string
+                  message:
+                    description: A human readable message indicating details about
+                      the transition.
+                    type: string
+                  reason:
+                    description: The reason for the condition's last transition.
+                    type: string
+                  status:
+                    description: Status of the condition, one of True, False, Unknown.
+                    type: string
+                  type:
+                    description: Type of integration condition.
+                    type: string
+                required:
+                - status
+                - type
+                type: object
+              type: array
+            digest:
+              type: string
+            duration:
+              description: Change to Duration / ISO 8601 when CRD uses OpenAPI spec
+                v3 https://github.com/OAI/OpenAPI-Specification/issues/845
+              type: string
+            error:
+              type: string
+            failure:
+              description: Failure --
+              properties:
+                reason:
+                  type: string
+                recovery:
+                  description: FailureRecovery --
+                  properties:
+                    attempt:
+                      type: integer
+                    attemptMax:
+                      type: integer
+                    attemptTime:
+                      format: date-time
+                      type: string
+                  required:
+                  - attempt
+                  - attemptMax
+                  type: object
+                time:
+                  format: date-time
+                  type: string
+              required:
+              - reason
+              - recovery
+              - time
+              type: object
+            image:
+              type: string
+            phase:
+              description: BuildPhase --
+              type: string
+            platform:
+              type: string
+            startedAt:
+              format: date-time
+              type: string
+          type: object
+      type: object
+  version: v1
+  versions:
+  - name: v1
+    served: true
+    storage: true
diff --git a/deploy/olm-catalog/camel-k-dev/1.3.1-snapshot/camelcatalogs.camel.apache.org.crd.yaml b/deploy/olm-catalog/camel-k-dev/1.3.1-snapshot/camelcatalogs.camel.apache.org.crd.yaml
new file mode 100644
index 0000000..f0c6af7
--- /dev/null
+++ b/deploy/olm-catalog/camel-k-dev/1.3.1-snapshot/camelcatalogs.camel.apache.org.crd.yaml
@@ -0,0 +1,331 @@
+# ---------------------------------------------------------------------------
+# 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.
+# ---------------------------------------------------------------------------
+
+apiVersion: apiextensions.k8s.io/v1beta1
+kind: CustomResourceDefinition
+metadata:
+  labels:
+    app: "camel-k"
+  annotations:
+    controller-gen.kubebuilder.io/version: v0.4.1
+  creationTimestamp: null
+  name: camelcatalogs.camel.apache.org
+spec:
+  additionalPrinterColumns:
+  - JSONPath: .spec.runtime.version
+    description: The Camel K Runtime version
+    name: Runtime Version
+    type: string
+  - JSONPath: .spec.runtime.provider
+    description: The Camel K Runtime provider
+    name: Runtime Provider
+    type: string
+  group: camel.apache.org
+  names:
+    categories:
+    - kamel
+    - camel
+    kind: CamelCatalog
+    listKind: CamelCatalogList
+    plural: camelcatalogs
+    shortNames:
+    - cc
+    singular: camelcatalog
+  scope: Namespaced
+  subresources:
+    status: {}
+  validation:
+    openAPIV3Schema:
+      description: CamelCatalog is the Schema for the camelcatalogs API
+      properties:
+        apiVersion:
+          description: 'APIVersion defines the versioned schema of this representation
+            of an object. Servers should convert recognized schemas to the latest
+            internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
+          type: string
+        kind:
+          description: 'Kind is a string value representing the REST resource this
+            object represents. Servers may infer this from the endpoint the client
+            submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
+          type: string
+        metadata:
+          type: object
+        spec:
+          description: CamelCatalogSpec defines the desired state of CamelCatalog
+          properties:
+            artifacts:
+              additionalProperties:
+                description: CamelArtifact --
+                properties:
+                  artifactId:
+                    type: string
+                  dataformats:
+                    items:
+                      type: string
+                    type: array
+                  dependencies:
+                    items:
+                      description: CamelArtifactDependency represent a maven's dependency
+                      properties:
+                        artifactId:
+                          type: string
+                        exclusions:
+                          items:
+                            description: CamelArtifactExclusion --
+                            properties:
+                              artifactId:
+                                type: string
+                              groupId:
+                                type: string
+                            required:
+                            - artifactId
+                            - groupId
+                            type: object
+                          type: array
+                        groupId:
+                          type: string
+                        version:
+                          type: string
+                      required:
+                      - artifactId
+                      - groupId
+                      type: object
+                    type: array
+                  exclusions:
+                    items:
+                      description: CamelArtifactExclusion --
+                      properties:
+                        artifactId:
+                          type: string
+                        groupId:
+                          type: string
+                      required:
+                      - artifactId
+                      - groupId
+                      type: object
+                    type: array
+                  groupId:
+                    type: string
+                  javaTypes:
+                    items:
+                      type: string
+                    type: array
+                  languages:
+                    items:
+                      type: string
+                    type: array
+                  schemes:
+                    items:
+                      description: CamelScheme --
+                      properties:
+                        consumer:
+                          description: CamelSchemeScope contains scoped information
+                            about a scheme
+                          properties:
+                            dependencies:
+                              items:
+                                description: CamelArtifactDependency represent a maven's
+                                  dependency
+                                properties:
+                                  artifactId:
+                                    type: string
+                                  exclusions:
+                                    items:
+                                      description: CamelArtifactExclusion --
+                                      properties:
+                                        artifactId:
+                                          type: string
+                                        groupId:
+                                          type: string
+                                      required:
+                                      - artifactId
+                                      - groupId
+                                      type: object
+                                    type: array
+                                  groupId:
+                                    type: string
+                                  version:
+                                    type: string
+                                required:
+                                - artifactId
+                                - groupId
+                                type: object
+                              type: array
+                          type: object
+                        http:
+                          type: boolean
+                        id:
+                          type: string
+                        passive:
+                          type: boolean
+                        producer:
+                          description: CamelSchemeScope contains scoped information
+                            about a scheme
+                          properties:
+                            dependencies:
+                              items:
+                                description: CamelArtifactDependency represent a maven's
+                                  dependency
+                                properties:
+                                  artifactId:
+                                    type: string
+                                  exclusions:
+                                    items:
+                                      description: CamelArtifactExclusion --
+                                      properties:
+                                        artifactId:
+                                          type: string
+                                        groupId:
+                                          type: string
+                                      required:
+                                      - artifactId
+                                      - groupId
+                                      type: object
+                                    type: array
+                                  groupId:
+                                    type: string
+                                  version:
+                                    type: string
+                                required:
+                                - artifactId
+                                - groupId
+                                type: object
+                              type: array
+                          type: object
+                      required:
+                      - http
+                      - id
+                      - passive
+                      type: object
+                    type: array
+                  version:
+                    type: string
+                required:
+                - artifactId
+                - groupId
+                type: object
+              type: object
+            loaders:
+              additionalProperties:
+                description: CamelLoader --
+                properties:
+                  artifactId:
+                    type: string
+                  dependencies:
+                    items:
+                      description: MavenArtifact --
+                      properties:
+                        artifactId:
+                          type: string
+                        groupId:
+                          type: string
+                        version:
+                          type: string
+                      required:
+                      - artifactId
+                      - groupId
+                      type: object
+                    type: array
+                  groupId:
+                    type: string
+                  languages:
+                    items:
+                      type: string
+                    type: array
+                  version:
+                    type: string
+                required:
+                - artifactId
+                - groupId
+                type: object
+              type: object
+            runtime:
+              description: RuntimeSpec --
+              properties:
+                applicationClass:
+                  type: string
+                capabilities:
+                  additionalProperties:
+                    description: Capability --
+                    properties:
+                      dependencies:
+                        items:
+                          description: MavenArtifact --
+                          properties:
+                            artifactId:
+                              type: string
+                            groupId:
+                              type: string
+                            version:
+                              type: string
+                          required:
+                          - artifactId
+                          - groupId
+                          type: object
+                        type: array
+                      metadata:
+                        additionalProperties:
+                          type: string
+                        type: object
+                    required:
+                    - dependencies
+                    type: object
+                  type: object
+                dependencies:
+                  items:
+                    description: MavenArtifact --
+                    properties:
+                      artifactId:
+                        type: string
+                      groupId:
+                        type: string
+                      version:
+                        type: string
+                    required:
+                    - artifactId
+                    - groupId
+                    type: object
+                  type: array
+                metadata:
+                  additionalProperties:
+                    type: string
+                  type: object
+                provider:
+                  description: RuntimeProvider --
+                  type: string
+                version:
+                  type: string
+              required:
+              - applicationClass
+              - dependencies
+              - provider
+              - version
+              type: object
+          required:
+          - artifacts
+          - loaders
+          - runtime
+          type: object
+        status:
+          description: CamelCatalogStatus defines the observed state of CamelCatalog
+          type: object
+      type: object
+  version: v1
+  versions:
+  - name: v1
+    served: true
+    storage: true
diff --git a/deploy/olm-catalog/camel-k-dev/1.3.1-snapshot/integrationkits.camel.apache.org.crd.yaml b/deploy/olm-catalog/camel-k-dev/1.3.1-snapshot/integrationkits.camel.apache.org.crd.yaml
new file mode 100644
index 0000000..23f52b3
--- /dev/null
+++ b/deploy/olm-catalog/camel-k-dev/1.3.1-snapshot/integrationkits.camel.apache.org.crd.yaml
@@ -0,0 +1,215 @@
+# ---------------------------------------------------------------------------
+# 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.
+# ---------------------------------------------------------------------------
+
+apiVersion: apiextensions.k8s.io/v1beta1
+kind: CustomResourceDefinition
+metadata:
+  labels:
+    app: "camel-k"
+  annotations:
+    controller-gen.kubebuilder.io/version: v0.4.1
+  creationTimestamp: null
+  name: integrationkits.camel.apache.org
+spec:
+  additionalPrinterColumns:
+  - JSONPath: .status.phase
+    description: The integration kit phase
+    name: Phase
+    type: string
+  - JSONPath: .metadata.labels.camel\.apache\.org\/kit\.type
+    description: The integration kit type
+    name: Type
+    type: string
+  - JSONPath: .status.image
+    description: The integration kit image
+    name: Image
+    type: string
+  group: camel.apache.org
+  names:
+    categories:
+    - kamel
+    - camel
+    kind: IntegrationKit
+    listKind: IntegrationKitList
+    plural: integrationkits
+    shortNames:
+    - ik
+    singular: integrationkit
+  scope: Namespaced
+  subresources:
+    status: {}
+  validation:
+    openAPIV3Schema:
+      description: IntegrationKit is the Schema for the integrationkits API
+      properties:
+        apiVersion:
+          description: 'APIVersion defines the versioned schema of this representation
+            of an object. Servers should convert recognized schemas to the latest
+            internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
+          type: string
+        kind:
+          description: 'Kind is a string value representing the REST resource this
+            object represents. Servers may infer this from the endpoint the client
+            submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
+          type: string
+        metadata:
+          type: object
+        spec:
+          description: IntegrationKitSpec defines the desired state of IntegrationKit
+          properties:
+            configuration:
+              items:
+                description: ConfigurationSpec --
+                properties:
+                  type:
+                    type: string
+                  value:
+                    type: string
+                required:
+                - type
+                - value
+                type: object
+              type: array
+            dependencies:
+              items:
+                type: string
+              type: array
+            image:
+              type: string
+            profile:
+              description: TraitProfile represents lists of traits that are enabled
+                for the specific installation/integration
+              type: string
+            repositories:
+              items:
+                type: string
+              type: array
+            traits:
+              additionalProperties:
+                description: A TraitSpec contains the configuration of a trait
+                properties:
+                  configuration:
+                    description: TraitConfiguration --
+                    type: object
+                required:
+                - configuration
+                type: object
+              type: object
+          type: object
+        status:
+          description: IntegrationKitStatus defines the observed state of IntegrationKit
+          properties:
+            artifacts:
+              items:
+                description: Artifact --
+                properties:
+                  checksum:
+                    type: string
+                  id:
+                    type: string
+                  location:
+                    type: string
+                  target:
+                    type: string
+                required:
+                - id
+                type: object
+              type: array
+            baseImage:
+              type: string
+            conditions:
+              items:
+                description: IntegrationKitCondition describes the state of a resource
+                  at a certain point.
+                properties:
+                  lastTransitionTime:
+                    description: Last time the condition transitioned from one status
+                      to another.
+                    format: date-time
+                    type: string
+                  lastUpdateTime:
+                    description: The last time this condition was updated.
+                    format: date-time
+                    type: string
+                  message:
+                    description: A human readable message indicating details about
+                      the transition.
+                    type: string
+                  reason:
+                    description: The reason for the condition's last transition.
+                    type: string
+                  status:
+                    description: Status of the condition, one of True, False, Unknown.
+                    type: string
+                  type:
+                    description: Type of integration condition.
+                    type: string
+                required:
+                - status
+                - type
+                type: object
+              type: array
+            digest:
+              type: string
+            failure:
+              description: Failure --
+              properties:
+                reason:
+                  type: string
+                recovery:
+                  description: FailureRecovery --
+                  properties:
+                    attempt:
+                      type: integer
+                    attemptMax:
+                      type: integer
+                    attemptTime:
+                      format: date-time
+                      type: string
+                  required:
+                  - attempt
+                  - attemptMax
+                  type: object
+                time:
+                  format: date-time
+                  type: string
+              required:
+              - reason
+              - recovery
+              - time
+              type: object
+            image:
+              type: string
+            phase:
+              description: IntegrationKitPhase --
+              type: string
+            platform:
+              type: string
+            runtimeProvider:
+              description: RuntimeProvider --
+              type: string
+            runtimeVersion:
+              type: string
+            version:
+              type: string
+          type: object
+      type: object
+  version: v1
+  versions:
+  - name: v1
+    served: true
+    storage: true
diff --git a/deploy/olm-catalog/camel-k-dev/1.3.1-snapshot/integrationplatforms.camel.apache.org.crd.yaml b/deploy/olm-catalog/camel-k-dev/1.3.1-snapshot/integrationplatforms.camel.apache.org.crd.yaml
new file mode 100644
index 0000000..5cdc3ff
--- /dev/null
+++ b/deploy/olm-catalog/camel-k-dev/1.3.1-snapshot/integrationplatforms.camel.apache.org.crd.yaml
@@ -0,0 +1,396 @@
+# ---------------------------------------------------------------------------
+# 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.
+# ---------------------------------------------------------------------------
+
+apiVersion: apiextensions.k8s.io/v1beta1
+kind: CustomResourceDefinition
+metadata:
+  labels:
+    app: "camel-k"
+  annotations:
+    controller-gen.kubebuilder.io/version: v0.4.1
+  creationTimestamp: null
+  name: integrationplatforms.camel.apache.org
+spec:
+  additionalPrinterColumns:
+  - JSONPath: .status.phase
+    description: The integration platform phase
+    name: Phase
+    type: string
+  group: camel.apache.org
+  names:
+    categories:
+    - kamel
+    - camel
+    kind: IntegrationPlatform
+    listKind: IntegrationPlatformList
+    plural: integrationplatforms
+    shortNames:
+    - ip
+    singular: integrationplatform
+  scope: Namespaced
+  subresources:
+    status: {}
+  validation:
+    openAPIV3Schema:
+      description: IntegrationPlatform is the Schema for the integrationplatforms
+        API
+      properties:
+        apiVersion:
+          description: 'APIVersion defines the versioned schema of this representation
+            of an object. Servers should convert recognized schemas to the latest
+            internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
+          type: string
+        kind:
+          description: 'Kind is a string value representing the REST resource this
+            object represents. Servers may infer this from the endpoint the client
+            submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
+          type: string
+        metadata:
+          type: object
+        spec:
+          description: IntegrationPlatformSpec defines the desired state of IntegrationPlatform
+          properties:
+            build:
+              description: IntegrationPlatformBuildSpec contains platform related
+                build information
+              properties:
+                baseImage:
+                  type: string
+                buildStrategy:
+                  description: IntegrationPlatformBuildStrategy enumerates all implemented
+                    build strategies
+                  type: string
+                httpProxySecret:
+                  type: string
+                kanikoBuildCache:
+                  type: boolean
+                maven:
+                  description: MavenSpec --
+                  properties:
+                    localRepository:
+                      type: string
+                    settings:
+                      description: ValueSource --
+                      properties:
+                        configMapKeyRef:
+                          description: Selects a key of a ConfigMap.
+                          properties:
+                            key:
+                              description: The key to select.
+                              type: string
+                            name:
+                              description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+                                TODO: Add other useful fields. apiVersion, kind, uid?'
+                              type: string
+                            optional:
+                              description: Specify whether the ConfigMap or its key
+                                must be defined
+                              type: boolean
+                          required:
+                          - key
+                          type: object
+                        secretKeyRef:
+                          description: Selects a key of a secret.
+                          properties:
+                            key:
+                              description: The key of the secret to select from.  Must
+                                be a valid secret key.
+                              type: string
+                            name:
+                              description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
+                                TODO: Add other useful fields. apiVersion, kind, uid?'
+                              type: string
+                            optional:
+                              description: Specify whether the Secret or its key must
+                                be defined
+                              type: boolean
+                          required:
+                          - key
+                          type: object
+                      type: object
+                    timeout:
+                      type: string
+                  type: object
+                persistentVolumeClaim:
+                  type: string
+                properties:
+                  additionalProperties:
+                    type: string
+                  type: object
+                publishStrategy:
+                  description: IntegrationPlatformBuildPublishStrategy enumerates
+                    all implemented publish strategies
+                  type: string
+                registry:
+                  description: IntegrationPlatformRegistrySpec --
+                  properties:
+                    address:
+                      type: string
+                    ca:
+                      type: string
+                    insecure:
+                      type: boolean
+                    organization:
+                      type: string
+                    secret:
+                      type: string
+                  type: object
+                runtimeProvider:
+                  description: RuntimeProvider --
+                  type: string
+                runtimeVersion:
+                  type: string
+                timeout:
+                  type: string
+              type: object
+            cluster:
+              description: IntegrationPlatformCluster is the kind of orchestration
+                cluster the platform is installed into
+              type: string
+            configuration:
+              items:
+                description: ConfigurationSpec --
+                properties:
+                  type:
+                    type: string
+                  value:
+                    type: string
+                required:
+                - type
+                - value
+                type: object
+              type: array
+            kamelet:
+              description: IntegrationPlatformKameletSpec --
+              properties:
+                repositories:
+                  items:
+                    description: IntegrationPlatformKameletRepositorySpec --
+                    properties:
+                      uri:
+                        type: string
+                    type: object
+                  type: array
+              type: object
+            profile:
+              description: TraitProfile represents lists of traits that are enabled
+                for the specific installation/integration
+              type: string
+            resources:
+              description: IntegrationPlatformResourcesSpec contains platform related
+                resources
+              type: object
+            traits:
+              additionalProperties:
+                description: A TraitSpec contains the configuration of a trait
+                properties:
+                  configuration:
+                    description: TraitConfiguration --
+                    type: object
+                required:
+                - configuration
+                type: object
+              type: object
+          type: object
... 2143 lines suppressed ...