diff --git a/assets/json-schema/CamelCatalog.json b/assets/json-schema/CamelCatalog.json index 87aab60442..341c9993c6 100644 --- a/assets/json-schema/CamelCatalog.json +++ b/assets/json-schema/CamelCatalog.json @@ -33,6 +33,12 @@ "groupId": { "type": "string" }, + "javaTypes": { + "items": { + "type": "string" + }, + "type": "array" + }, "languages": { "items": { "type": "string" diff --git a/build/maven/pom-runtime.xml b/build/maven/pom-runtime.xml index a661965850..ba044bc3e8 100644 --- a/build/maven/pom-runtime.xml +++ b/build/maven/pom-runtime.xml @@ -60,6 +60,11 @@ camel-k-runtime-knative ${runtime.version} + + org.apache.camel.k + camel-k-runtime-cron + ${runtime.version} + org.apache.camel.k diff --git a/deploy/camel-catalog-3.0.0-1.0.10.yaml b/deploy/camel-catalog-3.0.0-1.0.10.yaml new file mode 100644 index 0000000000..d4e36f2964 --- /dev/null +++ b/deploy/camel-catalog-3.0.0-1.0.10.yaml @@ -0,0 +1,2919 @@ +# --------------------------------------------------------------------------- +# 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: camel.apache.org/v1 +kind: CamelCatalog +metadata: + name: camel-catalog-3.0.0-1.0.10 + labels: + app: camel-k + camel.apache.org/catalog.version: 3.0.0 + camel.apache.org/catalog.loader.version: 3.0.0 + camel.apache.org/runtime.version: 1.0.10 +spec: + version: 3.0.0 + runtimeVersion: 1.0.10 + artifacts: + camel-activemq: + groupId: org.apache.camel + artifactId: camel-activemq + schemes: + - id: activemq + http: false + passive: false + javaTypes: + - org.apache.camel.component.activemq.ActiveMQComponent + camel-ahc: + groupId: org.apache.camel + artifactId: camel-ahc + schemes: + - id: ahc + http: true + passive: false + javaTypes: + - org.apache.camel.component.ahc.AhcComponent + camel-ahc-ws: + groupId: org.apache.camel + artifactId: camel-ahc-ws + schemes: + - id: ahc-ws + http: true + passive: false + - id: ahc-wss + http: false + passive: false + javaTypes: + - org.apache.camel.component.ahc.ws.WsComponent + camel-amqp: + groupId: org.apache.camel + artifactId: camel-amqp + schemes: + - id: amqp + http: false + passive: false + javaTypes: + - org.apache.camel.component.amqp.AMQPComponent + camel-any23: + groupId: org.apache.camel + artifactId: camel-any23 + dataformats: + - any23 + javaTypes: + - org.apache.camel.dataformat.any23.Any23DataFormat + camel-apns: + groupId: org.apache.camel + artifactId: camel-apns + schemes: + - id: apns + http: false + passive: false + javaTypes: + - org.apache.camel.component.apns.ApnsComponent + camel-as2: + groupId: org.apache.camel + artifactId: camel-as2 + schemes: + - id: as2 + http: false + passive: false + javaTypes: + - org.apache.camel.component.as2.AS2Component + camel-asn1: + groupId: org.apache.camel + artifactId: camel-asn1 + dataformats: + - asn1 + javaTypes: + - org.apache.camel.dataformat.asn1.ASN1DataFormat + camel-asterisk: + groupId: org.apache.camel + artifactId: camel-asterisk + schemes: + - id: asterisk + http: false + passive: false + javaTypes: + - org.apache.camel.component.asterisk.AsteriskComponent + camel-atmos: + groupId: org.apache.camel + artifactId: camel-atmos + schemes: + - id: atmos + http: false + passive: false + javaTypes: + - org.apache.camel.component.atmos.AtmosComponent + camel-atmosphere-websocket: + groupId: org.apache.camel + artifactId: camel-atmosphere-websocket + schemes: + - id: atmosphere-websocket + http: true + passive: false + javaTypes: + - org.apache.camel.component.atmosphere.websocket.WebsocketComponent + camel-atom: + groupId: org.apache.camel + artifactId: camel-atom + schemes: + - id: atom + http: false + passive: false + javaTypes: + - org.apache.camel.component.atom.AtomComponent + camel-atomix: + groupId: org.apache.camel + artifactId: camel-atomix + schemes: + - id: atomix-map + http: false + passive: false + - id: atomix-messaging + http: false + passive: false + - id: atomix-multimap + http: false + passive: false + - id: atomix-queue + http: false + passive: false + - id: atomix-set + http: false + passive: false + - id: atomix-value + http: false + passive: false + javaTypes: + - org.apache.camel.component.atomix.client.map.AtomixMapComponent + - org.apache.camel.component.atomix.client.messaging.AtomixMessagingComponent + - org.apache.camel.component.atomix.client.multimap.AtomixMultiMapComponent + - org.apache.camel.component.atomix.client.queue.AtomixQueueComponent + - org.apache.camel.component.atomix.client.set.AtomixSetComponent + - org.apache.camel.component.atomix.client.value.AtomixValueComponent + camel-avro: + groupId: org.apache.camel + artifactId: camel-avro + schemes: + - id: avro + http: false + passive: false + dataformats: + - avro + javaTypes: + - org.apache.camel.component.avro.AvroComponent + - org.apache.camel.dataformat.avro.AvroDataFormat + camel-aws-cw: + groupId: org.apache.camel + artifactId: camel-aws-cw + schemes: + - id: aws-cw + http: false + passive: false + javaTypes: + - org.apache.camel.component.aws.cw.CwComponent + camel-aws-ddb: + groupId: org.apache.camel + artifactId: camel-aws-ddb + schemes: + - id: aws-ddb + http: false + passive: false + - id: aws-ddbstream + http: false + passive: false + javaTypes: + - org.apache.camel.component.aws.ddb.DdbComponent + - org.apache.camel.component.aws.ddbstream.DdbStreamComponent + camel-aws-ec2: + groupId: org.apache.camel + artifactId: camel-aws-ec2 + schemes: + - id: aws-ec2 + http: false + passive: false + javaTypes: + - org.apache.camel.component.aws.ec2.EC2Component + camel-aws-ecs: + groupId: org.apache.camel + artifactId: camel-aws-ecs + schemes: + - id: aws-ecs + http: false + passive: false + javaTypes: + - org.apache.camel.component.aws.ecs.ECSComponent + camel-aws-eks: + groupId: org.apache.camel + artifactId: camel-aws-eks + schemes: + - id: aws-eks + http: false + passive: false + javaTypes: + - org.apache.camel.component.aws.eks.EKSComponent + camel-aws-iam: + groupId: org.apache.camel + artifactId: camel-aws-iam + schemes: + - id: aws-iam + http: false + passive: false + javaTypes: + - org.apache.camel.component.aws.iam.IAMComponent + camel-aws-kinesis: + groupId: org.apache.camel + artifactId: camel-aws-kinesis + schemes: + - id: aws-kinesis + http: false + passive: false + - id: aws-kinesis-firehose + http: false + passive: false + javaTypes: + - org.apache.camel.component.aws.kinesis.KinesisComponent + - org.apache.camel.component.aws.firehose.KinesisFirehoseComponent + camel-aws-kms: + groupId: org.apache.camel + artifactId: camel-aws-kms + schemes: + - id: aws-kms + http: false + passive: false + javaTypes: + - org.apache.camel.component.aws.kms.KMSComponent + camel-aws-lambda: + groupId: org.apache.camel + artifactId: camel-aws-lambda + schemes: + - id: aws-lambda + http: false + passive: false + javaTypes: + - org.apache.camel.component.aws.lambda.LambdaComponent + camel-aws-mq: + groupId: org.apache.camel + artifactId: camel-aws-mq + schemes: + - id: aws-mq + http: false + passive: false + javaTypes: + - org.apache.camel.component.aws.mq.MQComponent + camel-aws-msk: + groupId: org.apache.camel + artifactId: camel-aws-msk + schemes: + - id: aws-msk + http: false + passive: false + javaTypes: + - org.apache.camel.component.aws.msk.MSKComponent + camel-aws-s3: + groupId: org.apache.camel + artifactId: camel-aws-s3 + schemes: + - id: aws-s3 + http: false + passive: false + javaTypes: + - org.apache.camel.component.aws.s3.S3Component + camel-aws-sdb: + groupId: org.apache.camel + artifactId: camel-aws-sdb + schemes: + - id: aws-sdb + http: false + passive: false + javaTypes: + - org.apache.camel.component.aws.sdb.SdbComponent + camel-aws-ses: + groupId: org.apache.camel + artifactId: camel-aws-ses + schemes: + - id: aws-ses + http: false + passive: false + javaTypes: + - org.apache.camel.component.aws.ses.SesComponent + camel-aws-sns: + groupId: org.apache.camel + artifactId: camel-aws-sns + schemes: + - id: aws-sns + http: false + passive: false + javaTypes: + - org.apache.camel.component.aws.sns.SnsComponent + camel-aws-sqs: + groupId: org.apache.camel + artifactId: camel-aws-sqs + schemes: + - id: aws-sqs + http: false + passive: false + javaTypes: + - org.apache.camel.component.aws.sqs.SqsComponent + camel-aws-swf: + groupId: org.apache.camel + artifactId: camel-aws-swf + schemes: + - id: aws-swf + http: false + passive: false + javaTypes: + - org.apache.camel.component.aws.swf.SWFComponent + camel-aws-translate: + groupId: org.apache.camel + artifactId: camel-aws-translate + schemes: + - id: aws-translate + http: false + passive: false + javaTypes: + - org.apache.camel.component.aws.translate.TranslateComponent + camel-azure: + groupId: org.apache.camel + artifactId: camel-azure + schemes: + - id: azure-blob + http: false + passive: false + - id: azure-queue + http: false + passive: false + javaTypes: + - org.apache.camel.component.azure.blob.BlobServiceComponent + - org.apache.camel.component.azure.queue.QueueServiceComponent + camel-barcode: + groupId: org.apache.camel + artifactId: camel-barcode + dataformats: + - barcode + javaTypes: + - org.apache.camel.dataformat.barcode.BarcodeDataFormat + camel-base: + groupId: org.apache.camel + artifactId: camel-base + languages: + - constant + - exchangeProperty + - file + - header + - ref + - simple + - tokenize + javaTypes: + - org.apache.camel.language.constant.ConstantLanguage + - org.apache.camel.language.property.ExchangePropertyLanguage + - org.apache.camel.language.simple.FileLanguage + - org.apache.camel.language.header.HeaderLanguage + - org.apache.camel.language.ref.RefLanguage + - org.apache.camel.language.simple.SimpleLanguage + - org.apache.camel.language.tokenizer.TokenizeLanguage + camel-base64: + groupId: org.apache.camel + artifactId: camel-base64 + dataformats: + - base64 + javaTypes: + - org.apache.camel.dataformat.base64.Base64DataFormat + camel-bean: + groupId: org.apache.camel + artifactId: camel-bean + schemes: + - id: bean + http: false + passive: true + - id: class + http: false + passive: true + languages: + - bean + javaTypes: + - org.apache.camel.component.bean.BeanComponent + - org.apache.camel.component.beanclass.ClassComponent + - org.apache.camel.language.bean.BeanLanguage + camel-bean-validator: + groupId: org.apache.camel + artifactId: camel-bean-validator + schemes: + - id: bean-validator + http: false + passive: false + javaTypes: + - org.apache.camel.component.bean.validator.BeanValidatorComponent + camel-beanio: + groupId: org.apache.camel + artifactId: camel-beanio + dataformats: + - beanio + javaTypes: + - org.apache.camel.dataformat.beanio.BeanIODataFormat + camel-beanstalk: + groupId: org.apache.camel + artifactId: camel-beanstalk + schemes: + - id: beanstalk + http: false + passive: false + javaTypes: + - org.apache.camel.component.beanstalk.BeanstalkComponent + camel-bindy: + groupId: org.apache.camel + artifactId: camel-bindy + dataformats: + - bindy-csv + - bindy-fixed + - bindy-kvp + javaTypes: + - org.apache.camel.dataformat.bindy.csv.BindyCsvDataFormat + - org.apache.camel.dataformat.bindy.fixed.BindyFixedLengthDataFormat + - org.apache.camel.dataformat.bindy.kvp.BindyKeyValuePairDataFormat + camel-bonita: + groupId: org.apache.camel + artifactId: camel-bonita + schemes: + - id: bonita + http: false + passive: false + javaTypes: + - org.apache.camel.component.bonita.BonitaComponent + camel-box: + groupId: org.apache.camel + artifactId: camel-box + schemes: + - id: box + http: false + passive: false + javaTypes: + - org.apache.camel.component.box.BoxComponent + camel-braintree: + groupId: org.apache.camel + artifactId: camel-braintree + schemes: + - id: braintree + http: false + passive: false + javaTypes: + - org.apache.camel.component.braintree.BraintreeComponent + camel-browse: + groupId: org.apache.camel + artifactId: camel-browse + schemes: + - id: browse + http: false + passive: true + javaTypes: + - org.apache.camel.component.browse.BrowseComponent + camel-caffeine: + groupId: org.apache.camel + artifactId: camel-caffeine + schemes: + - id: caffeine-cache + http: false + passive: false + - id: caffeine-loadcache + http: false + passive: false + javaTypes: + - org.apache.camel.component.caffeine.cache.CaffeineCacheComponent + - org.apache.camel.component.caffeine.load.CaffeineLoadCacheComponent + camel-cassandraql: + groupId: org.apache.camel + artifactId: camel-cassandraql + schemes: + - id: cql + http: false + passive: false + javaTypes: + - org.apache.camel.component.cassandra.CassandraComponent + camel-cbor: + groupId: org.apache.camel + artifactId: camel-cbor + dataformats: + - cbor + javaTypes: + - org.apache.camel.component.cbor.CBORDataFormat + camel-chatscript: + groupId: org.apache.camel + artifactId: camel-chatscript + schemes: + - id: chatscript + http: false + passive: false + javaTypes: + - org.apache.camel.component.chatscript.ChatScriptComponent + camel-chunk: + groupId: org.apache.camel + artifactId: camel-chunk + schemes: + - id: chunk + http: false + passive: false + javaTypes: + - org.apache.camel.component.chunk.ChunkComponent + camel-cm-sms: + groupId: org.apache.camel + artifactId: camel-cm-sms + schemes: + - id: cm-sms + http: false + passive: false + javaTypes: + - org.apache.camel.component.cm.CMComponent + camel-cmis: + groupId: org.apache.camel + artifactId: camel-cmis + schemes: + - id: cmis + http: false + passive: false + javaTypes: + - org.apache.camel.component.cmis.CMISComponent + camel-coap: + groupId: org.apache.camel + artifactId: camel-coap + schemes: + - id: coap + http: false + passive: false + - id: coaps + http: false + passive: false + - id: coap+tcp + http: false + passive: false + - id: coaps+tcp + http: false + passive: false + javaTypes: + - org.apache.camel.coap.CoAPComponent + camel-cometd: + groupId: org.apache.camel + artifactId: camel-cometd + schemes: + - id: cometd + http: false + passive: false + - id: cometds + http: false + passive: false + javaTypes: + - org.apache.camel.component.cometd.CometdComponent + camel-consul: + groupId: org.apache.camel + artifactId: camel-consul + schemes: + - id: consul + http: false + passive: false + javaTypes: + - org.apache.camel.component.consul.ConsulComponent + camel-controlbus: + groupId: org.apache.camel + artifactId: camel-controlbus + schemes: + - id: controlbus + http: false + passive: true + javaTypes: + - org.apache.camel.component.controlbus.ControlBusComponent + camel-corda: + groupId: org.apache.camel + artifactId: camel-corda + schemes: + - id: corda + http: false + passive: false + javaTypes: + - org.apache.camel.component.corda.CordaComponent + camel-couchbase: + groupId: org.apache.camel + artifactId: camel-couchbase + schemes: + - id: couchbase + http: false + passive: false + javaTypes: + - org.apache.camel.component.couchbase.CouchbaseComponent + camel-couchdb: + groupId: org.apache.camel + artifactId: camel-couchdb + schemes: + - id: couchdb + http: false + passive: false + javaTypes: + - org.apache.camel.component.couchdb.CouchDbComponent + camel-crypto: + groupId: org.apache.camel + artifactId: camel-crypto + schemes: + - id: crypto + http: false + passive: false + dataformats: + - crypto + - pgp + javaTypes: + - org.apache.camel.component.crypto.DigitalSignatureComponent + - org.apache.camel.converter.crypto.CryptoDataFormat + - org.apache.camel.converter.crypto.PGPDataFormat + camel-crypto-cms: + groupId: org.apache.camel + artifactId: camel-crypto-cms + schemes: + - id: crypto-cms + http: false + passive: false + javaTypes: + - org.apache.camel.component.crypto.cms.CryptoCmsComponent + camel-csv: + groupId: org.apache.camel + artifactId: camel-csv + dataformats: + - csv + javaTypes: + - org.apache.camel.dataformat.csv.CsvDataFormat + camel-cxf: + groupId: org.apache.camel + artifactId: camel-cxf + schemes: + - id: cxf + http: true + passive: false + - id: cxfrs + http: true + passive: false + javaTypes: + - org.apache.camel.component.cxf.CxfComponent + - org.apache.camel.component.cxf.jaxrs.CxfRsComponent + camel-dataformat: + groupId: org.apache.camel + artifactId: camel-dataformat + schemes: + - id: dataformat + http: false + passive: true + javaTypes: + - org.apache.camel.component.dataformat.DataFormatComponent + camel-dataset: + groupId: org.apache.camel + artifactId: camel-dataset + schemes: + - id: dataset + http: false + passive: true + - id: dataset-test + http: false + passive: false + javaTypes: + - org.apache.camel.component.dataset.DataSetComponent + - org.apache.camel.component.dataset.DataSetTestComponent + camel-debezium-mongodb: + groupId: org.apache.camel + artifactId: camel-debezium-mongodb + schemes: + - id: debezium-mongodb + http: false + passive: false + javaTypes: + - org.apache.camel.component.debezium.DebeziumMongodbComponent + camel-debezium-mysql: + groupId: org.apache.camel + artifactId: camel-debezium-mysql + schemes: + - id: debezium-mysql + http: false + passive: false + javaTypes: + - org.apache.camel.component.debezium.DebeziumMySqlComponent + camel-debezium-postgres: + groupId: org.apache.camel + artifactId: camel-debezium-postgres + schemes: + - id: debezium-postgres + http: false + passive: false + javaTypes: + - org.apache.camel.component.debezium.DebeziumPostgresComponent + camel-debezium-sqlserver: + groupId: org.apache.camel + artifactId: camel-debezium-sqlserver + schemes: + - id: debezium-sqlserver + http: false + passive: false + javaTypes: + - org.apache.camel.component.debezium.DebeziumSqlserverComponent + camel-digitalocean: + groupId: org.apache.camel + artifactId: camel-digitalocean + schemes: + - id: digitalocean + http: false + passive: false + javaTypes: + - org.apache.camel.component.digitalocean.DigitalOceanComponent + camel-direct: + groupId: org.apache.camel + artifactId: camel-direct + schemes: + - id: direct + http: false + passive: true + javaTypes: + - org.apache.camel.component.direct.DirectComponent + camel-directvm: + groupId: org.apache.camel + artifactId: camel-directvm + schemes: + - id: direct-vm + http: false + passive: true + javaTypes: + - org.apache.camel.component.directvm.DirectVmComponent + camel-disruptor: + groupId: org.apache.camel + artifactId: camel-disruptor + schemes: + - id: disruptor + http: false + passive: false + - id: disruptor-vm + http: false + passive: false + javaTypes: + - org.apache.camel.component.disruptor.DisruptorComponent + - org.apache.camel.component.disruptor.vm.DisruptorVmComponent + camel-dns: + groupId: org.apache.camel + artifactId: camel-dns + schemes: + - id: dns + http: false + passive: false + javaTypes: + - org.apache.camel.component.dns.DnsComponent + camel-docker: + groupId: org.apache.camel + artifactId: camel-docker + schemes: + - id: docker + http: false + passive: false + javaTypes: + - org.apache.camel.component.docker.DockerComponent + camel-dozer: + groupId: org.apache.camel + artifactId: camel-dozer + schemes: + - id: dozer + http: false + passive: false + javaTypes: + - org.apache.camel.component.dozer.DozerComponent + camel-drill: + groupId: org.apache.camel + artifactId: camel-drill + schemes: + - id: drill + http: false + passive: false + javaTypes: + - org.apache.camel.component.drill.DrillComponent + camel-dropbox: + groupId: org.apache.camel + artifactId: camel-dropbox + schemes: + - id: dropbox + http: false + passive: false + javaTypes: + - org.apache.camel.component.dropbox.DropboxComponent + camel-ehcache: + groupId: org.apache.camel + artifactId: camel-ehcache + schemes: + - id: ehcache + http: false + passive: false + javaTypes: + - org.apache.camel.component.ehcache.EhcacheComponent + camel-elasticsearch-rest: + groupId: org.apache.camel + artifactId: camel-elasticsearch-rest + schemes: + - id: elasticsearch-rest + http: false + passive: false + javaTypes: + - org.apache.camel.component.elasticsearch.ElasticsearchComponent + camel-elsql: + groupId: org.apache.camel + artifactId: camel-elsql + schemes: + - id: elsql + http: false + passive: false + javaTypes: + - org.apache.camel.component.elsql.ElsqlComponent + camel-etcd: + groupId: org.apache.camel + artifactId: camel-etcd + schemes: + - id: etcd + http: false + passive: false + javaTypes: + - org.apache.camel.component.etcd.EtcdComponent + camel-eventadmin: + groupId: org.apache.camel + artifactId: camel-eventadmin + schemes: + - id: eventadmin + http: false + passive: false + javaTypes: + - org.apache.camel.component.eventadmin.EventAdminComponent + camel-exec: + groupId: org.apache.camel + artifactId: camel-exec + schemes: + - id: exec + http: false + passive: false + javaTypes: + - org.apache.camel.component.exec.ExecComponent + camel-facebook: + groupId: org.apache.camel + artifactId: camel-facebook + schemes: + - id: facebook + http: false + passive: false + javaTypes: + - org.apache.camel.component.facebook.FacebookComponent + camel-fastjson: + groupId: org.apache.camel + artifactId: camel-fastjson + dataformats: + - json-fastjson + javaTypes: + - org.apache.camel.component.fastjson.FastjsonDataFormat + camel-fhir: + groupId: org.apache.camel + artifactId: camel-fhir + schemes: + - id: fhir + http: false + passive: false + dataformats: + - fhirJson + - fhirXml + javaTypes: + - org.apache.camel.component.fhir.FhirComponent + - org.apache.camel.component.fhir.FhirJsonDataFormat + - org.apache.camel.component.fhir.FhirXmlDataFormat + camel-file: + groupId: org.apache.camel + artifactId: camel-file + schemes: + - id: file + http: false + passive: false + javaTypes: + - org.apache.camel.component.file.FileComponent + camel-file-watch: + groupId: org.apache.camel + artifactId: camel-file-watch + schemes: + - id: file-watch + http: false + passive: false + javaTypes: + - org.apache.camel.component.file.watch.FileWatchComponent + camel-flatpack: + groupId: org.apache.camel + artifactId: camel-flatpack + schemes: + - id: flatpack + http: false + passive: false + dataformats: + - flatpack + javaTypes: + - org.apache.camel.component.flatpack.FlatpackComponent + - org.apache.camel.dataformat.flatpack.FlatpackDataFormat + camel-flink: + groupId: org.apache.camel + artifactId: camel-flink + schemes: + - id: flink + http: false + passive: false + javaTypes: + - org.apache.camel.component.flink.FlinkComponent + camel-fop: + groupId: org.apache.camel + artifactId: camel-fop + schemes: + - id: fop + http: false + passive: false + javaTypes: + - org.apache.camel.component.fop.FopComponent + camel-freemarker: + groupId: org.apache.camel + artifactId: camel-freemarker + schemes: + - id: freemarker + http: false + passive: false + javaTypes: + - org.apache.camel.component.freemarker.FreemarkerComponent + camel-ftp: + groupId: org.apache.camel + artifactId: camel-ftp + schemes: + - id: ftp + http: false + passive: false + - id: ftps + http: false + passive: false + - id: sftp + http: false + passive: false + javaTypes: + - org.apache.camel.component.file.remote.FtpComponent + - org.apache.camel.component.file.remote.FtpsComponent + - org.apache.camel.component.file.remote.SftpComponent + camel-ganglia: + groupId: org.apache.camel + artifactId: camel-ganglia + schemes: + - id: ganglia + http: false + passive: false + javaTypes: + - org.apache.camel.component.ganglia.GangliaComponent + camel-geocoder: + groupId: org.apache.camel + artifactId: camel-geocoder + schemes: + - id: geocoder + http: false + passive: false + javaTypes: + - org.apache.camel.component.geocoder.GeoCoderComponent + camel-git: + groupId: org.apache.camel + artifactId: camel-git + schemes: + - id: git + http: false + passive: false + javaTypes: + - org.apache.camel.component.git.GitComponent + camel-github: + groupId: org.apache.camel + artifactId: camel-github + schemes: + - id: github + http: false + passive: false + javaTypes: + - org.apache.camel.component.github.GitHubComponent + camel-google-bigquery: + groupId: org.apache.camel + artifactId: camel-google-bigquery + schemes: + - id: google-bigquery + http: false + passive: false + - id: google-bigquery-sql + http: false + passive: false + javaTypes: + - org.apache.camel.component.google.bigquery.GoogleBigQueryComponent + - org.apache.camel.component.google.bigquery.sql.GoogleBigQuerySQLComponent + camel-google-calendar: + groupId: org.apache.camel + artifactId: camel-google-calendar + schemes: + - id: google-calendar + http: false + passive: false + - id: google-calendar-stream + http: false + passive: false + javaTypes: + - org.apache.camel.component.google.calendar.GoogleCalendarComponent + - org.apache.camel.component.google.calendar.stream.GoogleCalendarStreamComponent + camel-google-drive: + groupId: org.apache.camel + artifactId: camel-google-drive + schemes: + - id: google-drive + http: false + passive: false + javaTypes: + - org.apache.camel.component.google.drive.GoogleDriveComponent + camel-google-mail: + groupId: org.apache.camel + artifactId: camel-google-mail + schemes: + - id: google-mail + http: false + passive: false + - id: google-mail-stream + http: false + passive: false + javaTypes: + - org.apache.camel.component.google.mail.GoogleMailComponent + - org.apache.camel.component.google.mail.stream.GoogleMailStreamComponent + camel-google-pubsub: + groupId: org.apache.camel + artifactId: camel-google-pubsub + schemes: + - id: google-pubsub + http: false + passive: false + javaTypes: + - org.apache.camel.component.google.pubsub.GooglePubsubComponent + camel-google-sheets: + groupId: org.apache.camel + artifactId: camel-google-sheets + schemes: + - id: google-sheets + http: false + passive: false + - id: google-sheets-stream + http: false + passive: false + javaTypes: + - org.apache.camel.component.google.sheets.GoogleSheetsComponent + - org.apache.camel.component.google.sheets.stream.GoogleSheetsStreamComponent + camel-gora: + groupId: org.apache.camel + artifactId: camel-gora + schemes: + - id: gora + http: false + passive: false + javaTypes: + - org.apache.camel.component.gora.GoraComponent + camel-grape: + groupId: org.apache.camel + artifactId: camel-grape + schemes: + - id: grape + http: false + passive: false + javaTypes: + - org.apache.camel.component.grape.GrapeComponent + camel-graphql: + groupId: org.apache.camel + artifactId: camel-graphql + schemes: + - id: graphql + http: false + passive: false + javaTypes: + - org.apache.camel.component.graphql.GraphqlComponent + camel-grok: + groupId: org.apache.camel + artifactId: camel-grok + dataformats: + - grok + javaTypes: + - org.apache.camel.component.grok.GrokDataFormat + camel-groovy: + groupId: org.apache.camel + artifactId: camel-groovy + languages: + - groovy + javaTypes: + - org.apache.camel.language.groovy.GroovyLanguage + camel-grpc: + groupId: org.apache.camel + artifactId: camel-grpc + schemes: + - id: grpc + http: true + passive: false + javaTypes: + - org.apache.camel.component.grpc.GrpcComponent + camel-gson: + groupId: org.apache.camel + artifactId: camel-gson + dataformats: + - json-gson + javaTypes: + - org.apache.camel.component.gson.GsonDataFormat + camel-guava-eventbus: + groupId: org.apache.camel + artifactId: camel-guava-eventbus + schemes: + - id: guava-eventbus + http: false + passive: false + javaTypes: + - org.apache.camel.component.guava.eventbus.GuavaEventBusComponent + camel-hazelcast: + groupId: org.apache.camel + artifactId: camel-hazelcast + schemes: + - id: hazelcast-atomicvalue + http: false + passive: false + - id: hazelcast-instance + http: false + passive: false + - id: hazelcast-list + http: false + passive: false + - id: hazelcast-map + http: false + passive: false + - id: hazelcast-multimap + http: false + passive: false + - id: hazelcast-queue + http: false + passive: false + - id: hazelcast-replicatedmap + http: false + passive: false + - id: hazelcast-ringbuffer + http: false + passive: false + - id: hazelcast-seda + http: false + passive: false + - id: hazelcast-set + http: false + passive: false + - id: hazelcast-topic + http: false + passive: false + javaTypes: + - org.apache.camel.component.hazelcast.atomicnumber.HazelcastAtomicnumberComponent + - org.apache.camel.component.hazelcast.instance.HazelcastInstanceComponent + - org.apache.camel.component.hazelcast.list.HazelcastListComponent + - org.apache.camel.component.hazelcast.map.HazelcastMapComponent + - org.apache.camel.component.hazelcast.multimap.HazelcastMultimapComponent + - org.apache.camel.component.hazelcast.queue.HazelcastQueueComponent + - org.apache.camel.component.hazelcast.replicatedmap.HazelcastReplicatedmapComponent + - org.apache.camel.component.hazelcast.ringbuffer.HazelcastRingbufferComponent + - org.apache.camel.component.hazelcast.seda.HazelcastSedaComponent + - org.apache.camel.component.hazelcast.set.HazelcastSetComponent + - org.apache.camel.component.hazelcast.topic.HazelcastTopicComponent + camel-hbase: + groupId: org.apache.camel + artifactId: camel-hbase + schemes: + - id: hbase + http: false + passive: false + javaTypes: + - org.apache.camel.component.hbase.HBaseComponent + camel-hdfs: + groupId: org.apache.camel + artifactId: camel-hdfs + schemes: + - id: hdfs + http: false + passive: false + javaTypes: + - org.apache.camel.component.hdfs.HdfsComponent + camel-hipchat: + groupId: org.apache.camel + artifactId: camel-hipchat + schemes: + - id: hipchat + http: false + passive: false + javaTypes: + - org.apache.camel.component.hipchat.HipchatComponent + camel-hl7: + groupId: org.apache.camel + artifactId: camel-hl7 + languages: + - hl7terser + dataformats: + - hl7 + javaTypes: + - org.apache.camel.component.hl7.Hl7TerserLanguage + - org.apache.camel.component.hl7.HL7DataFormat + camel-http: + groupId: org.apache.camel + artifactId: camel-http + schemes: + - id: http + http: false + passive: false + - id: https + http: false + passive: false + dependencies: + - groupId: org.apache.camel + artifactId: camel-file + javaTypes: + - org.apache.camel.component.http.HttpComponent + camel-ical: + groupId: org.apache.camel + artifactId: camel-ical + dataformats: + - ical + javaTypes: + - org.apache.camel.component.ical.ICalDataFormat + camel-iec60870: + groupId: org.apache.camel + artifactId: camel-iec60870 + schemes: + - id: iec60870-client + http: false + passive: false + - id: iec60870-server + http: false + passive: false + javaTypes: + - org.apache.camel.component.iec60870.client.ClientComponent + - org.apache.camel.component.iec60870.server.ServerComponent + camel-ignite: + groupId: org.apache.camel + artifactId: camel-ignite + schemes: + - id: ignite-cache + http: false + passive: false + - id: ignite-compute + http: false + passive: false + - id: ignite-events + http: false + passive: false + - id: ignite-idgen + http: false + passive: false + - id: ignite-messaging + http: false + passive: false + - id: ignite-queue + http: false + passive: false + - id: ignite-set + http: false + passive: false + javaTypes: + - org.apache.camel.component.ignite.cache.IgniteCacheComponent + - org.apache.camel.component.ignite.compute.IgniteComputeComponent + - org.apache.camel.component.ignite.events.IgniteEventsComponent + - org.apache.camel.component.ignite.idgen.IgniteIdGenComponent + - org.apache.camel.component.ignite.messaging.IgniteMessagingComponent + - org.apache.camel.component.ignite.queue.IgniteQueueComponent + - org.apache.camel.component.ignite.set.IgniteSetComponent + camel-infinispan: + groupId: org.apache.camel + artifactId: camel-infinispan + schemes: + - id: infinispan + http: false + passive: false + javaTypes: + - org.apache.camel.component.infinispan.InfinispanComponent + camel-influxdb: + groupId: org.apache.camel + artifactId: camel-influxdb + schemes: + - id: influxdb + http: false + passive: false + javaTypes: + - org.apache.camel.component.influxdb.InfluxDbComponent + camel-iota: + groupId: org.apache.camel + artifactId: camel-iota + schemes: + - id: iota + http: false + passive: false + javaTypes: + - org.apache.camel.component.iota.IOTAComponent + camel-ipfs: + groupId: org.apache.camel + artifactId: camel-ipfs + schemes: + - id: ipfs + http: false + passive: false + javaTypes: + - org.apache.camel.component.ipfs.IPFSComponent + camel-irc: + groupId: org.apache.camel + artifactId: camel-irc + schemes: + - id: irc + http: false + passive: false + javaTypes: + - org.apache.camel.component.irc.IrcComponent + camel-ironmq: + groupId: org.apache.camel + artifactId: camel-ironmq + schemes: + - id: ironmq + http: false + passive: false + javaTypes: + - org.apache.camel.component.ironmq.IronMQComponent + camel-jackson: + groupId: org.apache.camel + artifactId: camel-jackson + dataformats: + - json-jackson + javaTypes: + - org.apache.camel.component.jackson.JacksonDataFormat + camel-jacksonxml: + groupId: org.apache.camel + artifactId: camel-jacksonxml + dataformats: + - jacksonxml + javaTypes: + - org.apache.camel.component.jacksonxml.JacksonXMLDataFormat + camel-jaxb: + groupId: org.apache.camel + artifactId: camel-jaxb + dataformats: + - jaxb + javaTypes: + - org.apache.camel.converter.jaxb.JaxbDataFormat + camel-jaxp: + groupId: org.apache.camel + artifactId: camel-jaxp + languages: + - xtokenize + javaTypes: + - org.apache.camel.language.xtokenizer.XMLTokenizeLanguage + camel-jbpm: + groupId: org.apache.camel + artifactId: camel-jbpm + schemes: + - id: jbpm + http: false + passive: false + javaTypes: + - org.apache.camel.component.jbpm.JBPMComponent + camel-jcache: + groupId: org.apache.camel + artifactId: camel-jcache + schemes: + - id: jcache + http: false + passive: false + javaTypes: + - org.apache.camel.component.jcache.JCacheComponent + camel-jclouds: + groupId: org.apache.camel + artifactId: camel-jclouds + schemes: + - id: jclouds + http: false + passive: false + javaTypes: + - org.apache.camel.component.jclouds.JcloudsComponent + camel-jcr: + groupId: org.apache.camel + artifactId: camel-jcr + schemes: + - id: jcr + http: false + passive: false + javaTypes: + - org.apache.camel.component.jcr.JcrComponent + camel-jdbc: + groupId: org.apache.camel + artifactId: camel-jdbc + schemes: + - id: jdbc + http: false + passive: false + javaTypes: + - org.apache.camel.component.jdbc.JdbcComponent + camel-jetty: + groupId: org.apache.camel + artifactId: camel-jetty + schemes: + - id: jetty + http: true + passive: false + javaTypes: + - org.apache.camel.component.jetty9.JettyHttpComponent9 + camel-jgroups: + groupId: org.apache.camel + artifactId: camel-jgroups + schemes: + - id: jgroups + http: false + passive: false + javaTypes: + - org.apache.camel.component.jgroups.JGroupsComponent + camel-jgroups-raft: + groupId: org.apache.camel + artifactId: camel-jgroups-raft + schemes: + - id: jgroups-raft + http: false + passive: false + javaTypes: + - org.apache.camel.component.jgroups.raft.JGroupsRaftComponent + camel-jing: + groupId: org.apache.camel + artifactId: camel-jing + schemes: + - id: jing + http: false + passive: false + javaTypes: + - org.apache.camel.component.validator.jing.JingComponent + camel-jira: + groupId: org.apache.camel + artifactId: camel-jira + schemes: + - id: jira + http: false + passive: false + javaTypes: + - org.apache.camel.component.jira.JiraComponent + camel-jms: + groupId: org.apache.camel + artifactId: camel-jms + schemes: + - id: jms + http: false + passive: false + javaTypes: + - org.apache.camel.component.jms.JmsComponent + camel-jmx: + groupId: org.apache.camel + artifactId: camel-jmx + schemes: + - id: jmx + http: false + passive: false + javaTypes: + - org.apache.camel.component.jmx.JMXComponent + camel-johnzon: + groupId: org.apache.camel + artifactId: camel-johnzon + dataformats: + - json-johnzon + javaTypes: + - org.apache.camel.component.johnzon.JohnzonDataFormat + camel-jolt: + groupId: org.apache.camel + artifactId: camel-jolt + schemes: + - id: jolt + http: false + passive: false + javaTypes: + - org.apache.camel.component.jolt.JoltComponent + camel-jooq: + groupId: org.apache.camel + artifactId: camel-jooq + schemes: + - id: jooq + http: false + passive: false + javaTypes: + - org.apache.camel.component.jooq.JooqComponent + camel-jpa: + groupId: org.apache.camel + artifactId: camel-jpa + schemes: + - id: jpa + http: false + passive: false + javaTypes: + - org.apache.camel.component.jpa.JpaComponent + camel-jsch: + groupId: org.apache.camel + artifactId: camel-jsch + schemes: + - id: scp + http: false + passive: false + javaTypes: + - org.apache.camel.component.scp.ScpComponent + camel-json-validator: + groupId: org.apache.camel + artifactId: camel-json-validator + schemes: + - id: json-validator + http: false + passive: false + javaTypes: + - org.apache.camel.component.jsonvalidator.JsonValidatorComponent + camel-jsonapi: + groupId: org.apache.camel + artifactId: camel-jsonapi + dataformats: + - jsonApi + javaTypes: + - org.apache.camel.component.jsonapi.JsonApiDataFormat + camel-jsonpath: + groupId: org.apache.camel + artifactId: camel-jsonpath + languages: + - jsonpath + javaTypes: + - org.apache.camel.jsonpath.JsonPathLanguage + camel-jt400: + groupId: org.apache.camel + artifactId: camel-jt400 + schemes: + - id: jt400 + http: false + passive: false + javaTypes: + - org.apache.camel.component.jt400.Jt400Component + camel-k-loader-groovy: + groupId: org.apache.camel.k + artifactId: camel-k-loader-groovy + dependencies: + - groupId: org.apache.camel + artifactId: camel-endpointdsl + - groupId: org.apache.camel + artifactId: camel-groovy + camel-k-loader-java: + groupId: org.apache.camel.k + artifactId: camel-k-loader-java + dependencies: + - groupId: org.apache.camel + artifactId: camel-endpointdsl + camel-k-loader-js: + groupId: org.apache.camel.k + artifactId: camel-k-loader-js + dependencies: + - groupId: org.apache.camel + artifactId: camel-endpointdsl + camel-k-loader-knative: + groupId: org.apache.camel.k + artifactId: camel-k-loader-knative + camel-k-loader-kotlin: + groupId: org.apache.camel.k + artifactId: camel-k-loader-kotlin + dependencies: + - groupId: org.apache.camel + artifactId: camel-endpointdsl + camel-k-loader-xml: + groupId: org.apache.camel.k + artifactId: camel-k-loader-xml + camel-k-runtime-health: + groupId: org.apache.camel.k + artifactId: camel-k-runtime-health + dependencies: + - groupId: org.apache.camel + artifactId: camel-servlet + - groupId: org.apache.camel.k + artifactId: camel-k-runtime-servlet + camel-k-runtime-knative: + groupId: org.apache.camel.k + artifactId: camel-k-runtime-knative + dependencies: + - groupId: org.apache.camel + artifactId: camel-cloud + - groupId: org.apache.camel.k + artifactId: camel-k-loader-yaml + - groupId: org.apache.camel.k + artifactId: camel-k-loader-knative + - groupId: org.apache.camel.k + artifactId: camel-knative-api + - groupId: org.apache.camel.k + artifactId: camel-knative + - groupId: org.apache.camel.k + artifactId: camel-knative-http + camel-k-runtime-main: + groupId: org.apache.camel.k + artifactId: camel-k-runtime-main + dependencies: + - groupId: org.apache.camel + artifactId: camel-core-engine + - groupId: org.apache.camel + artifactId: camel-main + camel-k-runtime-servlet: + groupId: org.apache.camel.k + artifactId: camel-k-runtime-servlet + dependencies: + - groupId: org.apache.camel + artifactId: camel-servlet + camel-k-runtime-webhook: + groupId: org.apache.camel.k + artifactId: camel-k-runtime-webhook + dependencies: + - groupId: org.apache.camel + artifactId: camel-webhook + camel-kafka: + groupId: org.apache.camel + artifactId: camel-kafka + schemes: + - id: kafka + http: false + passive: false + javaTypes: + - org.apache.camel.component.kafka.KafkaComponent + camel-knative: + groupId: org.apache.camel.k + artifactId: camel-knative + schemes: + - id: knative + http: true + passive: false + dependencies: + - groupId: org.apache.camel + artifactId: camel-cloud + - groupId: org.apache.camel.k + artifactId: camel-knative-api + - groupId: org.apache.camel.k + artifactId: camel-knative-http + camel-kubernetes: + groupId: org.apache.camel + artifactId: camel-kubernetes + schemes: + - id: kubernetes-config-maps + http: false + passive: false + - id: kubernetes-deployments + http: false + passive: false + - id: kubernetes-hpa + http: false + passive: false + - id: kubernetes-job + http: false + passive: false + - id: kubernetes-namespaces + http: false + passive: false + - id: kubernetes-nodes + http: false + passive: false + - id: kubernetes-persistent-volumes + http: false + passive: false + - id: kubernetes-persistent-volumes-claims + http: false + passive: false + - id: kubernetes-pods + http: false + passive: false + - id: kubernetes-replication-controllers + http: false + passive: false + - id: kubernetes-resources-quota + http: false + passive: false + - id: kubernetes-secrets + http: false + passive: false + - id: kubernetes-service-accounts + http: false + passive: false + - id: kubernetes-services + http: false + passive: false + - id: openshift-build-configs + http: false + passive: false + - id: openshift-builds + http: false + passive: false + javaTypes: + - org.apache.camel.component.kubernetes.config_maps.KubernetesConfigMapsComponent + - org.apache.camel.component.kubernetes.deployments.KubernetesDeploymentsComponent + - org.apache.camel.component.kubernetes.hpa.KubernetesHPAComponent + - org.apache.camel.component.kubernetes.job.KubernetesJobComponent + - org.apache.camel.component.kubernetes.namespaces.KubernetesNamespacesComponent + - org.apache.camel.component.kubernetes.nodes.KubernetesNodesComponent + - org.apache.camel.component.kubernetes.persistent_volumes.KubernetesPersistentVolumesComponent + - org.apache.camel.component.kubernetes.persistent_volumes_claims.KubernetesPersistentVolumesClaimsComponent + - org.apache.camel.component.kubernetes.pods.KubernetesPodsComponent + - org.apache.camel.component.kubernetes.replication_controllers.KubernetesReplicationControllersComponent + - org.apache.camel.component.kubernetes.resources_quota.KubernetesResourcesQuotaComponent + - org.apache.camel.component.kubernetes.secrets.KubernetesSecretsComponent + - org.apache.camel.component.kubernetes.service_accounts.KubernetesServiceAccountsComponent + - org.apache.camel.component.kubernetes.services.KubernetesServicesComponent + - org.apache.camel.component.openshift.build_configs.OpenshiftBuildConfigsComponent + - org.apache.camel.component.openshift.builds.OpenshiftBuildsComponent + camel-kudu: + groupId: org.apache.camel + artifactId: camel-kudu + schemes: + - id: kudu + http: false + passive: false + javaTypes: + - org.apache.camel.component.kudu.KuduComponent + camel-language: + groupId: org.apache.camel + artifactId: camel-language + schemes: + - id: language + http: false + passive: true + javaTypes: + - org.apache.camel.component.language.LanguageComponent + camel-ldap: + groupId: org.apache.camel + artifactId: camel-ldap + schemes: + - id: ldap + http: false + passive: false + javaTypes: + - org.apache.camel.component.ldap.LdapComponent + camel-ldif: + groupId: org.apache.camel + artifactId: camel-ldif + schemes: + - id: ldif + http: false + passive: false + javaTypes: + - org.apache.camel.component.ldif.LdifComponent + camel-log: + groupId: org.apache.camel + artifactId: camel-log + schemes: + - id: log + http: false + passive: true + javaTypes: + - org.apache.camel.component.log.LogComponent + camel-lucene: + groupId: org.apache.camel + artifactId: camel-lucene + schemes: + - id: lucene + http: false + passive: false + javaTypes: + - org.apache.camel.component.lucene.LuceneComponent + camel-lumberjack: + groupId: org.apache.camel + artifactId: camel-lumberjack + schemes: + - id: lumberjack + http: false + passive: false + javaTypes: + - org.apache.camel.component.lumberjack.LumberjackComponent + camel-lzf: + groupId: org.apache.camel + artifactId: camel-lzf + dataformats: + - lzf + javaTypes: + - org.apache.camel.dataformat.lzf.LZFDataFormat + camel-mail: + groupId: org.apache.camel + artifactId: camel-mail + schemes: + - id: imap + http: false + passive: false + - id: imaps + http: false + passive: false + - id: pop3 + http: false + passive: false + - id: pop3s + http: false + passive: false + - id: smtp + http: false + passive: false + - id: smtps + http: false + passive: false + dataformats: + - mime-multipart + javaTypes: + - org.apache.camel.component.mail.MailComponent + - org.apache.camel.dataformat.mime.multipart.MimeMultipartDataFormat + camel-master: + groupId: org.apache.camel + artifactId: camel-master + schemes: + - id: master + http: false + passive: false + javaTypes: + - org.apache.camel.component.master.MasterComponent + camel-metrics: + groupId: org.apache.camel + artifactId: camel-metrics + schemes: + - id: metrics + http: false + passive: false + javaTypes: + - org.apache.camel.component.metrics.MetricsComponent + camel-micrometer: + groupId: org.apache.camel + artifactId: camel-micrometer + schemes: + - id: micrometer + http: false + passive: false + javaTypes: + - org.apache.camel.component.micrometer.MicrometerComponent + camel-microprofile-metrics: + groupId: org.apache.camel + artifactId: camel-microprofile-metrics + schemes: + - id: microprofile-metrics + http: false + passive: false + javaTypes: + - org.apache.camel.component.microprofile.metrics.MicroProfileMetricsComponent + camel-milo: + groupId: org.apache.camel + artifactId: camel-milo + schemes: + - id: milo-client + http: false + passive: false + - id: milo-server + http: false + passive: false + javaTypes: + - org.apache.camel.component.milo.client.MiloClientComponent + - org.apache.camel.component.milo.server.MiloServerComponent + camel-mina: + groupId: org.apache.camel + artifactId: camel-mina + schemes: + - id: mina + http: false + passive: false + javaTypes: + - org.apache.camel.component.mina.MinaComponent + camel-mllp: + groupId: org.apache.camel + artifactId: camel-mllp + schemes: + - id: mllp + http: false + passive: false + javaTypes: + - org.apache.camel.component.mllp.MllpComponent + camel-mock: + groupId: org.apache.camel + artifactId: camel-mock + schemes: + - id: mock + http: false + passive: true + javaTypes: + - org.apache.camel.component.mock.MockComponent + camel-mongodb: + groupId: org.apache.camel + artifactId: camel-mongodb + schemes: + - id: mongodb + http: false + passive: false + javaTypes: + - org.apache.camel.component.mongodb.MongoDbComponent + camel-mongodb-gridfs: + groupId: org.apache.camel + artifactId: camel-mongodb-gridfs + schemes: + - id: mongodb-gridfs + http: false + passive: false + javaTypes: + - org.apache.camel.component.mongodb.gridfs.GridFsComponent + camel-msv: + groupId: org.apache.camel + artifactId: camel-msv + schemes: + - id: msv + http: false + passive: false + javaTypes: + - org.apache.camel.component.validator.msv.MsvComponent + camel-mustache: + groupId: org.apache.camel + artifactId: camel-mustache + schemes: + - id: mustache + http: false + passive: false + javaTypes: + - org.apache.camel.component.mustache.MustacheComponent + camel-mvel: + groupId: org.apache.camel + artifactId: camel-mvel + schemes: + - id: mvel + http: false + passive: false + languages: + - mvel + javaTypes: + - org.apache.camel.component.mvel.MvelComponent + - org.apache.camel.language.mvel.MvelLanguage + camel-mybatis: + groupId: org.apache.camel + artifactId: camel-mybatis + schemes: + - id: mybatis + http: false + passive: false + - id: mybatis-bean + http: false + passive: false + javaTypes: + - org.apache.camel.component.mybatis.MyBatisComponent + - org.apache.camel.component.mybatis.MyBatisBeanComponent + camel-nagios: + groupId: org.apache.camel + artifactId: camel-nagios + schemes: + - id: nagios + http: false + passive: false + javaTypes: + - org.apache.camel.component.nagios.NagiosComponent + camel-nats: + groupId: org.apache.camel + artifactId: camel-nats + schemes: + - id: nats + http: false + passive: false + javaTypes: + - org.apache.camel.component.nats.NatsComponent + camel-netty: + groupId: org.apache.camel + artifactId: camel-netty + schemes: + - id: netty + http: false + passive: false + javaTypes: + - org.apache.camel.component.netty.NettyComponent + camel-netty-http: + groupId: org.apache.camel + artifactId: camel-netty-http + schemes: + - id: netty-http + http: true + passive: false + javaTypes: + - org.apache.camel.component.netty.http.NettyHttpComponent + camel-nitrite: + groupId: org.apache.camel + artifactId: camel-nitrite + schemes: + - id: nitrite + http: false + passive: false + javaTypes: + - org.apache.camel.component.nitrite.NitriteComponent + camel-nsq: + groupId: org.apache.camel + artifactId: camel-nsq + schemes: + - id: nsq + http: false + passive: false + javaTypes: + - org.apache.camel.component.nsq.NsqComponent + camel-ognl: + groupId: org.apache.camel + artifactId: camel-ognl + languages: + - ognl + javaTypes: + - org.apache.camel.language.ognl.OgnlLanguage + camel-olingo2: + groupId: org.apache.camel + artifactId: camel-olingo2 + schemes: + - id: olingo2 + http: false + passive: false + javaTypes: + - org.apache.camel.component.olingo2.Olingo2Component + camel-olingo4: + groupId: org.apache.camel + artifactId: camel-olingo4 + schemes: + - id: olingo4 + http: false + passive: false + javaTypes: + - org.apache.camel.component.olingo4.Olingo4Component + camel-openstack: + groupId: org.apache.camel + artifactId: camel-openstack + schemes: + - id: openstack-cinder + http: false + passive: false + - id: openstack-glance + http: false + passive: false + - id: openstack-keystone + http: false + passive: false + - id: openstack-neutron + http: false + passive: false + - id: openstack-nova + http: false + passive: false + - id: openstack-swift + http: false + passive: false + javaTypes: + - org.apache.camel.component.openstack.cinder.CinderComponent + - org.apache.camel.component.openstack.glance.GlanceComponent + - org.apache.camel.component.openstack.keystone.KeystoneComponent + - org.apache.camel.component.openstack.neutron.NeutronComponent + - org.apache.camel.component.openstack.nova.NovaComponent + - org.apache.camel.component.openstack.swift.SwiftComponent + camel-optaplanner: + groupId: org.apache.camel + artifactId: camel-optaplanner + schemes: + - id: optaplanner + http: false + passive: false + javaTypes: + - org.apache.camel.component.optaplanner.OptaPlannerComponent + camel-paho: + groupId: org.apache.camel + artifactId: camel-paho + schemes: + - id: paho + http: false + passive: false + javaTypes: + - org.apache.camel.component.paho.PahoComponent + camel-paxlogging: + groupId: org.apache.camel + artifactId: camel-paxlogging + schemes: + - id: paxlogging + http: false + passive: false + javaTypes: + - org.apache.camel.component.paxlogging.PaxLoggingComponent + camel-pdf: + groupId: org.apache.camel + artifactId: camel-pdf + schemes: + - id: pdf + http: false + passive: false + javaTypes: + - org.apache.camel.component.pdf.PdfComponent + camel-pg-replication-slot: + groupId: org.apache.camel + artifactId: camel-pg-replication-slot + schemes: + - id: pg-replication-slot + http: false + passive: false + javaTypes: + - org.apache.camel.component.pg.replication.slot.PgReplicationSlotComponent + camel-pgevent: + groupId: org.apache.camel + artifactId: camel-pgevent + schemes: + - id: pgevent + http: false + passive: false + javaTypes: + - org.apache.camel.component.pgevent.PgEventComponent + camel-platform-http: + groupId: org.apache.camel + artifactId: camel-platform-http + schemes: + - id: platform-http + http: false + passive: false + javaTypes: + - org.apache.camel.component.platform.http.PlatformHttpComponent + camel-printer: + groupId: org.apache.camel + artifactId: camel-printer + schemes: + - id: lpr + http: false + passive: false + javaTypes: + - org.apache.camel.component.printer.PrinterComponent + camel-protobuf: + groupId: org.apache.camel + artifactId: camel-protobuf + dataformats: + - protobuf + javaTypes: + - org.apache.camel.dataformat.protobuf.ProtobufDataFormat + camel-pubnub: + groupId: org.apache.camel + artifactId: camel-pubnub + schemes: + - id: pubnub + http: false + passive: false + javaTypes: + - org.apache.camel.component.pubnub.PubNubComponent + camel-pulsar: + groupId: org.apache.camel + artifactId: camel-pulsar + schemes: + - id: pulsar + http: false + passive: false + javaTypes: + - org.apache.camel.component.pulsar.PulsarComponent + camel-quartz: + groupId: org.apache.camel + artifactId: camel-quartz + schemes: + - id: quartz + http: false + passive: false + javaTypes: + - org.apache.camel.component.quartz.QuartzComponent + camel-quickfix: + groupId: org.apache.camel + artifactId: camel-quickfix + schemes: + - id: quickfix + http: false + passive: false + javaTypes: + - org.apache.camel.component.quickfixj.QuickfixjComponent + camel-rabbitmq: + groupId: org.apache.camel + artifactId: camel-rabbitmq + schemes: + - id: rabbitmq + http: false + passive: false + javaTypes: + - org.apache.camel.component.rabbitmq.RabbitMQComponent + camel-reactive-streams: + groupId: org.apache.camel + artifactId: camel-reactive-streams + schemes: + - id: reactive-streams + http: false + passive: false + javaTypes: + - org.apache.camel.component.reactive.streams.ReactiveStreamsComponent + camel-ref: + groupId: org.apache.camel + artifactId: camel-ref + schemes: + - id: ref + http: false + passive: true + javaTypes: + - org.apache.camel.component.ref.RefComponent + camel-rest: + groupId: org.apache.camel + artifactId: camel-rest + schemes: + - id: rest + http: true + passive: false + - id: rest-api + http: false + passive: false + javaTypes: + - org.apache.camel.component.rest.RestComponent + - org.apache.camel.component.rest.RestApiComponent + camel-rest-swagger: + groupId: org.apache.camel + artifactId: camel-rest-swagger + schemes: + - id: rest-swagger + http: false + passive: false + javaTypes: + - org.apache.camel.component.rest.swagger.RestSwaggerComponent + camel-robotframework: + groupId: org.apache.camel + artifactId: camel-robotframework + schemes: + - id: robotframework + http: false + passive: false + javaTypes: + - org.apache.camel.component.robotframework.RobotFrameworkComponent + camel-rss: + groupId: org.apache.camel + artifactId: camel-rss + schemes: + - id: rss + http: false + passive: false + dataformats: + - rss + javaTypes: + - org.apache.camel.component.rss.RssComponent + - org.apache.camel.dataformat.rss.RssDataFormat + camel-saga: + groupId: org.apache.camel + artifactId: camel-saga + schemes: + - id: saga + http: false + passive: false + javaTypes: + - org.apache.camel.component.saga.SagaComponent + camel-salesforce: + groupId: org.apache.camel + artifactId: camel-salesforce + schemes: + - id: salesforce + http: false + passive: false + javaTypes: + - org.apache.camel.component.salesforce.SalesforceComponent + camel-sap-netweaver: + groupId: org.apache.camel + artifactId: camel-sap-netweaver + schemes: + - id: sap-netweaver + http: false + passive: false + javaTypes: + - org.apache.camel.component.sap.netweaver.NetWeaverComponent + camel-saxon: + groupId: org.apache.camel + artifactId: camel-saxon + schemes: + - id: xquery + http: false + passive: false + languages: + - xquery + javaTypes: + - org.apache.camel.component.xquery.XQueryComponent + - org.apache.camel.language.xquery.XQueryLanguage + camel-scheduler: + groupId: org.apache.camel + artifactId: camel-scheduler + schemes: + - id: scheduler + http: false + passive: false + javaTypes: + - org.apache.camel.component.scheduler.SchedulerComponent + camel-schematron: + groupId: org.apache.camel + artifactId: camel-schematron + schemes: + - id: schematron + http: false + passive: false + javaTypes: + - org.apache.camel.component.schematron.SchematronComponent + camel-seda: + groupId: org.apache.camel + artifactId: camel-seda + schemes: + - id: seda + http: false + passive: true + javaTypes: + - org.apache.camel.component.seda.SedaComponent + camel-service: + groupId: org.apache.camel + artifactId: camel-service + schemes: + - id: service + http: false + passive: false + javaTypes: + - org.apache.camel.component.service.ServiceComponent + camel-servicenow: + groupId: org.apache.camel + artifactId: camel-servicenow + schemes: + - id: servicenow + http: false + passive: false + javaTypes: + - org.apache.camel.component.servicenow.ServiceNowComponent + camel-servlet: + groupId: org.apache.camel + artifactId: camel-servlet + schemes: + - id: servlet + http: true + passive: false + javaTypes: + - org.apache.camel.component.servlet.ServletComponent + camel-sip: + groupId: org.apache.camel + artifactId: camel-sip + schemes: + - id: sip + http: false + passive: false + - id: sips + http: false + passive: false + javaTypes: + - org.apache.camel.component.sip.SipComponent + camel-sjms: + groupId: org.apache.camel + artifactId: camel-sjms + schemes: + - id: sjms + http: false + passive: false + - id: sjms-batch + http: false + passive: false + javaTypes: + - org.apache.camel.component.sjms.SjmsComponent + - org.apache.camel.component.sjms.batch.SjmsBatchComponent + camel-sjms2: + groupId: org.apache.camel + artifactId: camel-sjms2 + schemes: + - id: sjms2 + http: false + passive: false + javaTypes: + - org.apache.camel.component.sjms2.Sjms2Component + camel-slack: + groupId: org.apache.camel + artifactId: camel-slack + schemes: + - id: slack + http: false + passive: false + javaTypes: + - org.apache.camel.component.slack.SlackComponent + camel-smpp: + groupId: org.apache.camel + artifactId: camel-smpp + schemes: + - id: smpp + http: false + passive: false + - id: smpps + http: false + passive: false + javaTypes: + - org.apache.camel.component.smpp.SmppComponent + camel-snakeyaml: + groupId: org.apache.camel + artifactId: camel-snakeyaml + dataformats: + - yaml-snakeyaml + javaTypes: + - org.apache.camel.component.snakeyaml.SnakeYAMLDataFormat + camel-snmp: + groupId: org.apache.camel + artifactId: camel-snmp + schemes: + - id: snmp + http: false + passive: false + javaTypes: + - org.apache.camel.component.snmp.SnmpComponent + camel-soap: + groupId: org.apache.camel + artifactId: camel-soap + dataformats: + - soapjaxb + javaTypes: + - org.apache.camel.dataformat.soap.SoapJaxbDataFormat + camel-solr: + groupId: org.apache.camel + artifactId: camel-solr + schemes: + - id: solr + http: false + passive: false + - id: solrs + http: false + passive: false + - id: solrCloud + http: false + passive: false + javaTypes: + - org.apache.camel.component.solr.SolrComponent + camel-soroush: + groupId: org.apache.camel + artifactId: camel-soroush + schemes: + - id: soroush + http: false + passive: false + javaTypes: + - org.apache.camel.component.soroushbot.component.SoroushBotComponent + camel-spark: + groupId: org.apache.camel + artifactId: camel-spark + schemes: + - id: spark + http: false + passive: false + javaTypes: + - org.apache.camel.component.spark.SparkComponent + camel-spark-rest: + groupId: org.apache.camel + artifactId: camel-spark-rest + schemes: + - id: spark-rest + http: true + passive: false + javaTypes: + - org.apache.camel.component.sparkrest.SparkComponent + camel-splunk: + groupId: org.apache.camel + artifactId: camel-splunk + schemes: + - id: splunk + http: false + passive: false + javaTypes: + - org.apache.camel.component.splunk.SplunkComponent + camel-spring: + groupId: org.apache.camel + artifactId: camel-spring + schemes: + - id: spring-event + http: false + passive: false + languages: + - spel + javaTypes: + - org.apache.camel.component.event.EventComponent + - org.apache.camel.language.spel.SpelLanguage + camel-spring-batch: + groupId: org.apache.camel + artifactId: camel-spring-batch + schemes: + - id: spring-batch + http: false + passive: false + javaTypes: + - org.apache.camel.component.spring.batch.SpringBatchComponent + camel-spring-integration: + groupId: org.apache.camel + artifactId: camel-spring-integration + schemes: + - id: spring-integration + http: false + passive: false + javaTypes: + - org.apache.camel.component.spring.integration.SpringIntegrationComponent + camel-spring-ldap: + groupId: org.apache.camel + artifactId: camel-spring-ldap + schemes: + - id: spring-ldap + http: false + passive: false + javaTypes: + - org.apache.camel.component.springldap.SpringLdapComponent + camel-spring-redis: + groupId: org.apache.camel + artifactId: camel-spring-redis + schemes: + - id: spring-redis + http: false + passive: false + javaTypes: + - org.apache.camel.component.redis.RedisComponent + camel-spring-ws: + groupId: org.apache.camel + artifactId: camel-spring-ws + schemes: + - id: spring-ws + http: true + passive: false + javaTypes: + - org.apache.camel.component.spring.ws.SpringWebserviceComponent + camel-sql: + groupId: org.apache.camel + artifactId: camel-sql + schemes: + - id: sql + http: false + passive: false + - id: sql-stored + http: false + passive: false + javaTypes: + - org.apache.camel.component.sql.SqlComponent + - org.apache.camel.component.sql.stored.SqlStoredComponent + camel-ssh: + groupId: org.apache.camel + artifactId: camel-ssh + schemes: + - id: ssh + http: false + passive: false + javaTypes: + - org.apache.camel.component.ssh.SshComponent + camel-stax: + groupId: org.apache.camel + artifactId: camel-stax + schemes: + - id: stax + http: false + passive: false + javaTypes: + - org.apache.camel.component.stax.StAXComponent + camel-stomp: + groupId: org.apache.camel + artifactId: camel-stomp + schemes: + - id: stomp + http: false + passive: false + javaTypes: + - org.apache.camel.component.stomp.StompComponent + camel-stream: + groupId: org.apache.camel + artifactId: camel-stream + schemes: + - id: stream + http: false + passive: false + javaTypes: + - org.apache.camel.component.stream.StreamComponent + camel-stringtemplate: + groupId: org.apache.camel + artifactId: camel-stringtemplate + schemes: + - id: string-template + http: false + passive: false + javaTypes: + - org.apache.camel.component.stringtemplate.StringTemplateComponent + camel-stub: + groupId: org.apache.camel + artifactId: camel-stub + schemes: + - id: stub + http: false + passive: true + javaTypes: + - org.apache.camel.component.stub.StubComponent + camel-syslog: + groupId: org.apache.camel + artifactId: camel-syslog + dataformats: + - syslog + javaTypes: + - org.apache.camel.component.syslog.SyslogDataFormat + camel-tagsoup: + groupId: org.apache.camel + artifactId: camel-tagsoup + dataformats: + - tidyMarkup + javaTypes: + - org.apache.camel.dataformat.tagsoup.TidyMarkupDataFormat + camel-tarfile: + groupId: org.apache.camel + artifactId: camel-tarfile + dataformats: + - tarfile + javaTypes: + - org.apache.camel.dataformat.tarfile.TarFileDataFormat + camel-telegram: + groupId: org.apache.camel + artifactId: camel-telegram + schemes: + - id: telegram + http: false + passive: false + javaTypes: + - org.apache.camel.component.telegram.TelegramComponent + camel-thrift: + groupId: org.apache.camel + artifactId: camel-thrift + schemes: + - id: thrift + http: false + passive: false + dataformats: + - thrift + javaTypes: + - org.apache.camel.component.thrift.ThriftComponent + - org.apache.camel.dataformat.thrift.ThriftDataFormat + camel-tika: + groupId: org.apache.camel + artifactId: camel-tika + schemes: + - id: tika + http: false + passive: false + javaTypes: + - org.apache.camel.component.tika.TikaComponent + camel-timer: + groupId: org.apache.camel + artifactId: camel-timer + schemes: + - id: timer + http: false + passive: false + javaTypes: + - org.apache.camel.component.timer.TimerComponent + camel-twilio: + groupId: org.apache.camel + artifactId: camel-twilio + schemes: + - id: twilio + http: false + passive: false + javaTypes: + - org.apache.camel.component.twilio.TwilioComponent + camel-twitter: + groupId: org.apache.camel + artifactId: camel-twitter + schemes: + - id: twitter-directmessage + http: false + passive: false + - id: twitter-search + http: false + passive: false + - id: twitter-timeline + http: false + passive: false + javaTypes: + - org.apache.camel.component.twitter.directmessage.TwitterDirectMessageComponent + - org.apache.camel.component.twitter.search.TwitterSearchComponent + - org.apache.camel.component.twitter.timeline.TwitterTimelineComponent + camel-undertow: + groupId: org.apache.camel + artifactId: camel-undertow + schemes: + - id: undertow + http: true + passive: false + javaTypes: + - org.apache.camel.component.undertow.UndertowComponent + camel-univocity-parsers: + groupId: org.apache.camel + artifactId: camel-univocity-parsers + dataformats: + - univocity-csv + - univocity-fixed + - univocity-tsv + javaTypes: + - org.apache.camel.dataformat.univocity.UniVocityCsvDataFormat + - org.apache.camel.dataformat.univocity.UniVocityFixedWidthDataFormat + - org.apache.camel.dataformat.univocity.UniVocityTsvDataFormat + camel-validator: + groupId: org.apache.camel + artifactId: camel-validator + schemes: + - id: validator + http: false + passive: true + javaTypes: + - org.apache.camel.component.validator.ValidatorComponent + camel-velocity: + groupId: org.apache.camel + artifactId: camel-velocity + schemes: + - id: velocity + http: false + passive: false + javaTypes: + - org.apache.camel.component.velocity.VelocityComponent + camel-vertx: + groupId: org.apache.camel + artifactId: camel-vertx + schemes: + - id: vertx + http: false + passive: false + javaTypes: + - org.apache.camel.component.vertx.VertxComponent + camel-vm: + groupId: org.apache.camel + artifactId: camel-vm + schemes: + - id: vm + http: false + passive: true + javaTypes: + - org.apache.camel.component.vm.VmComponent + camel-weather: + groupId: org.apache.camel + artifactId: camel-weather + schemes: + - id: weather + http: false + passive: false + javaTypes: + - org.apache.camel.component.weather.WeatherComponent + camel-web3j: + groupId: org.apache.camel + artifactId: camel-web3j + schemes: + - id: web3j + http: false + passive: false + javaTypes: + - org.apache.camel.component.web3j.Web3jComponent + camel-webhook: + groupId: org.apache.camel + artifactId: camel-webhook + schemes: + - id: webhook + http: true + passive: false + javaTypes: + - org.apache.camel.component.webhook.WebhookComponent + camel-websocket: + groupId: org.apache.camel + artifactId: camel-websocket + schemes: + - id: websocket + http: true + passive: false + javaTypes: + - org.apache.camel.component.websocket.WebsocketComponent + camel-websocket-jsr356: + groupId: org.apache.camel + artifactId: camel-websocket-jsr356 + schemes: + - id: websocket-jsr356 + http: false + passive: false + javaTypes: + - org.apache.camel.websocket.jsr356.JSR356WebSocketComponent + camel-wordpress: + groupId: org.apache.camel + artifactId: camel-wordpress + schemes: + - id: wordpress + http: false + passive: false + javaTypes: + - org.apache.camel.component.wordpress.WordpressComponent + camel-xchange: + groupId: org.apache.camel + artifactId: camel-xchange + schemes: + - id: xchange + http: false + passive: false + javaTypes: + - org.apache.camel.component.xchange.XChangeComponent + camel-xj: + groupId: org.apache.camel + artifactId: camel-xj + schemes: + - id: xj + http: false + passive: false + javaTypes: + - org.apache.camel.component.xj.XJComponent + camel-xmlsecurity: + groupId: org.apache.camel + artifactId: camel-xmlsecurity + schemes: + - id: xmlsecurity + http: false + passive: false + dataformats: + - secureXML + javaTypes: + - org.apache.camel.component.xmlsecurity.XmlSignatureComponent + - org.apache.camel.dataformat.xmlsecurity.XMLSecurityDataFormat + camel-xmpp: + groupId: org.apache.camel + artifactId: camel-xmpp + schemes: + - id: xmpp + http: false + passive: false + javaTypes: + - org.apache.camel.component.xmpp.XmppComponent + camel-xpath: + groupId: org.apache.camel + artifactId: camel-xpath + languages: + - xpath + javaTypes: + - org.apache.camel.language.xpath.XPathLanguage + camel-xslt: + groupId: org.apache.camel + artifactId: camel-xslt + schemes: + - id: xslt + http: false + passive: false + javaTypes: + - org.apache.camel.component.xslt.XsltComponent + camel-xslt-saxon: + groupId: org.apache.camel + artifactId: camel-xslt-saxon + schemes: + - id: xslt-saxon + http: false + passive: false + javaTypes: + - org.apache.camel.component.xslt.saxon.XsltSaxonComponent + camel-xstream: + groupId: org.apache.camel + artifactId: camel-xstream + dataformats: + - json-xstream + - xstream + javaTypes: + - org.apache.camel.dataformat.xstream.JsonDataFormat + - org.apache.camel.dataformat.xstream.XStreamDataFormat + camel-yammer: + groupId: org.apache.camel + artifactId: camel-yammer + schemes: + - id: yammer + http: false + passive: false + javaTypes: + - org.apache.camel.component.yammer.YammerComponent + camel-zendesk: + groupId: org.apache.camel + artifactId: camel-zendesk + schemes: + - id: zendesk + http: false + passive: false + javaTypes: + - org.apache.camel.component.zendesk.ZendeskComponent + camel-zip-deflater: + groupId: org.apache.camel + artifactId: camel-zip-deflater + dataformats: + - gzipdeflater + - zipdeflater + javaTypes: + - org.apache.camel.dataformat.deflater.GzipDeflaterDataFormat + - org.apache.camel.dataformat.deflater.ZipDeflaterDataFormat + camel-zipfile: + groupId: org.apache.camel + artifactId: camel-zipfile + dataformats: + - zipfile + javaTypes: + - org.apache.camel.dataformat.zipfile.ZipFileDataFormat + camel-zookeeper: + groupId: org.apache.camel + artifactId: camel-zookeeper + schemes: + - id: zookeeper + http: false + passive: false + javaTypes: + - org.apache.camel.component.zookeeper.ZooKeeperComponent + camel-zookeeper-master: + groupId: org.apache.camel + artifactId: camel-zookeeper-master + schemes: + - id: zookeeper-master + http: false + passive: false + javaTypes: + - org.apache.camel.component.zookeepermaster.MasterComponent diff --git a/deploy/camel-catalog-quarkus-1.0.0-M1-1.0.10.yaml b/deploy/camel-catalog-quarkus-1.0.0-M1-1.0.10.yaml new file mode 100644 index 0000000000..00d8f5fc01 --- /dev/null +++ b/deploy/camel-catalog-quarkus-1.0.0-M1-1.0.10.yaml @@ -0,0 +1,616 @@ +# --------------------------------------------------------------------------- +# 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: camel.apache.org/v1 +kind: CamelCatalog +metadata: + name: camel-catalog-quarkus-1.0.0-m1-1.0.10 + labels: + app: camel-k + camel.apache.org/catalog.version: 3.0.0 + camel.apache.org/catalog.loader.version: 3.0.0 + camel.apache.org/runtime.version: 1.0.10 + camel.apache.org/runtime.provider: quarkus +spec: + version: 3.0.0 + runtimeVersion: 1.0.10 + runtimeProvider: + quarkus: + camelQuarkusVersion: 1.0.0-M1 + quarkusVersion: 1.0.1.Final + artifacts: + camel-k-loader-groovy: + groupId: org.apache.camel.k + artifactId: camel-k-loader-groovy + dependencies: + - groupId: org.apache.camel + artifactId: camel-endpointdsl + - groupId: org.apache.camel + artifactId: camel-groovy + camel-k-loader-java: + groupId: org.apache.camel.k + artifactId: camel-k-loader-java + dependencies: + - groupId: org.apache.camel + artifactId: camel-endpointdsl + camel-k-loader-js: + groupId: org.apache.camel.k + artifactId: camel-k-loader-js + dependencies: + - groupId: org.apache.camel + artifactId: camel-endpointdsl + camel-k-loader-knative: + groupId: org.apache.camel.k + artifactId: camel-k-loader-knative + camel-k-loader-kotlin: + groupId: org.apache.camel.k + artifactId: camel-k-loader-kotlin + dependencies: + - groupId: org.apache.camel + artifactId: camel-endpointdsl + camel-k-loader-xml: + groupId: org.apache.camel.k + artifactId: camel-k-loader-xml + camel-k-runtime-health: + groupId: org.apache.camel.k + artifactId: camel-k-runtime-health + dependencies: + - groupId: org.apache.camel + artifactId: camel-servlet + - groupId: org.apache.camel.k + artifactId: camel-k-runtime-servlet + camel-k-runtime-knative: + groupId: org.apache.camel.k + artifactId: camel-k-runtime-knative + dependencies: + - groupId: org.apache.camel + artifactId: camel-cloud + - groupId: org.apache.camel.k + artifactId: camel-k-loader-yaml + - groupId: org.apache.camel.k + artifactId: camel-k-loader-knative + - groupId: org.apache.camel.k + artifactId: camel-knative-api + - groupId: org.apache.camel.k + artifactId: camel-knative + - groupId: org.apache.camel.k + artifactId: camel-knative-http + camel-k-runtime-main: + groupId: org.apache.camel.k + artifactId: camel-k-runtime-main + dependencies: + - groupId: org.apache.camel + artifactId: camel-core-engine + - groupId: org.apache.camel + artifactId: camel-main + camel-k-runtime-servlet: + groupId: org.apache.camel.k + artifactId: camel-k-runtime-servlet + dependencies: + - groupId: org.apache.camel + artifactId: camel-servlet + camel-k-runtime-webhook: + groupId: org.apache.camel.k + artifactId: camel-k-runtime-webhook + dependencies: + - groupId: org.apache.camel + artifactId: camel-webhook + camel-knative: + groupId: org.apache.camel.k + artifactId: camel-knative + schemes: + - id: knative + http: true + passive: false + dependencies: + - groupId: org.apache.camel + artifactId: camel-cloud + - groupId: org.apache.camel.k + artifactId: camel-knative-api + - groupId: org.apache.camel.k + artifactId: camel-knative-http + camel-quarkus-aws-ecs: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-aws-ecs + schemes: + - id: aws-ecs + http: false + passive: false + javaTypes: + - org.apache.camel.component.aws.ecs.ECSComponent + camel-quarkus-aws-eks: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-aws-eks + schemes: + - id: aws-eks + http: false + passive: false + javaTypes: + - org.apache.camel.component.aws.eks.EKSComponent + camel-quarkus-aws-kms: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-aws-kms + schemes: + - id: aws-kms + http: false + passive: false + javaTypes: + - org.apache.camel.component.aws.kms.KMSComponent + camel-quarkus-aws-s3: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-aws-s3 + schemes: + - id: aws-s3 + http: false + passive: false + javaTypes: + - org.apache.camel.component.aws.s3.S3Component + camel-quarkus-aws-sns: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-aws-sns + schemes: + - id: aws-sns + http: false + passive: false + javaTypes: + - org.apache.camel.component.aws.sns.SnsComponent + camel-quarkus-aws-sqs: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-aws-sqs + schemes: + - id: aws-sqs + http: false + passive: false + javaTypes: + - org.apache.camel.component.aws.sqs.SqsComponent + camel-quarkus-base64: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-base64 + dataformats: + - base64 + javaTypes: + - org.apache.camel.dataformat.base64.Base64DataFormat + camel-quarkus-bean: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-bean + schemes: + - id: bean + http: false + passive: true + - id: class + http: false + passive: true + languages: + - bean + javaTypes: + - org.apache.camel.component.bean.BeanComponent + - org.apache.camel.component.beanclass.ClassComponent + - org.apache.camel.language.bean.BeanLanguage + camel-quarkus-bean-validator: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-bean-validator + schemes: + - id: bean-validator + http: false + passive: false + javaTypes: + - org.apache.camel.component.bean.validator.BeanValidatorComponent + camel-quarkus-controlbus: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-controlbus + schemes: + - id: controlbus + http: false + passive: true + javaTypes: + - org.apache.camel.component.controlbus.ControlBusComponent + camel-quarkus-core: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-core + languages: + - constant + - exchangeProperty + - file + - header + - ref + - simple + - tokenize + javaTypes: + - org.apache.camel.language.constant.ConstantLanguage + - org.apache.camel.language.property.ExchangePropertyLanguage + - org.apache.camel.language.simple.FileLanguage + - org.apache.camel.language.header.HeaderLanguage + - org.apache.camel.language.ref.RefLanguage + - org.apache.camel.language.simple.SimpleLanguage + - org.apache.camel.language.tokenizer.TokenizeLanguage + camel-quarkus-csv: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-csv + dataformats: + - csv + javaTypes: + - org.apache.camel.dataformat.csv.CsvDataFormat + camel-quarkus-dataformat: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-dataformat + schemes: + - id: dataformat + http: false + passive: true + javaTypes: + - org.apache.camel.component.dataformat.DataFormatComponent + camel-quarkus-direct: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-direct + schemes: + - id: direct + http: false + passive: true + javaTypes: + - org.apache.camel.component.direct.DirectComponent + camel-quarkus-dozer: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-dozer + schemes: + - id: dozer + http: false + passive: false + javaTypes: + - org.apache.camel.component.dozer.DozerComponent + camel-quarkus-exec: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-exec + schemes: + - id: exec + http: false + passive: false + javaTypes: + - org.apache.camel.component.exec.ExecComponent + camel-quarkus-fhir: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-fhir + schemes: + - id: fhir + http: false + passive: false + dataformats: + - fhirJson + - fhirXml + javaTypes: + - org.apache.camel.component.fhir.FhirComponent + - org.apache.camel.component.fhir.FhirJsonDataFormat + - org.apache.camel.component.fhir.FhirXmlDataFormat + camel-quarkus-file: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-file + schemes: + - id: file + http: false + passive: false + javaTypes: + - org.apache.camel.component.file.FileComponent + camel-quarkus-ftp: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-ftp + schemes: + - id: ftp + http: false + passive: false + - id: ftps + http: false + passive: false + - id: sftp + http: false + passive: false + javaTypes: + - org.apache.camel.component.file.remote.FtpComponent + - org.apache.camel.component.file.remote.FtpsComponent + - org.apache.camel.component.file.remote.SftpComponent + camel-quarkus-infinispan: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-infinispan + schemes: + - id: infinispan + http: false + passive: false + javaTypes: + - org.apache.camel.component.infinispan.InfinispanComponent + camel-quarkus-jackson: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-jackson + dataformats: + - json-jackson + javaTypes: + - org.apache.camel.component.jackson.JacksonDataFormat + camel-quarkus-jdbc: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-jdbc + schemes: + - id: jdbc + http: false + passive: false + javaTypes: + - org.apache.camel.component.jdbc.JdbcComponent + camel-quarkus-kafka: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-kafka + schemes: + - id: kafka + http: false + passive: false + javaTypes: + - org.apache.camel.component.kafka.KafkaComponent + camel-quarkus-log: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-log + schemes: + - id: log + http: false + passive: true + javaTypes: + - org.apache.camel.component.log.LogComponent + camel-quarkus-mail: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-mail + schemes: + - id: imap + http: false + passive: false + - id: imaps + http: false + passive: false + - id: pop3 + http: false + passive: false + - id: pop3s + http: false + passive: false + - id: smtp + http: false + passive: false + - id: smtps + http: false + passive: false + dataformats: + - mime-multipart + javaTypes: + - org.apache.camel.component.mail.MailComponent + - org.apache.camel.dataformat.mime.multipart.MimeMultipartDataFormat + camel-quarkus-microprofile-metrics: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-microprofile-metrics + schemes: + - id: microprofile-metrics + http: false + passive: false + javaTypes: + - org.apache.camel.component.microprofile.metrics.MicroProfileMetricsComponent + camel-quarkus-mongodb: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-mongodb + schemes: + - id: mongodb + http: false + passive: false + javaTypes: + - org.apache.camel.component.mongodb.MongoDbComponent + camel-quarkus-netty: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-netty + schemes: + - id: netty + http: false + passive: false + javaTypes: + - org.apache.camel.component.netty.NettyComponent + 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.netty.http.NettyHttpComponent + camel-quarkus-paho: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-paho + schemes: + - id: paho + http: false + passive: false + javaTypes: + - org.apache.camel.component.paho.PahoComponent + camel-quarkus-pdf: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-pdf + schemes: + - id: pdf + http: false + passive: false + javaTypes: + - org.apache.camel.component.pdf.PdfComponent + camel-quarkus-platform-http: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-platform-http + schemes: + - id: platform-http + http: false + passive: false + javaTypes: + - org.apache.camel.component.platform.http.PlatformHttpComponent + camel-quarkus-rest: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-rest + schemes: + - id: rest + http: true + passive: false + - id: rest-api + http: false + passive: false + javaTypes: + - org.apache.camel.component.rest.RestComponent + - org.apache.camel.component.rest.RestApiComponent + camel-quarkus-salesforce: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-salesforce + schemes: + - id: salesforce + http: false + passive: false + javaTypes: + - org.apache.camel.component.salesforce.SalesforceComponent + camel-quarkus-scheduler: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-scheduler + schemes: + - id: scheduler + http: false + passive: false + javaTypes: + - org.apache.camel.component.scheduler.SchedulerComponent + camel-quarkus-seda: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-seda + schemes: + - id: seda + http: false + passive: true + javaTypes: + - org.apache.camel.component.seda.SedaComponent + camel-quarkus-servlet: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-servlet + schemes: + - id: servlet + http: true + passive: false + javaTypes: + - org.apache.camel.component.servlet.ServletComponent + camel-quarkus-sjms: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-sjms + schemes: + - id: sjms + http: false + passive: false + - id: sjms-batch + http: false + passive: false + javaTypes: + - org.apache.camel.component.sjms.SjmsComponent + - org.apache.camel.component.sjms.batch.SjmsBatchComponent + camel-quarkus-sjms2: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-sjms2 + schemes: + - id: sjms2 + http: false + passive: false + javaTypes: + - org.apache.camel.component.sjms2.Sjms2Component + camel-quarkus-slack: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-slack + schemes: + - id: slack + http: false + passive: false + javaTypes: + - org.apache.camel.component.slack.SlackComponent + camel-quarkus-snakeyaml: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-snakeyaml + dataformats: + - yaml-snakeyaml + javaTypes: + - org.apache.camel.component.snakeyaml.SnakeYAMLDataFormat + camel-quarkus-tagsoup: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-tagsoup + dataformats: + - tidyMarkup + javaTypes: + - org.apache.camel.dataformat.tagsoup.TidyMarkupDataFormat + camel-quarkus-tarfile: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-tarfile + dataformats: + - tarfile + javaTypes: + - org.apache.camel.dataformat.tarfile.TarFileDataFormat + camel-quarkus-timer: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-timer + schemes: + - id: timer + http: false + passive: false + javaTypes: + - org.apache.camel.component.timer.TimerComponent + camel-quarkus-twitter: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-twitter + schemes: + - id: twitter-directmessage + http: false + passive: false + - id: twitter-search + http: false + passive: false + - id: twitter-timeline + http: false + passive: false + javaTypes: + - org.apache.camel.component.twitter.directmessage.TwitterDirectMessageComponent + - org.apache.camel.component.twitter.search.TwitterSearchComponent + - org.apache.camel.component.twitter.timeline.TwitterTimelineComponent + camel-quarkus-validator: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-validator + schemes: + - id: validator + http: false + passive: true + javaTypes: + - org.apache.camel.component.validator.ValidatorComponent + camel-quarkus-vm: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-vm + schemes: + - id: vm + http: false + passive: true + javaTypes: + - org.apache.camel.component.vm.VmComponent + camel-quarkus-xslt: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-xslt + schemes: + - id: xslt + http: false + passive: false + javaTypes: + - org.apache.camel.component.xslt.XsltComponent + camel-quarkus-zipfile: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-zipfile + dataformats: + - zipfile + javaTypes: + - org.apache.camel.dataformat.zipfile.ZipFileDataFormat diff --git a/deploy/olm-catalog/camel-k/1.0.0-rc2-snapshot/camel-k.v1.0.0-rc2-snapshot.clusterserviceversion.yaml b/deploy/olm-catalog/camel-k/1.0.0-rc2-snapshot/camel-k.v1.0.0-rc2-snapshot.clusterserviceversion.yaml index df1dc6fc8f..b30afd98eb 100644 --- a/deploy/olm-catalog/camel-k/1.0.0-rc2-snapshot/camel-k.v1.0.0-rc2-snapshot.clusterserviceversion.yaml +++ b/deploy/olm-catalog/camel-k/1.0.0-rc2-snapshot/camel-k.v1.0.0-rc2-snapshot.clusterserviceversion.yaml @@ -254,6 +254,19 @@ spec: - patch - update - watch + - apiGroups: + - batch + resources: + - cronjobs + verbs: + - create + - delete + - deletecollection + - get + - list + - patch + - update + - watch - apiGroups: - apps resources: diff --git a/deploy/operator-role-kubernetes.yaml b/deploy/operator-role-kubernetes.yaml index 3ec172af9e..4e9db4cdf0 100644 --- a/deploy/operator-role-kubernetes.yaml +++ b/deploy/operator-role-kubernetes.yaml @@ -84,6 +84,19 @@ rules: - patch - update - watch +- apiGroups: + - batch + resources: + - cronjobs + verbs: + - create + - delete + - deletecollection + - get + - list + - patch + - update + - watch - apiGroups: - apps attributeRestrictions: null diff --git a/deploy/operator-role-olm.yaml b/deploy/operator-role-olm.yaml index 945fcfb881..30c2a90e90 100644 --- a/deploy/operator-role-olm.yaml +++ b/deploy/operator-role-olm.yaml @@ -84,6 +84,19 @@ rules: - patch - update - watch +- apiGroups: + - batch + resources: + - cronjobs + verbs: + - create + - delete + - deletecollection + - get + - list + - patch + - update + - watch - apiGroups: - apps attributeRestrictions: null diff --git a/deploy/operator-role-openshift.yaml b/deploy/operator-role-openshift.yaml index 6921e65b3f..9da513255e 100644 --- a/deploy/operator-role-openshift.yaml +++ b/deploy/operator-role-openshift.yaml @@ -84,6 +84,19 @@ rules: - patch - update - watch +- apiGroups: + - batch + resources: + - cronjobs + verbs: + - create + - delete + - deletecollection + - get + - list + - patch + - update + - watch - apiGroups: - apps attributeRestrictions: null diff --git a/deploy/resources.go b/deploy/resources.go index 5c19f1fb07..c26158322b 100644 --- a/deploy/resources.go +++ b/deploy/resources.go @@ -243,7 +243,7 @@ metadata: app: "camel-k" ` - Resources["camel-catalog-3.0.0-1.0.9.yaml"] = + Resources["camel-catalog-3.0.0-1.0.10.yaml"] = ` # --------------------------------------------------------------------------- # Licensed to the Apache Software Foundation (ASF) under one or more @@ -265,15 +265,15 @@ metadata: apiVersion: camel.apache.org/v1 kind: CamelCatalog metadata: - name: camel-catalog-3.0.0-1.0.9 + name: camel-catalog-3.0.0-1.0.10 labels: app: camel-k camel.apache.org/catalog.version: 3.0.0 camel.apache.org/catalog.loader.version: 3.0.0 - camel.apache.org/runtime.version: 1.0.9 + camel.apache.org/runtime.version: 1.0.10 spec: version: 3.0.0 - runtimeVersion: 1.0.9 + runtimeVersion: 1.0.10 artifacts: camel-activemq: groupId: org.apache.camel @@ -3166,7 +3166,7 @@ spec: - org.apache.camel.component.zookeepermaster.MasterComponent ` - Resources["camel-catalog-quarkus-1.0.0-M1-1.0.9.yaml"] = + Resources["camel-catalog-3.0.0-1.0.9.yaml"] = ` # --------------------------------------------------------------------------- # Licensed to the Apache Software Foundation (ASF) under one or more @@ -3188,206 +3188,3749 @@ spec: apiVersion: camel.apache.org/v1 kind: CamelCatalog metadata: - name: camel-catalog-quarkus-1.0.0-m1-1.0.9 + name: camel-catalog-3.0.0-1.0.9 labels: app: camel-k camel.apache.org/catalog.version: 3.0.0 camel.apache.org/catalog.loader.version: 3.0.0 camel.apache.org/runtime.version: 1.0.9 - camel.apache.org/runtime.provider: quarkus spec: version: 3.0.0 runtimeVersion: 1.0.9 - runtimeProvider: - quarkus: - camelQuarkusVersion: 1.0.0-M1 - quarkusVersion: 1.0.1.Final artifacts: - camel-k-loader-groovy: - groupId: org.apache.camel.k - artifactId: camel-k-loader-groovy - dependencies: - - groupId: org.apache.camel - artifactId: camel-endpointdsl - - groupId: org.apache.camel - artifactId: camel-groovy - camel-k-loader-java: - groupId: org.apache.camel.k - artifactId: camel-k-loader-java - dependencies: - - groupId: org.apache.camel - artifactId: camel-endpointdsl - camel-k-loader-js: - groupId: org.apache.camel.k - artifactId: camel-k-loader-js - dependencies: - - groupId: org.apache.camel - artifactId: camel-endpointdsl - camel-k-loader-knative: - groupId: org.apache.camel.k - artifactId: camel-k-loader-knative - camel-k-loader-kotlin: - groupId: org.apache.camel.k - artifactId: camel-k-loader-kotlin - dependencies: - - groupId: org.apache.camel - artifactId: camel-endpointdsl - camel-k-loader-xml: - groupId: org.apache.camel.k - artifactId: camel-k-loader-xml - camel-k-runtime-health: - groupId: org.apache.camel.k - artifactId: camel-k-runtime-health - dependencies: - - groupId: org.apache.camel - artifactId: camel-servlet - - groupId: org.apache.camel.k - artifactId: camel-k-runtime-servlet - camel-k-runtime-knative: - groupId: org.apache.camel.k - artifactId: camel-k-runtime-knative - dependencies: - - groupId: org.apache.camel - artifactId: camel-cloud - - groupId: org.apache.camel.k - artifactId: camel-k-loader-yaml - - groupId: org.apache.camel.k - artifactId: camel-k-loader-knative - - groupId: org.apache.camel.k - artifactId: camel-knative-api - - groupId: org.apache.camel.k - artifactId: camel-knative - - groupId: org.apache.camel.k - artifactId: camel-knative-http - camel-k-runtime-main: - groupId: org.apache.camel.k - artifactId: camel-k-runtime-main - dependencies: - - groupId: org.apache.camel - artifactId: camel-core-engine - - groupId: org.apache.camel - artifactId: camel-main - camel-k-runtime-servlet: - groupId: org.apache.camel.k - artifactId: camel-k-runtime-servlet - dependencies: - - groupId: org.apache.camel - artifactId: camel-servlet - camel-k-runtime-webhook: - groupId: org.apache.camel.k - artifactId: camel-k-runtime-webhook - dependencies: - - groupId: org.apache.camel - artifactId: camel-webhook - camel-knative: - groupId: org.apache.camel.k - artifactId: camel-knative - schemes: - - id: knative - http: true - passive: false - dependencies: - - groupId: org.apache.camel - artifactId: camel-cloud - - groupId: org.apache.camel.k - artifactId: camel-knative-api - - groupId: org.apache.camel.k - artifactId: camel-knative-http - camel-quarkus-aws-ecs: - groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-aws-ecs + camel-activemq: + groupId: org.apache.camel + artifactId: camel-activemq schemes: - - id: aws-ecs + - id: activemq http: false passive: false javaTypes: - - org.apache.camel.component.aws.ecs.ECSComponent - camel-quarkus-aws-eks: - groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-aws-eks + - org.apache.camel.component.activemq.ActiveMQComponent + camel-ahc: + groupId: org.apache.camel + artifactId: camel-ahc schemes: - - id: aws-eks - http: false + - id: ahc + http: true passive: false javaTypes: - - org.apache.camel.component.aws.eks.EKSComponent - camel-quarkus-aws-kms: - groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-aws-kms + - org.apache.camel.component.ahc.AhcComponent + camel-ahc-ws: + groupId: org.apache.camel + artifactId: camel-ahc-ws schemes: - - id: aws-kms + - id: ahc-ws + http: true + passive: false + - id: ahc-wss http: false passive: false javaTypes: - - org.apache.camel.component.aws.kms.KMSComponent - camel-quarkus-aws-s3: - groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-aws-s3 + - org.apache.camel.component.ahc.ws.WsComponent + camel-amqp: + groupId: org.apache.camel + artifactId: camel-amqp schemes: - - id: aws-s3 + - id: amqp http: false passive: false javaTypes: - - org.apache.camel.component.aws.s3.S3Component - camel-quarkus-aws-sns: - groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-aws-sns + - org.apache.camel.component.amqp.AMQPComponent + camel-any23: + groupId: org.apache.camel + artifactId: camel-any23 + dataformats: + - any23 + javaTypes: + - org.apache.camel.dataformat.any23.Any23DataFormat + camel-apns: + groupId: org.apache.camel + artifactId: camel-apns schemes: - - id: aws-sns + - id: apns http: false passive: false javaTypes: - - org.apache.camel.component.aws.sns.SnsComponent - camel-quarkus-aws-sqs: - groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-aws-sqs + - org.apache.camel.component.apns.ApnsComponent + camel-as2: + groupId: org.apache.camel + artifactId: camel-as2 schemes: - - id: aws-sqs + - id: as2 http: false passive: false javaTypes: - - org.apache.camel.component.aws.sqs.SqsComponent - camel-quarkus-base64: - groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-base64 + - org.apache.camel.component.as2.AS2Component + camel-asn1: + groupId: org.apache.camel + artifactId: camel-asn1 dataformats: - - base64 + - asn1 javaTypes: - - org.apache.camel.dataformat.base64.Base64DataFormat - camel-quarkus-bean: - groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-bean + - org.apache.camel.dataformat.asn1.ASN1DataFormat + camel-asterisk: + groupId: org.apache.camel + artifactId: camel-asterisk schemes: - - id: bean + - id: asterisk http: false - passive: true - - id: class + passive: false + javaTypes: + - org.apache.camel.component.asterisk.AsteriskComponent + camel-atmos: + groupId: org.apache.camel + artifactId: camel-atmos + schemes: + - id: atmos http: false - passive: true - languages: - - bean + passive: false javaTypes: - - org.apache.camel.component.bean.BeanComponent - - org.apache.camel.component.beanclass.ClassComponent - - org.apache.camel.language.bean.BeanLanguage - camel-quarkus-bean-validator: - groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-bean-validator + - org.apache.camel.component.atmos.AtmosComponent + camel-atmosphere-websocket: + groupId: org.apache.camel + artifactId: camel-atmosphere-websocket schemes: - - id: bean-validator + - id: atmosphere-websocket + http: true + passive: false + javaTypes: + - org.apache.camel.component.atmosphere.websocket.WebsocketComponent + camel-atom: + groupId: org.apache.camel + artifactId: camel-atom + schemes: + - id: atom http: false passive: false javaTypes: - - org.apache.camel.component.bean.validator.BeanValidatorComponent - camel-quarkus-controlbus: - groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-controlbus + - org.apache.camel.component.atom.AtomComponent + camel-atomix: + groupId: org.apache.camel + artifactId: camel-atomix schemes: - - id: controlbus + - id: atomix-map http: false - passive: true + passive: false + - id: atomix-messaging + http: false + passive: false + - id: atomix-multimap + http: false + passive: false + - id: atomix-queue + http: false + passive: false + - id: atomix-set + http: false + passive: false + - id: atomix-value + http: false + passive: false javaTypes: - - org.apache.camel.component.controlbus.ControlBusComponent + - org.apache.camel.component.atomix.client.map.AtomixMapComponent + - org.apache.camel.component.atomix.client.messaging.AtomixMessagingComponent + - org.apache.camel.component.atomix.client.multimap.AtomixMultiMapComponent + - org.apache.camel.component.atomix.client.queue.AtomixQueueComponent + - org.apache.camel.component.atomix.client.set.AtomixSetComponent + - org.apache.camel.component.atomix.client.value.AtomixValueComponent + camel-avro: + groupId: org.apache.camel + artifactId: camel-avro + schemes: + - id: avro + http: false + passive: false + dataformats: + - avro + javaTypes: + - org.apache.camel.component.avro.AvroComponent + - org.apache.camel.dataformat.avro.AvroDataFormat + camel-aws-cw: + groupId: org.apache.camel + artifactId: camel-aws-cw + schemes: + - id: aws-cw + http: false + passive: false + javaTypes: + - org.apache.camel.component.aws.cw.CwComponent + camel-aws-ddb: + groupId: org.apache.camel + artifactId: camel-aws-ddb + schemes: + - id: aws-ddb + http: false + passive: false + - id: aws-ddbstream + http: false + passive: false + javaTypes: + - org.apache.camel.component.aws.ddb.DdbComponent + - org.apache.camel.component.aws.ddbstream.DdbStreamComponent + camel-aws-ec2: + groupId: org.apache.camel + artifactId: camel-aws-ec2 + schemes: + - id: aws-ec2 + http: false + passive: false + javaTypes: + - org.apache.camel.component.aws.ec2.EC2Component + camel-aws-ecs: + groupId: org.apache.camel + artifactId: camel-aws-ecs + schemes: + - id: aws-ecs + http: false + passive: false + javaTypes: + - org.apache.camel.component.aws.ecs.ECSComponent + camel-aws-eks: + groupId: org.apache.camel + artifactId: camel-aws-eks + schemes: + - id: aws-eks + http: false + passive: false + javaTypes: + - org.apache.camel.component.aws.eks.EKSComponent + camel-aws-iam: + groupId: org.apache.camel + artifactId: camel-aws-iam + schemes: + - id: aws-iam + http: false + passive: false + javaTypes: + - org.apache.camel.component.aws.iam.IAMComponent + camel-aws-kinesis: + groupId: org.apache.camel + artifactId: camel-aws-kinesis + schemes: + - id: aws-kinesis + http: false + passive: false + - id: aws-kinesis-firehose + http: false + passive: false + javaTypes: + - org.apache.camel.component.aws.kinesis.KinesisComponent + - org.apache.camel.component.aws.firehose.KinesisFirehoseComponent + camel-aws-kms: + groupId: org.apache.camel + artifactId: camel-aws-kms + schemes: + - id: aws-kms + http: false + passive: false + javaTypes: + - org.apache.camel.component.aws.kms.KMSComponent + camel-aws-lambda: + groupId: org.apache.camel + artifactId: camel-aws-lambda + schemes: + - id: aws-lambda + http: false + passive: false + javaTypes: + - org.apache.camel.component.aws.lambda.LambdaComponent + camel-aws-mq: + groupId: org.apache.camel + artifactId: camel-aws-mq + schemes: + - id: aws-mq + http: false + passive: false + javaTypes: + - org.apache.camel.component.aws.mq.MQComponent + camel-aws-msk: + groupId: org.apache.camel + artifactId: camel-aws-msk + schemes: + - id: aws-msk + http: false + passive: false + javaTypes: + - org.apache.camel.component.aws.msk.MSKComponent + camel-aws-s3: + groupId: org.apache.camel + artifactId: camel-aws-s3 + schemes: + - id: aws-s3 + http: false + passive: false + javaTypes: + - org.apache.camel.component.aws.s3.S3Component + camel-aws-sdb: + groupId: org.apache.camel + artifactId: camel-aws-sdb + schemes: + - id: aws-sdb + http: false + passive: false + javaTypes: + - org.apache.camel.component.aws.sdb.SdbComponent + camel-aws-ses: + groupId: org.apache.camel + artifactId: camel-aws-ses + schemes: + - id: aws-ses + http: false + passive: false + javaTypes: + - org.apache.camel.component.aws.ses.SesComponent + camel-aws-sns: + groupId: org.apache.camel + artifactId: camel-aws-sns + schemes: + - id: aws-sns + http: false + passive: false + javaTypes: + - org.apache.camel.component.aws.sns.SnsComponent + camel-aws-sqs: + groupId: org.apache.camel + artifactId: camel-aws-sqs + schemes: + - id: aws-sqs + http: false + passive: false + javaTypes: + - org.apache.camel.component.aws.sqs.SqsComponent + camel-aws-swf: + groupId: org.apache.camel + artifactId: camel-aws-swf + schemes: + - id: aws-swf + http: false + passive: false + javaTypes: + - org.apache.camel.component.aws.swf.SWFComponent + camel-aws-translate: + groupId: org.apache.camel + artifactId: camel-aws-translate + schemes: + - id: aws-translate + http: false + passive: false + javaTypes: + - org.apache.camel.component.aws.translate.TranslateComponent + camel-azure: + groupId: org.apache.camel + artifactId: camel-azure + schemes: + - id: azure-blob + http: false + passive: false + - id: azure-queue + http: false + passive: false + javaTypes: + - org.apache.camel.component.azure.blob.BlobServiceComponent + - org.apache.camel.component.azure.queue.QueueServiceComponent + camel-barcode: + groupId: org.apache.camel + artifactId: camel-barcode + dataformats: + - barcode + javaTypes: + - org.apache.camel.dataformat.barcode.BarcodeDataFormat + camel-base: + groupId: org.apache.camel + artifactId: camel-base + languages: + - constant + - exchangeProperty + - file + - header + - ref + - simple + - tokenize + javaTypes: + - org.apache.camel.language.constant.ConstantLanguage + - org.apache.camel.language.property.ExchangePropertyLanguage + - org.apache.camel.language.simple.FileLanguage + - org.apache.camel.language.header.HeaderLanguage + - org.apache.camel.language.ref.RefLanguage + - org.apache.camel.language.simple.SimpleLanguage + - org.apache.camel.language.tokenizer.TokenizeLanguage + camel-base64: + groupId: org.apache.camel + artifactId: camel-base64 + dataformats: + - base64 + javaTypes: + - org.apache.camel.dataformat.base64.Base64DataFormat + camel-bean: + groupId: org.apache.camel + artifactId: camel-bean + schemes: + - id: bean + http: false + passive: true + - id: class + http: false + passive: true + languages: + - bean + javaTypes: + - org.apache.camel.component.bean.BeanComponent + - org.apache.camel.component.beanclass.ClassComponent + - org.apache.camel.language.bean.BeanLanguage + camel-bean-validator: + groupId: org.apache.camel + artifactId: camel-bean-validator + schemes: + - id: bean-validator + http: false + passive: false + javaTypes: + - org.apache.camel.component.bean.validator.BeanValidatorComponent + camel-beanio: + groupId: org.apache.camel + artifactId: camel-beanio + dataformats: + - beanio + javaTypes: + - org.apache.camel.dataformat.beanio.BeanIODataFormat + camel-beanstalk: + groupId: org.apache.camel + artifactId: camel-beanstalk + schemes: + - id: beanstalk + http: false + passive: false + javaTypes: + - org.apache.camel.component.beanstalk.BeanstalkComponent + camel-bindy: + groupId: org.apache.camel + artifactId: camel-bindy + dataformats: + - bindy-csv + - bindy-fixed + - bindy-kvp + javaTypes: + - org.apache.camel.dataformat.bindy.csv.BindyCsvDataFormat + - org.apache.camel.dataformat.bindy.fixed.BindyFixedLengthDataFormat + - org.apache.camel.dataformat.bindy.kvp.BindyKeyValuePairDataFormat + camel-bonita: + groupId: org.apache.camel + artifactId: camel-bonita + schemes: + - id: bonita + http: false + passive: false + javaTypes: + - org.apache.camel.component.bonita.BonitaComponent + camel-box: + groupId: org.apache.camel + artifactId: camel-box + schemes: + - id: box + http: false + passive: false + javaTypes: + - org.apache.camel.component.box.BoxComponent + camel-braintree: + groupId: org.apache.camel + artifactId: camel-braintree + schemes: + - id: braintree + http: false + passive: false + javaTypes: + - org.apache.camel.component.braintree.BraintreeComponent + camel-browse: + groupId: org.apache.camel + artifactId: camel-browse + schemes: + - id: browse + http: false + passive: true + javaTypes: + - org.apache.camel.component.browse.BrowseComponent + camel-caffeine: + groupId: org.apache.camel + artifactId: camel-caffeine + schemes: + - id: caffeine-cache + http: false + passive: false + - id: caffeine-loadcache + http: false + passive: false + javaTypes: + - org.apache.camel.component.caffeine.cache.CaffeineCacheComponent + - org.apache.camel.component.caffeine.load.CaffeineLoadCacheComponent + camel-cassandraql: + groupId: org.apache.camel + artifactId: camel-cassandraql + schemes: + - id: cql + http: false + passive: false + javaTypes: + - org.apache.camel.component.cassandra.CassandraComponent + camel-cbor: + groupId: org.apache.camel + artifactId: camel-cbor + dataformats: + - cbor + javaTypes: + - org.apache.camel.component.cbor.CBORDataFormat + camel-chatscript: + groupId: org.apache.camel + artifactId: camel-chatscript + schemes: + - id: chatscript + http: false + passive: false + javaTypes: + - org.apache.camel.component.chatscript.ChatScriptComponent + camel-chunk: + groupId: org.apache.camel + artifactId: camel-chunk + schemes: + - id: chunk + http: false + passive: false + javaTypes: + - org.apache.camel.component.chunk.ChunkComponent + camel-cm-sms: + groupId: org.apache.camel + artifactId: camel-cm-sms + schemes: + - id: cm-sms + http: false + passive: false + javaTypes: + - org.apache.camel.component.cm.CMComponent + camel-cmis: + groupId: org.apache.camel + artifactId: camel-cmis + schemes: + - id: cmis + http: false + passive: false + javaTypes: + - org.apache.camel.component.cmis.CMISComponent + camel-coap: + groupId: org.apache.camel + artifactId: camel-coap + schemes: + - id: coap + http: false + passive: false + - id: coaps + http: false + passive: false + - id: coap+tcp + http: false + passive: false + - id: coaps+tcp + http: false + passive: false + javaTypes: + - org.apache.camel.coap.CoAPComponent + camel-cometd: + groupId: org.apache.camel + artifactId: camel-cometd + schemes: + - id: cometd + http: false + passive: false + - id: cometds + http: false + passive: false + javaTypes: + - org.apache.camel.component.cometd.CometdComponent + camel-consul: + groupId: org.apache.camel + artifactId: camel-consul + schemes: + - id: consul + http: false + passive: false + javaTypes: + - org.apache.camel.component.consul.ConsulComponent + camel-controlbus: + groupId: org.apache.camel + artifactId: camel-controlbus + schemes: + - id: controlbus + http: false + passive: true + javaTypes: + - org.apache.camel.component.controlbus.ControlBusComponent + camel-corda: + groupId: org.apache.camel + artifactId: camel-corda + schemes: + - id: corda + http: false + passive: false + javaTypes: + - org.apache.camel.component.corda.CordaComponent + camel-couchbase: + groupId: org.apache.camel + artifactId: camel-couchbase + schemes: + - id: couchbase + http: false + passive: false + javaTypes: + - org.apache.camel.component.couchbase.CouchbaseComponent + camel-couchdb: + groupId: org.apache.camel + artifactId: camel-couchdb + schemes: + - id: couchdb + http: false + passive: false + javaTypes: + - org.apache.camel.component.couchdb.CouchDbComponent + camel-crypto: + groupId: org.apache.camel + artifactId: camel-crypto + schemes: + - id: crypto + http: false + passive: false + dataformats: + - crypto + - pgp + javaTypes: + - org.apache.camel.component.crypto.DigitalSignatureComponent + - org.apache.camel.converter.crypto.CryptoDataFormat + - org.apache.camel.converter.crypto.PGPDataFormat + camel-crypto-cms: + groupId: org.apache.camel + artifactId: camel-crypto-cms + schemes: + - id: crypto-cms + http: false + passive: false + javaTypes: + - org.apache.camel.component.crypto.cms.CryptoCmsComponent + camel-csv: + groupId: org.apache.camel + artifactId: camel-csv + dataformats: + - csv + javaTypes: + - org.apache.camel.dataformat.csv.CsvDataFormat + camel-cxf: + groupId: org.apache.camel + artifactId: camel-cxf + schemes: + - id: cxf + http: true + passive: false + - id: cxfrs + http: true + passive: false + javaTypes: + - org.apache.camel.component.cxf.CxfComponent + - org.apache.camel.component.cxf.jaxrs.CxfRsComponent + camel-dataformat: + groupId: org.apache.camel + artifactId: camel-dataformat + schemes: + - id: dataformat + http: false + passive: true + javaTypes: + - org.apache.camel.component.dataformat.DataFormatComponent + camel-dataset: + groupId: org.apache.camel + artifactId: camel-dataset + schemes: + - id: dataset + http: false + passive: true + - id: dataset-test + http: false + passive: false + javaTypes: + - org.apache.camel.component.dataset.DataSetComponent + - org.apache.camel.component.dataset.DataSetTestComponent + camel-debezium-mongodb: + groupId: org.apache.camel + artifactId: camel-debezium-mongodb + schemes: + - id: debezium-mongodb + http: false + passive: false + javaTypes: + - org.apache.camel.component.debezium.DebeziumMongodbComponent + camel-debezium-mysql: + groupId: org.apache.camel + artifactId: camel-debezium-mysql + schemes: + - id: debezium-mysql + http: false + passive: false + javaTypes: + - org.apache.camel.component.debezium.DebeziumMySqlComponent + camel-debezium-postgres: + groupId: org.apache.camel + artifactId: camel-debezium-postgres + schemes: + - id: debezium-postgres + http: false + passive: false + javaTypes: + - org.apache.camel.component.debezium.DebeziumPostgresComponent + camel-debezium-sqlserver: + groupId: org.apache.camel + artifactId: camel-debezium-sqlserver + schemes: + - id: debezium-sqlserver + http: false + passive: false + javaTypes: + - org.apache.camel.component.debezium.DebeziumSqlserverComponent + camel-digitalocean: + groupId: org.apache.camel + artifactId: camel-digitalocean + schemes: + - id: digitalocean + http: false + passive: false + javaTypes: + - org.apache.camel.component.digitalocean.DigitalOceanComponent + camel-direct: + groupId: org.apache.camel + artifactId: camel-direct + schemes: + - id: direct + http: false + passive: true + javaTypes: + - org.apache.camel.component.direct.DirectComponent + camel-directvm: + groupId: org.apache.camel + artifactId: camel-directvm + schemes: + - id: direct-vm + http: false + passive: true + javaTypes: + - org.apache.camel.component.directvm.DirectVmComponent + camel-disruptor: + groupId: org.apache.camel + artifactId: camel-disruptor + schemes: + - id: disruptor + http: false + passive: false + - id: disruptor-vm + http: false + passive: false + javaTypes: + - org.apache.camel.component.disruptor.DisruptorComponent + - org.apache.camel.component.disruptor.vm.DisruptorVmComponent + camel-dns: + groupId: org.apache.camel + artifactId: camel-dns + schemes: + - id: dns + http: false + passive: false + javaTypes: + - org.apache.camel.component.dns.DnsComponent + camel-docker: + groupId: org.apache.camel + artifactId: camel-docker + schemes: + - id: docker + http: false + passive: false + javaTypes: + - org.apache.camel.component.docker.DockerComponent + camel-dozer: + groupId: org.apache.camel + artifactId: camel-dozer + schemes: + - id: dozer + http: false + passive: false + javaTypes: + - org.apache.camel.component.dozer.DozerComponent + camel-drill: + groupId: org.apache.camel + artifactId: camel-drill + schemes: + - id: drill + http: false + passive: false + javaTypes: + - org.apache.camel.component.drill.DrillComponent + camel-dropbox: + groupId: org.apache.camel + artifactId: camel-dropbox + schemes: + - id: dropbox + http: false + passive: false + javaTypes: + - org.apache.camel.component.dropbox.DropboxComponent + camel-ehcache: + groupId: org.apache.camel + artifactId: camel-ehcache + schemes: + - id: ehcache + http: false + passive: false + javaTypes: + - org.apache.camel.component.ehcache.EhcacheComponent + camel-elasticsearch-rest: + groupId: org.apache.camel + artifactId: camel-elasticsearch-rest + schemes: + - id: elasticsearch-rest + http: false + passive: false + javaTypes: + - org.apache.camel.component.elasticsearch.ElasticsearchComponent + camel-elsql: + groupId: org.apache.camel + artifactId: camel-elsql + schemes: + - id: elsql + http: false + passive: false + javaTypes: + - org.apache.camel.component.elsql.ElsqlComponent + camel-etcd: + groupId: org.apache.camel + artifactId: camel-etcd + schemes: + - id: etcd + http: false + passive: false + javaTypes: + - org.apache.camel.component.etcd.EtcdComponent + camel-eventadmin: + groupId: org.apache.camel + artifactId: camel-eventadmin + schemes: + - id: eventadmin + http: false + passive: false + javaTypes: + - org.apache.camel.component.eventadmin.EventAdminComponent + camel-exec: + groupId: org.apache.camel + artifactId: camel-exec + schemes: + - id: exec + http: false + passive: false + javaTypes: + - org.apache.camel.component.exec.ExecComponent + camel-facebook: + groupId: org.apache.camel + artifactId: camel-facebook + schemes: + - id: facebook + http: false + passive: false + javaTypes: + - org.apache.camel.component.facebook.FacebookComponent + camel-fastjson: + groupId: org.apache.camel + artifactId: camel-fastjson + dataformats: + - json-fastjson + javaTypes: + - org.apache.camel.component.fastjson.FastjsonDataFormat + camel-fhir: + groupId: org.apache.camel + artifactId: camel-fhir + schemes: + - id: fhir + http: false + passive: false + dataformats: + - fhirJson + - fhirXml + javaTypes: + - org.apache.camel.component.fhir.FhirComponent + - org.apache.camel.component.fhir.FhirJsonDataFormat + - org.apache.camel.component.fhir.FhirXmlDataFormat + camel-file: + groupId: org.apache.camel + artifactId: camel-file + schemes: + - id: file + http: false + passive: false + javaTypes: + - org.apache.camel.component.file.FileComponent + camel-file-watch: + groupId: org.apache.camel + artifactId: camel-file-watch + schemes: + - id: file-watch + http: false + passive: false + javaTypes: + - org.apache.camel.component.file.watch.FileWatchComponent + camel-flatpack: + groupId: org.apache.camel + artifactId: camel-flatpack + schemes: + - id: flatpack + http: false + passive: false + dataformats: + - flatpack + javaTypes: + - org.apache.camel.component.flatpack.FlatpackComponent + - org.apache.camel.dataformat.flatpack.FlatpackDataFormat + camel-flink: + groupId: org.apache.camel + artifactId: camel-flink + schemes: + - id: flink + http: false + passive: false + javaTypes: + - org.apache.camel.component.flink.FlinkComponent + camel-fop: + groupId: org.apache.camel + artifactId: camel-fop + schemes: + - id: fop + http: false + passive: false + javaTypes: + - org.apache.camel.component.fop.FopComponent + camel-freemarker: + groupId: org.apache.camel + artifactId: camel-freemarker + schemes: + - id: freemarker + http: false + passive: false + javaTypes: + - org.apache.camel.component.freemarker.FreemarkerComponent + camel-ftp: + groupId: org.apache.camel + artifactId: camel-ftp + schemes: + - id: ftp + http: false + passive: false + - id: ftps + http: false + passive: false + - id: sftp + http: false + passive: false + javaTypes: + - org.apache.camel.component.file.remote.FtpComponent + - org.apache.camel.component.file.remote.FtpsComponent + - org.apache.camel.component.file.remote.SftpComponent + camel-ganglia: + groupId: org.apache.camel + artifactId: camel-ganglia + schemes: + - id: ganglia + http: false + passive: false + javaTypes: + - org.apache.camel.component.ganglia.GangliaComponent + camel-geocoder: + groupId: org.apache.camel + artifactId: camel-geocoder + schemes: + - id: geocoder + http: false + passive: false + javaTypes: + - org.apache.camel.component.geocoder.GeoCoderComponent + camel-git: + groupId: org.apache.camel + artifactId: camel-git + schemes: + - id: git + http: false + passive: false + javaTypes: + - org.apache.camel.component.git.GitComponent + camel-github: + groupId: org.apache.camel + artifactId: camel-github + schemes: + - id: github + http: false + passive: false + javaTypes: + - org.apache.camel.component.github.GitHubComponent + camel-google-bigquery: + groupId: org.apache.camel + artifactId: camel-google-bigquery + schemes: + - id: google-bigquery + http: false + passive: false + - id: google-bigquery-sql + http: false + passive: false + javaTypes: + - org.apache.camel.component.google.bigquery.GoogleBigQueryComponent + - org.apache.camel.component.google.bigquery.sql.GoogleBigQuerySQLComponent + camel-google-calendar: + groupId: org.apache.camel + artifactId: camel-google-calendar + schemes: + - id: google-calendar + http: false + passive: false + - id: google-calendar-stream + http: false + passive: false + javaTypes: + - org.apache.camel.component.google.calendar.GoogleCalendarComponent + - org.apache.camel.component.google.calendar.stream.GoogleCalendarStreamComponent + camel-google-drive: + groupId: org.apache.camel + artifactId: camel-google-drive + schemes: + - id: google-drive + http: false + passive: false + javaTypes: + - org.apache.camel.component.google.drive.GoogleDriveComponent + camel-google-mail: + groupId: org.apache.camel + artifactId: camel-google-mail + schemes: + - id: google-mail + http: false + passive: false + - id: google-mail-stream + http: false + passive: false + javaTypes: + - org.apache.camel.component.google.mail.GoogleMailComponent + - org.apache.camel.component.google.mail.stream.GoogleMailStreamComponent + camel-google-pubsub: + groupId: org.apache.camel + artifactId: camel-google-pubsub + schemes: + - id: google-pubsub + http: false + passive: false + javaTypes: + - org.apache.camel.component.google.pubsub.GooglePubsubComponent + camel-google-sheets: + groupId: org.apache.camel + artifactId: camel-google-sheets + schemes: + - id: google-sheets + http: false + passive: false + - id: google-sheets-stream + http: false + passive: false + javaTypes: + - org.apache.camel.component.google.sheets.GoogleSheetsComponent + - org.apache.camel.component.google.sheets.stream.GoogleSheetsStreamComponent + camel-gora: + groupId: org.apache.camel + artifactId: camel-gora + schemes: + - id: gora + http: false + passive: false + javaTypes: + - org.apache.camel.component.gora.GoraComponent + camel-grape: + groupId: org.apache.camel + artifactId: camel-grape + schemes: + - id: grape + http: false + passive: false + javaTypes: + - org.apache.camel.component.grape.GrapeComponent + camel-graphql: + groupId: org.apache.camel + artifactId: camel-graphql + schemes: + - id: graphql + http: false + passive: false + javaTypes: + - org.apache.camel.component.graphql.GraphqlComponent + camel-grok: + groupId: org.apache.camel + artifactId: camel-grok + dataformats: + - grok + javaTypes: + - org.apache.camel.component.grok.GrokDataFormat + camel-groovy: + groupId: org.apache.camel + artifactId: camel-groovy + languages: + - groovy + javaTypes: + - org.apache.camel.language.groovy.GroovyLanguage + camel-grpc: + groupId: org.apache.camel + artifactId: camel-grpc + schemes: + - id: grpc + http: true + passive: false + javaTypes: + - org.apache.camel.component.grpc.GrpcComponent + camel-gson: + groupId: org.apache.camel + artifactId: camel-gson + dataformats: + - json-gson + javaTypes: + - org.apache.camel.component.gson.GsonDataFormat + camel-guava-eventbus: + groupId: org.apache.camel + artifactId: camel-guava-eventbus + schemes: + - id: guava-eventbus + http: false + passive: false + javaTypes: + - org.apache.camel.component.guava.eventbus.GuavaEventBusComponent + camel-hazelcast: + groupId: org.apache.camel + artifactId: camel-hazelcast + schemes: + - id: hazelcast-atomicvalue + http: false + passive: false + - id: hazelcast-instance + http: false + passive: false + - id: hazelcast-list + http: false + passive: false + - id: hazelcast-map + http: false + passive: false + - id: hazelcast-multimap + http: false + passive: false + - id: hazelcast-queue + http: false + passive: false + - id: hazelcast-replicatedmap + http: false + passive: false + - id: hazelcast-ringbuffer + http: false + passive: false + - id: hazelcast-seda + http: false + passive: false + - id: hazelcast-set + http: false + passive: false + - id: hazelcast-topic + http: false + passive: false + javaTypes: + - org.apache.camel.component.hazelcast.atomicnumber.HazelcastAtomicnumberComponent + - org.apache.camel.component.hazelcast.instance.HazelcastInstanceComponent + - org.apache.camel.component.hazelcast.list.HazelcastListComponent + - org.apache.camel.component.hazelcast.map.HazelcastMapComponent + - org.apache.camel.component.hazelcast.multimap.HazelcastMultimapComponent + - org.apache.camel.component.hazelcast.queue.HazelcastQueueComponent + - org.apache.camel.component.hazelcast.replicatedmap.HazelcastReplicatedmapComponent + - org.apache.camel.component.hazelcast.ringbuffer.HazelcastRingbufferComponent + - org.apache.camel.component.hazelcast.seda.HazelcastSedaComponent + - org.apache.camel.component.hazelcast.set.HazelcastSetComponent + - org.apache.camel.component.hazelcast.topic.HazelcastTopicComponent + camel-hbase: + groupId: org.apache.camel + artifactId: camel-hbase + schemes: + - id: hbase + http: false + passive: false + javaTypes: + - org.apache.camel.component.hbase.HBaseComponent + camel-hdfs: + groupId: org.apache.camel + artifactId: camel-hdfs + schemes: + - id: hdfs + http: false + passive: false + javaTypes: + - org.apache.camel.component.hdfs.HdfsComponent + camel-hipchat: + groupId: org.apache.camel + artifactId: camel-hipchat + schemes: + - id: hipchat + http: false + passive: false + javaTypes: + - org.apache.camel.component.hipchat.HipchatComponent + camel-hl7: + groupId: org.apache.camel + artifactId: camel-hl7 + languages: + - hl7terser + dataformats: + - hl7 + javaTypes: + - org.apache.camel.component.hl7.Hl7TerserLanguage + - org.apache.camel.component.hl7.HL7DataFormat + camel-http: + groupId: org.apache.camel + artifactId: camel-http + schemes: + - id: http + http: false + passive: false + - id: https + http: false + passive: false + dependencies: + - groupId: org.apache.camel + artifactId: camel-file + javaTypes: + - org.apache.camel.component.http.HttpComponent + camel-ical: + groupId: org.apache.camel + artifactId: camel-ical + dataformats: + - ical + javaTypes: + - org.apache.camel.component.ical.ICalDataFormat + camel-iec60870: + groupId: org.apache.camel + artifactId: camel-iec60870 + schemes: + - id: iec60870-client + http: false + passive: false + - id: iec60870-server + http: false + passive: false + javaTypes: + - org.apache.camel.component.iec60870.client.ClientComponent + - org.apache.camel.component.iec60870.server.ServerComponent + camel-ignite: + groupId: org.apache.camel + artifactId: camel-ignite + schemes: + - id: ignite-cache + http: false + passive: false + - id: ignite-compute + http: false + passive: false + - id: ignite-events + http: false + passive: false + - id: ignite-idgen + http: false + passive: false + - id: ignite-messaging + http: false + passive: false + - id: ignite-queue + http: false + passive: false + - id: ignite-set + http: false + passive: false + javaTypes: + - org.apache.camel.component.ignite.cache.IgniteCacheComponent + - org.apache.camel.component.ignite.compute.IgniteComputeComponent + - org.apache.camel.component.ignite.events.IgniteEventsComponent + - org.apache.camel.component.ignite.idgen.IgniteIdGenComponent + - org.apache.camel.component.ignite.messaging.IgniteMessagingComponent + - org.apache.camel.component.ignite.queue.IgniteQueueComponent + - org.apache.camel.component.ignite.set.IgniteSetComponent + camel-infinispan: + groupId: org.apache.camel + artifactId: camel-infinispan + schemes: + - id: infinispan + http: false + passive: false + javaTypes: + - org.apache.camel.component.infinispan.InfinispanComponent + camel-influxdb: + groupId: org.apache.camel + artifactId: camel-influxdb + schemes: + - id: influxdb + http: false + passive: false + javaTypes: + - org.apache.camel.component.influxdb.InfluxDbComponent + camel-iota: + groupId: org.apache.camel + artifactId: camel-iota + schemes: + - id: iota + http: false + passive: false + javaTypes: + - org.apache.camel.component.iota.IOTAComponent + camel-ipfs: + groupId: org.apache.camel + artifactId: camel-ipfs + schemes: + - id: ipfs + http: false + passive: false + javaTypes: + - org.apache.camel.component.ipfs.IPFSComponent + camel-irc: + groupId: org.apache.camel + artifactId: camel-irc + schemes: + - id: irc + http: false + passive: false + javaTypes: + - org.apache.camel.component.irc.IrcComponent + camel-ironmq: + groupId: org.apache.camel + artifactId: camel-ironmq + schemes: + - id: ironmq + http: false + passive: false + javaTypes: + - org.apache.camel.component.ironmq.IronMQComponent + camel-jackson: + groupId: org.apache.camel + artifactId: camel-jackson + dataformats: + - json-jackson + javaTypes: + - org.apache.camel.component.jackson.JacksonDataFormat + camel-jacksonxml: + groupId: org.apache.camel + artifactId: camel-jacksonxml + dataformats: + - jacksonxml + javaTypes: + - org.apache.camel.component.jacksonxml.JacksonXMLDataFormat + camel-jaxb: + groupId: org.apache.camel + artifactId: camel-jaxb + dataformats: + - jaxb + javaTypes: + - org.apache.camel.converter.jaxb.JaxbDataFormat + camel-jaxp: + groupId: org.apache.camel + artifactId: camel-jaxp + languages: + - xtokenize + javaTypes: + - org.apache.camel.language.xtokenizer.XMLTokenizeLanguage + camel-jbpm: + groupId: org.apache.camel + artifactId: camel-jbpm + schemes: + - id: jbpm + http: false + passive: false + javaTypes: + - org.apache.camel.component.jbpm.JBPMComponent + camel-jcache: + groupId: org.apache.camel + artifactId: camel-jcache + schemes: + - id: jcache + http: false + passive: false + javaTypes: + - org.apache.camel.component.jcache.JCacheComponent + camel-jclouds: + groupId: org.apache.camel + artifactId: camel-jclouds + schemes: + - id: jclouds + http: false + passive: false + javaTypes: + - org.apache.camel.component.jclouds.JcloudsComponent + camel-jcr: + groupId: org.apache.camel + artifactId: camel-jcr + schemes: + - id: jcr + http: false + passive: false + javaTypes: + - org.apache.camel.component.jcr.JcrComponent + camel-jdbc: + groupId: org.apache.camel + artifactId: camel-jdbc + schemes: + - id: jdbc + http: false + passive: false + javaTypes: + - org.apache.camel.component.jdbc.JdbcComponent + camel-jetty: + groupId: org.apache.camel + artifactId: camel-jetty + schemes: + - id: jetty + http: true + passive: false + javaTypes: + - org.apache.camel.component.jetty9.JettyHttpComponent9 + camel-jgroups: + groupId: org.apache.camel + artifactId: camel-jgroups + schemes: + - id: jgroups + http: false + passive: false + javaTypes: + - org.apache.camel.component.jgroups.JGroupsComponent + camel-jgroups-raft: + groupId: org.apache.camel + artifactId: camel-jgroups-raft + schemes: + - id: jgroups-raft + http: false + passive: false + javaTypes: + - org.apache.camel.component.jgroups.raft.JGroupsRaftComponent + camel-jing: + groupId: org.apache.camel + artifactId: camel-jing + schemes: + - id: jing + http: false + passive: false + javaTypes: + - org.apache.camel.component.validator.jing.JingComponent + camel-jira: + groupId: org.apache.camel + artifactId: camel-jira + schemes: + - id: jira + http: false + passive: false + javaTypes: + - org.apache.camel.component.jira.JiraComponent + camel-jms: + groupId: org.apache.camel + artifactId: camel-jms + schemes: + - id: jms + http: false + passive: false + javaTypes: + - org.apache.camel.component.jms.JmsComponent + camel-jmx: + groupId: org.apache.camel + artifactId: camel-jmx + schemes: + - id: jmx + http: false + passive: false + javaTypes: + - org.apache.camel.component.jmx.JMXComponent + camel-johnzon: + groupId: org.apache.camel + artifactId: camel-johnzon + dataformats: + - json-johnzon + javaTypes: + - org.apache.camel.component.johnzon.JohnzonDataFormat + camel-jolt: + groupId: org.apache.camel + artifactId: camel-jolt + schemes: + - id: jolt + http: false + passive: false + javaTypes: + - org.apache.camel.component.jolt.JoltComponent + camel-jooq: + groupId: org.apache.camel + artifactId: camel-jooq + schemes: + - id: jooq + http: false + passive: false + javaTypes: + - org.apache.camel.component.jooq.JooqComponent + camel-jpa: + groupId: org.apache.camel + artifactId: camel-jpa + schemes: + - id: jpa + http: false + passive: false + javaTypes: + - org.apache.camel.component.jpa.JpaComponent + camel-jsch: + groupId: org.apache.camel + artifactId: camel-jsch + schemes: + - id: scp + http: false + passive: false + javaTypes: + - org.apache.camel.component.scp.ScpComponent + camel-json-validator: + groupId: org.apache.camel + artifactId: camel-json-validator + schemes: + - id: json-validator + http: false + passive: false + javaTypes: + - org.apache.camel.component.jsonvalidator.JsonValidatorComponent + camel-jsonapi: + groupId: org.apache.camel + artifactId: camel-jsonapi + dataformats: + - jsonApi + javaTypes: + - org.apache.camel.component.jsonapi.JsonApiDataFormat + camel-jsonpath: + groupId: org.apache.camel + artifactId: camel-jsonpath + languages: + - jsonpath + javaTypes: + - org.apache.camel.jsonpath.JsonPathLanguage + camel-jt400: + groupId: org.apache.camel + artifactId: camel-jt400 + schemes: + - id: jt400 + http: false + passive: false + javaTypes: + - org.apache.camel.component.jt400.Jt400Component + camel-k-loader-groovy: + groupId: org.apache.camel.k + artifactId: camel-k-loader-groovy + dependencies: + - groupId: org.apache.camel + artifactId: camel-endpointdsl + - groupId: org.apache.camel + artifactId: camel-groovy + camel-k-loader-java: + groupId: org.apache.camel.k + artifactId: camel-k-loader-java + dependencies: + - groupId: org.apache.camel + artifactId: camel-endpointdsl + camel-k-loader-js: + groupId: org.apache.camel.k + artifactId: camel-k-loader-js + dependencies: + - groupId: org.apache.camel + artifactId: camel-endpointdsl + camel-k-loader-knative: + groupId: org.apache.camel.k + artifactId: camel-k-loader-knative + camel-k-loader-kotlin: + groupId: org.apache.camel.k + artifactId: camel-k-loader-kotlin + dependencies: + - groupId: org.apache.camel + artifactId: camel-endpointdsl + camel-k-loader-xml: + groupId: org.apache.camel.k + artifactId: camel-k-loader-xml + camel-k-runtime-health: + groupId: org.apache.camel.k + artifactId: camel-k-runtime-health + dependencies: + - groupId: org.apache.camel + artifactId: camel-servlet + - groupId: org.apache.camel.k + artifactId: camel-k-runtime-servlet + camel-k-runtime-knative: + groupId: org.apache.camel.k + artifactId: camel-k-runtime-knative + dependencies: + - groupId: org.apache.camel + artifactId: camel-cloud + - groupId: org.apache.camel.k + artifactId: camel-k-loader-yaml + - groupId: org.apache.camel.k + artifactId: camel-k-loader-knative + - groupId: org.apache.camel.k + artifactId: camel-knative-api + - groupId: org.apache.camel.k + artifactId: camel-knative + - groupId: org.apache.camel.k + artifactId: camel-knative-http + camel-k-runtime-main: + groupId: org.apache.camel.k + artifactId: camel-k-runtime-main + dependencies: + - groupId: org.apache.camel + artifactId: camel-core-engine + - groupId: org.apache.camel + artifactId: camel-main + camel-k-runtime-servlet: + groupId: org.apache.camel.k + artifactId: camel-k-runtime-servlet + dependencies: + - groupId: org.apache.camel + artifactId: camel-servlet + camel-k-runtime-webhook: + groupId: org.apache.camel.k + artifactId: camel-k-runtime-webhook + dependencies: + - groupId: org.apache.camel + artifactId: camel-webhook + camel-kafka: + groupId: org.apache.camel + artifactId: camel-kafka + schemes: + - id: kafka + http: false + passive: false + javaTypes: + - org.apache.camel.component.kafka.KafkaComponent + camel-knative: + groupId: org.apache.camel.k + artifactId: camel-knative + schemes: + - id: knative + http: true + passive: false + dependencies: + - groupId: org.apache.camel + artifactId: camel-cloud + - groupId: org.apache.camel.k + artifactId: camel-knative-api + - groupId: org.apache.camel.k + artifactId: camel-knative-http + camel-kubernetes: + groupId: org.apache.camel + artifactId: camel-kubernetes + schemes: + - id: kubernetes-config-maps + http: false + passive: false + - id: kubernetes-deployments + http: false + passive: false + - id: kubernetes-hpa + http: false + passive: false + - id: kubernetes-job + http: false + passive: false + - id: kubernetes-namespaces + http: false + passive: false + - id: kubernetes-nodes + http: false + passive: false + - id: kubernetes-persistent-volumes + http: false + passive: false + - id: kubernetes-persistent-volumes-claims + http: false + passive: false + - id: kubernetes-pods + http: false + passive: false + - id: kubernetes-replication-controllers + http: false + passive: false + - id: kubernetes-resources-quota + http: false + passive: false + - id: kubernetes-secrets + http: false + passive: false + - id: kubernetes-service-accounts + http: false + passive: false + - id: kubernetes-services + http: false + passive: false + - id: openshift-build-configs + http: false + passive: false + - id: openshift-builds + http: false + passive: false + javaTypes: + - org.apache.camel.component.kubernetes.config_maps.KubernetesConfigMapsComponent + - org.apache.camel.component.kubernetes.deployments.KubernetesDeploymentsComponent + - org.apache.camel.component.kubernetes.hpa.KubernetesHPAComponent + - org.apache.camel.component.kubernetes.job.KubernetesJobComponent + - org.apache.camel.component.kubernetes.namespaces.KubernetesNamespacesComponent + - org.apache.camel.component.kubernetes.nodes.KubernetesNodesComponent + - org.apache.camel.component.kubernetes.persistent_volumes.KubernetesPersistentVolumesComponent + - org.apache.camel.component.kubernetes.persistent_volumes_claims.KubernetesPersistentVolumesClaimsComponent + - org.apache.camel.component.kubernetes.pods.KubernetesPodsComponent + - org.apache.camel.component.kubernetes.replication_controllers.KubernetesReplicationControllersComponent + - org.apache.camel.component.kubernetes.resources_quota.KubernetesResourcesQuotaComponent + - org.apache.camel.component.kubernetes.secrets.KubernetesSecretsComponent + - org.apache.camel.component.kubernetes.service_accounts.KubernetesServiceAccountsComponent + - org.apache.camel.component.kubernetes.services.KubernetesServicesComponent + - org.apache.camel.component.openshift.build_configs.OpenshiftBuildConfigsComponent + - org.apache.camel.component.openshift.builds.OpenshiftBuildsComponent + camel-kudu: + groupId: org.apache.camel + artifactId: camel-kudu + schemes: + - id: kudu + http: false + passive: false + javaTypes: + - org.apache.camel.component.kudu.KuduComponent + camel-language: + groupId: org.apache.camel + artifactId: camel-language + schemes: + - id: language + http: false + passive: true + javaTypes: + - org.apache.camel.component.language.LanguageComponent + camel-ldap: + groupId: org.apache.camel + artifactId: camel-ldap + schemes: + - id: ldap + http: false + passive: false + javaTypes: + - org.apache.camel.component.ldap.LdapComponent + camel-ldif: + groupId: org.apache.camel + artifactId: camel-ldif + schemes: + - id: ldif + http: false + passive: false + javaTypes: + - org.apache.camel.component.ldif.LdifComponent + camel-log: + groupId: org.apache.camel + artifactId: camel-log + schemes: + - id: log + http: false + passive: true + javaTypes: + - org.apache.camel.component.log.LogComponent + camel-lucene: + groupId: org.apache.camel + artifactId: camel-lucene + schemes: + - id: lucene + http: false + passive: false + javaTypes: + - org.apache.camel.component.lucene.LuceneComponent + camel-lumberjack: + groupId: org.apache.camel + artifactId: camel-lumberjack + schemes: + - id: lumberjack + http: false + passive: false + javaTypes: + - org.apache.camel.component.lumberjack.LumberjackComponent + camel-lzf: + groupId: org.apache.camel + artifactId: camel-lzf + dataformats: + - lzf + javaTypes: + - org.apache.camel.dataformat.lzf.LZFDataFormat + camel-mail: + groupId: org.apache.camel + artifactId: camel-mail + schemes: + - id: imap + http: false + passive: false + - id: imaps + http: false + passive: false + - id: pop3 + http: false + passive: false + - id: pop3s + http: false + passive: false + - id: smtp + http: false + passive: false + - id: smtps + http: false + passive: false + dataformats: + - mime-multipart + javaTypes: + - org.apache.camel.component.mail.MailComponent + - org.apache.camel.dataformat.mime.multipart.MimeMultipartDataFormat + camel-master: + groupId: org.apache.camel + artifactId: camel-master + schemes: + - id: master + http: false + passive: false + javaTypes: + - org.apache.camel.component.master.MasterComponent + camel-metrics: + groupId: org.apache.camel + artifactId: camel-metrics + schemes: + - id: metrics + http: false + passive: false + javaTypes: + - org.apache.camel.component.metrics.MetricsComponent + camel-micrometer: + groupId: org.apache.camel + artifactId: camel-micrometer + schemes: + - id: micrometer + http: false + passive: false + javaTypes: + - org.apache.camel.component.micrometer.MicrometerComponent + camel-microprofile-metrics: + groupId: org.apache.camel + artifactId: camel-microprofile-metrics + schemes: + - id: microprofile-metrics + http: false + passive: false + javaTypes: + - org.apache.camel.component.microprofile.metrics.MicroProfileMetricsComponent + camel-milo: + groupId: org.apache.camel + artifactId: camel-milo + schemes: + - id: milo-client + http: false + passive: false + - id: milo-server + http: false + passive: false + javaTypes: + - org.apache.camel.component.milo.client.MiloClientComponent + - org.apache.camel.component.milo.server.MiloServerComponent + camel-mina: + groupId: org.apache.camel + artifactId: camel-mina + schemes: + - id: mina + http: false + passive: false + javaTypes: + - org.apache.camel.component.mina.MinaComponent + camel-mllp: + groupId: org.apache.camel + artifactId: camel-mllp + schemes: + - id: mllp + http: false + passive: false + javaTypes: + - org.apache.camel.component.mllp.MllpComponent + camel-mock: + groupId: org.apache.camel + artifactId: camel-mock + schemes: + - id: mock + http: false + passive: true + javaTypes: + - org.apache.camel.component.mock.MockComponent + camel-mongodb: + groupId: org.apache.camel + artifactId: camel-mongodb + schemes: + - id: mongodb + http: false + passive: false + javaTypes: + - org.apache.camel.component.mongodb.MongoDbComponent + camel-mongodb-gridfs: + groupId: org.apache.camel + artifactId: camel-mongodb-gridfs + schemes: + - id: mongodb-gridfs + http: false + passive: false + javaTypes: + - org.apache.camel.component.mongodb.gridfs.GridFsComponent + camel-msv: + groupId: org.apache.camel + artifactId: camel-msv + schemes: + - id: msv + http: false + passive: false + javaTypes: + - org.apache.camel.component.validator.msv.MsvComponent + camel-mustache: + groupId: org.apache.camel + artifactId: camel-mustache + schemes: + - id: mustache + http: false + passive: false + javaTypes: + - org.apache.camel.component.mustache.MustacheComponent + camel-mvel: + groupId: org.apache.camel + artifactId: camel-mvel + schemes: + - id: mvel + http: false + passive: false + languages: + - mvel + javaTypes: + - org.apache.camel.component.mvel.MvelComponent + - org.apache.camel.language.mvel.MvelLanguage + camel-mybatis: + groupId: org.apache.camel + artifactId: camel-mybatis + schemes: + - id: mybatis + http: false + passive: false + - id: mybatis-bean + http: false + passive: false + javaTypes: + - org.apache.camel.component.mybatis.MyBatisComponent + - org.apache.camel.component.mybatis.MyBatisBeanComponent + camel-nagios: + groupId: org.apache.camel + artifactId: camel-nagios + schemes: + - id: nagios + http: false + passive: false + javaTypes: + - org.apache.camel.component.nagios.NagiosComponent + camel-nats: + groupId: org.apache.camel + artifactId: camel-nats + schemes: + - id: nats + http: false + passive: false + javaTypes: + - org.apache.camel.component.nats.NatsComponent + camel-netty: + groupId: org.apache.camel + artifactId: camel-netty + schemes: + - id: netty + http: false + passive: false + javaTypes: + - org.apache.camel.component.netty.NettyComponent + camel-netty-http: + groupId: org.apache.camel + artifactId: camel-netty-http + schemes: + - id: netty-http + http: true + passive: false + javaTypes: + - org.apache.camel.component.netty.http.NettyHttpComponent + camel-nitrite: + groupId: org.apache.camel + artifactId: camel-nitrite + schemes: + - id: nitrite + http: false + passive: false + javaTypes: + - org.apache.camel.component.nitrite.NitriteComponent + camel-nsq: + groupId: org.apache.camel + artifactId: camel-nsq + schemes: + - id: nsq + http: false + passive: false + javaTypes: + - org.apache.camel.component.nsq.NsqComponent + camel-ognl: + groupId: org.apache.camel + artifactId: camel-ognl + languages: + - ognl + javaTypes: + - org.apache.camel.language.ognl.OgnlLanguage + camel-olingo2: + groupId: org.apache.camel + artifactId: camel-olingo2 + schemes: + - id: olingo2 + http: false + passive: false + javaTypes: + - org.apache.camel.component.olingo2.Olingo2Component + camel-olingo4: + groupId: org.apache.camel + artifactId: camel-olingo4 + schemes: + - id: olingo4 + http: false + passive: false + javaTypes: + - org.apache.camel.component.olingo4.Olingo4Component + camel-openstack: + groupId: org.apache.camel + artifactId: camel-openstack + schemes: + - id: openstack-cinder + http: false + passive: false + - id: openstack-glance + http: false + passive: false + - id: openstack-keystone + http: false + passive: false + - id: openstack-neutron + http: false + passive: false + - id: openstack-nova + http: false + passive: false + - id: openstack-swift + http: false + passive: false + javaTypes: + - org.apache.camel.component.openstack.cinder.CinderComponent + - org.apache.camel.component.openstack.glance.GlanceComponent + - org.apache.camel.component.openstack.keystone.KeystoneComponent + - org.apache.camel.component.openstack.neutron.NeutronComponent + - org.apache.camel.component.openstack.nova.NovaComponent + - org.apache.camel.component.openstack.swift.SwiftComponent + camel-optaplanner: + groupId: org.apache.camel + artifactId: camel-optaplanner + schemes: + - id: optaplanner + http: false + passive: false + javaTypes: + - org.apache.camel.component.optaplanner.OptaPlannerComponent + camel-paho: + groupId: org.apache.camel + artifactId: camel-paho + schemes: + - id: paho + http: false + passive: false + javaTypes: + - org.apache.camel.component.paho.PahoComponent + camel-paxlogging: + groupId: org.apache.camel + artifactId: camel-paxlogging + schemes: + - id: paxlogging + http: false + passive: false + javaTypes: + - org.apache.camel.component.paxlogging.PaxLoggingComponent + camel-pdf: + groupId: org.apache.camel + artifactId: camel-pdf + schemes: + - id: pdf + http: false + passive: false + javaTypes: + - org.apache.camel.component.pdf.PdfComponent + camel-pg-replication-slot: + groupId: org.apache.camel + artifactId: camel-pg-replication-slot + schemes: + - id: pg-replication-slot + http: false + passive: false + javaTypes: + - org.apache.camel.component.pg.replication.slot.PgReplicationSlotComponent + camel-pgevent: + groupId: org.apache.camel + artifactId: camel-pgevent + schemes: + - id: pgevent + http: false + passive: false + javaTypes: + - org.apache.camel.component.pgevent.PgEventComponent + camel-platform-http: + groupId: org.apache.camel + artifactId: camel-platform-http + schemes: + - id: platform-http + http: false + passive: false + javaTypes: + - org.apache.camel.component.platform.http.PlatformHttpComponent + camel-printer: + groupId: org.apache.camel + artifactId: camel-printer + schemes: + - id: lpr + http: false + passive: false + javaTypes: + - org.apache.camel.component.printer.PrinterComponent + camel-protobuf: + groupId: org.apache.camel + artifactId: camel-protobuf + dataformats: + - protobuf + javaTypes: + - org.apache.camel.dataformat.protobuf.ProtobufDataFormat + camel-pubnub: + groupId: org.apache.camel + artifactId: camel-pubnub + schemes: + - id: pubnub + http: false + passive: false + javaTypes: + - org.apache.camel.component.pubnub.PubNubComponent + camel-pulsar: + groupId: org.apache.camel + artifactId: camel-pulsar + schemes: + - id: pulsar + http: false + passive: false + javaTypes: + - org.apache.camel.component.pulsar.PulsarComponent + camel-quartz: + groupId: org.apache.camel + artifactId: camel-quartz + schemes: + - id: quartz + http: false + passive: false + javaTypes: + - org.apache.camel.component.quartz.QuartzComponent + camel-quickfix: + groupId: org.apache.camel + artifactId: camel-quickfix + schemes: + - id: quickfix + http: false + passive: false + javaTypes: + - org.apache.camel.component.quickfixj.QuickfixjComponent + camel-rabbitmq: + groupId: org.apache.camel + artifactId: camel-rabbitmq + schemes: + - id: rabbitmq + http: false + passive: false + javaTypes: + - org.apache.camel.component.rabbitmq.RabbitMQComponent + camel-reactive-streams: + groupId: org.apache.camel + artifactId: camel-reactive-streams + schemes: + - id: reactive-streams + http: false + passive: false + javaTypes: + - org.apache.camel.component.reactive.streams.ReactiveStreamsComponent + camel-ref: + groupId: org.apache.camel + artifactId: camel-ref + schemes: + - id: ref + http: false + passive: true + javaTypes: + - org.apache.camel.component.ref.RefComponent + camel-rest: + groupId: org.apache.camel + artifactId: camel-rest + schemes: + - id: rest + http: true + passive: false + - id: rest-api + http: false + passive: false + javaTypes: + - org.apache.camel.component.rest.RestComponent + - org.apache.camel.component.rest.RestApiComponent + camel-rest-swagger: + groupId: org.apache.camel + artifactId: camel-rest-swagger + schemes: + - id: rest-swagger + http: false + passive: false + javaTypes: + - org.apache.camel.component.rest.swagger.RestSwaggerComponent + camel-robotframework: + groupId: org.apache.camel + artifactId: camel-robotframework + schemes: + - id: robotframework + http: false + passive: false + javaTypes: + - org.apache.camel.component.robotframework.RobotFrameworkComponent + camel-rss: + groupId: org.apache.camel + artifactId: camel-rss + schemes: + - id: rss + http: false + passive: false + dataformats: + - rss + javaTypes: + - org.apache.camel.component.rss.RssComponent + - org.apache.camel.dataformat.rss.RssDataFormat + camel-saga: + groupId: org.apache.camel + artifactId: camel-saga + schemes: + - id: saga + http: false + passive: false + javaTypes: + - org.apache.camel.component.saga.SagaComponent + camel-salesforce: + groupId: org.apache.camel + artifactId: camel-salesforce + schemes: + - id: salesforce + http: false + passive: false + javaTypes: + - org.apache.camel.component.salesforce.SalesforceComponent + camel-sap-netweaver: + groupId: org.apache.camel + artifactId: camel-sap-netweaver + schemes: + - id: sap-netweaver + http: false + passive: false + javaTypes: + - org.apache.camel.component.sap.netweaver.NetWeaverComponent + camel-saxon: + groupId: org.apache.camel + artifactId: camel-saxon + schemes: + - id: xquery + http: false + passive: false + languages: + - xquery + javaTypes: + - org.apache.camel.component.xquery.XQueryComponent + - org.apache.camel.language.xquery.XQueryLanguage + camel-scheduler: + groupId: org.apache.camel + artifactId: camel-scheduler + schemes: + - id: scheduler + http: false + passive: false + javaTypes: + - org.apache.camel.component.scheduler.SchedulerComponent + camel-schematron: + groupId: org.apache.camel + artifactId: camel-schematron + schemes: + - id: schematron + http: false + passive: false + javaTypes: + - org.apache.camel.component.schematron.SchematronComponent + camel-seda: + groupId: org.apache.camel + artifactId: camel-seda + schemes: + - id: seda + http: false + passive: true + javaTypes: + - org.apache.camel.component.seda.SedaComponent + camel-service: + groupId: org.apache.camel + artifactId: camel-service + schemes: + - id: service + http: false + passive: false + javaTypes: + - org.apache.camel.component.service.ServiceComponent + camel-servicenow: + groupId: org.apache.camel + artifactId: camel-servicenow + schemes: + - id: servicenow + http: false + passive: false + javaTypes: + - org.apache.camel.component.servicenow.ServiceNowComponent + camel-servlet: + groupId: org.apache.camel + artifactId: camel-servlet + schemes: + - id: servlet + http: true + passive: false + javaTypes: + - org.apache.camel.component.servlet.ServletComponent + camel-sip: + groupId: org.apache.camel + artifactId: camel-sip + schemes: + - id: sip + http: false + passive: false + - id: sips + http: false + passive: false + javaTypes: + - org.apache.camel.component.sip.SipComponent + camel-sjms: + groupId: org.apache.camel + artifactId: camel-sjms + schemes: + - id: sjms + http: false + passive: false + - id: sjms-batch + http: false + passive: false + javaTypes: + - org.apache.camel.component.sjms.SjmsComponent + - org.apache.camel.component.sjms.batch.SjmsBatchComponent + camel-sjms2: + groupId: org.apache.camel + artifactId: camel-sjms2 + schemes: + - id: sjms2 + http: false + passive: false + javaTypes: + - org.apache.camel.component.sjms2.Sjms2Component + camel-slack: + groupId: org.apache.camel + artifactId: camel-slack + schemes: + - id: slack + http: false + passive: false + javaTypes: + - org.apache.camel.component.slack.SlackComponent + camel-smpp: + groupId: org.apache.camel + artifactId: camel-smpp + schemes: + - id: smpp + http: false + passive: false + - id: smpps + http: false + passive: false + javaTypes: + - org.apache.camel.component.smpp.SmppComponent + camel-snakeyaml: + groupId: org.apache.camel + artifactId: camel-snakeyaml + dataformats: + - yaml-snakeyaml + javaTypes: + - org.apache.camel.component.snakeyaml.SnakeYAMLDataFormat + camel-snmp: + groupId: org.apache.camel + artifactId: camel-snmp + schemes: + - id: snmp + http: false + passive: false + javaTypes: + - org.apache.camel.component.snmp.SnmpComponent + camel-soap: + groupId: org.apache.camel + artifactId: camel-soap + dataformats: + - soapjaxb + javaTypes: + - org.apache.camel.dataformat.soap.SoapJaxbDataFormat + camel-solr: + groupId: org.apache.camel + artifactId: camel-solr + schemes: + - id: solr + http: false + passive: false + - id: solrs + http: false + passive: false + - id: solrCloud + http: false + passive: false + javaTypes: + - org.apache.camel.component.solr.SolrComponent + camel-soroush: + groupId: org.apache.camel + artifactId: camel-soroush + schemes: + - id: soroush + http: false + passive: false + javaTypes: + - org.apache.camel.component.soroushbot.component.SoroushBotComponent + camel-spark: + groupId: org.apache.camel + artifactId: camel-spark + schemes: + - id: spark + http: false + passive: false + javaTypes: + - org.apache.camel.component.spark.SparkComponent + camel-spark-rest: + groupId: org.apache.camel + artifactId: camel-spark-rest + schemes: + - id: spark-rest + http: true + passive: false + javaTypes: + - org.apache.camel.component.sparkrest.SparkComponent + camel-splunk: + groupId: org.apache.camel + artifactId: camel-splunk + schemes: + - id: splunk + http: false + passive: false + javaTypes: + - org.apache.camel.component.splunk.SplunkComponent + camel-spring: + groupId: org.apache.camel + artifactId: camel-spring + schemes: + - id: spring-event + http: false + passive: false + languages: + - spel + javaTypes: + - org.apache.camel.component.event.EventComponent + - org.apache.camel.language.spel.SpelLanguage + camel-spring-batch: + groupId: org.apache.camel + artifactId: camel-spring-batch + schemes: + - id: spring-batch + http: false + passive: false + javaTypes: + - org.apache.camel.component.spring.batch.SpringBatchComponent + camel-spring-integration: + groupId: org.apache.camel + artifactId: camel-spring-integration + schemes: + - id: spring-integration + http: false + passive: false + javaTypes: + - org.apache.camel.component.spring.integration.SpringIntegrationComponent + camel-spring-ldap: + groupId: org.apache.camel + artifactId: camel-spring-ldap + schemes: + - id: spring-ldap + http: false + passive: false + javaTypes: + - org.apache.camel.component.springldap.SpringLdapComponent + camel-spring-redis: + groupId: org.apache.camel + artifactId: camel-spring-redis + schemes: + - id: spring-redis + http: false + passive: false + javaTypes: + - org.apache.camel.component.redis.RedisComponent + camel-spring-ws: + groupId: org.apache.camel + artifactId: camel-spring-ws + schemes: + - id: spring-ws + http: true + passive: false + javaTypes: + - org.apache.camel.component.spring.ws.SpringWebserviceComponent + camel-sql: + groupId: org.apache.camel + artifactId: camel-sql + schemes: + - id: sql + http: false + passive: false + - id: sql-stored + http: false + passive: false + javaTypes: + - org.apache.camel.component.sql.SqlComponent + - org.apache.camel.component.sql.stored.SqlStoredComponent + camel-ssh: + groupId: org.apache.camel + artifactId: camel-ssh + schemes: + - id: ssh + http: false + passive: false + javaTypes: + - org.apache.camel.component.ssh.SshComponent + camel-stax: + groupId: org.apache.camel + artifactId: camel-stax + schemes: + - id: stax + http: false + passive: false + javaTypes: + - org.apache.camel.component.stax.StAXComponent + camel-stomp: + groupId: org.apache.camel + artifactId: camel-stomp + schemes: + - id: stomp + http: false + passive: false + javaTypes: + - org.apache.camel.component.stomp.StompComponent + camel-stream: + groupId: org.apache.camel + artifactId: camel-stream + schemes: + - id: stream + http: false + passive: false + javaTypes: + - org.apache.camel.component.stream.StreamComponent + camel-stringtemplate: + groupId: org.apache.camel + artifactId: camel-stringtemplate + schemes: + - id: string-template + http: false + passive: false + javaTypes: + - org.apache.camel.component.stringtemplate.StringTemplateComponent + camel-stub: + groupId: org.apache.camel + artifactId: camel-stub + schemes: + - id: stub + http: false + passive: true + javaTypes: + - org.apache.camel.component.stub.StubComponent + camel-syslog: + groupId: org.apache.camel + artifactId: camel-syslog + dataformats: + - syslog + javaTypes: + - org.apache.camel.component.syslog.SyslogDataFormat + camel-tagsoup: + groupId: org.apache.camel + artifactId: camel-tagsoup + dataformats: + - tidyMarkup + javaTypes: + - org.apache.camel.dataformat.tagsoup.TidyMarkupDataFormat + camel-tarfile: + groupId: org.apache.camel + artifactId: camel-tarfile + dataformats: + - tarfile + javaTypes: + - org.apache.camel.dataformat.tarfile.TarFileDataFormat + camel-telegram: + groupId: org.apache.camel + artifactId: camel-telegram + schemes: + - id: telegram + http: false + passive: false + javaTypes: + - org.apache.camel.component.telegram.TelegramComponent + camel-thrift: + groupId: org.apache.camel + artifactId: camel-thrift + schemes: + - id: thrift + http: false + passive: false + dataformats: + - thrift + javaTypes: + - org.apache.camel.component.thrift.ThriftComponent + - org.apache.camel.dataformat.thrift.ThriftDataFormat + camel-tika: + groupId: org.apache.camel + artifactId: camel-tika + schemes: + - id: tika + http: false + passive: false + javaTypes: + - org.apache.camel.component.tika.TikaComponent + camel-timer: + groupId: org.apache.camel + artifactId: camel-timer + schemes: + - id: timer + http: false + passive: false + javaTypes: + - org.apache.camel.component.timer.TimerComponent + camel-twilio: + groupId: org.apache.camel + artifactId: camel-twilio + schemes: + - id: twilio + http: false + passive: false + javaTypes: + - org.apache.camel.component.twilio.TwilioComponent + camel-twitter: + groupId: org.apache.camel + artifactId: camel-twitter + schemes: + - id: twitter-directmessage + http: false + passive: false + - id: twitter-search + http: false + passive: false + - id: twitter-timeline + http: false + passive: false + javaTypes: + - org.apache.camel.component.twitter.directmessage.TwitterDirectMessageComponent + - org.apache.camel.component.twitter.search.TwitterSearchComponent + - org.apache.camel.component.twitter.timeline.TwitterTimelineComponent + camel-undertow: + groupId: org.apache.camel + artifactId: camel-undertow + schemes: + - id: undertow + http: true + passive: false + javaTypes: + - org.apache.camel.component.undertow.UndertowComponent + camel-univocity-parsers: + groupId: org.apache.camel + artifactId: camel-univocity-parsers + dataformats: + - univocity-csv + - univocity-fixed + - univocity-tsv + javaTypes: + - org.apache.camel.dataformat.univocity.UniVocityCsvDataFormat + - org.apache.camel.dataformat.univocity.UniVocityFixedWidthDataFormat + - org.apache.camel.dataformat.univocity.UniVocityTsvDataFormat + camel-validator: + groupId: org.apache.camel + artifactId: camel-validator + schemes: + - id: validator + http: false + passive: true + javaTypes: + - org.apache.camel.component.validator.ValidatorComponent + camel-velocity: + groupId: org.apache.camel + artifactId: camel-velocity + schemes: + - id: velocity + http: false + passive: false + javaTypes: + - org.apache.camel.component.velocity.VelocityComponent + camel-vertx: + groupId: org.apache.camel + artifactId: camel-vertx + schemes: + - id: vertx + http: false + passive: false + javaTypes: + - org.apache.camel.component.vertx.VertxComponent + camel-vm: + groupId: org.apache.camel + artifactId: camel-vm + schemes: + - id: vm + http: false + passive: true + javaTypes: + - org.apache.camel.component.vm.VmComponent + camel-weather: + groupId: org.apache.camel + artifactId: camel-weather + schemes: + - id: weather + http: false + passive: false + javaTypes: + - org.apache.camel.component.weather.WeatherComponent + camel-web3j: + groupId: org.apache.camel + artifactId: camel-web3j + schemes: + - id: web3j + http: false + passive: false + javaTypes: + - org.apache.camel.component.web3j.Web3jComponent + camel-webhook: + groupId: org.apache.camel + artifactId: camel-webhook + schemes: + - id: webhook + http: true + passive: false + javaTypes: + - org.apache.camel.component.webhook.WebhookComponent + camel-websocket: + groupId: org.apache.camel + artifactId: camel-websocket + schemes: + - id: websocket + http: true + passive: false + javaTypes: + - org.apache.camel.component.websocket.WebsocketComponent + camel-websocket-jsr356: + groupId: org.apache.camel + artifactId: camel-websocket-jsr356 + schemes: + - id: websocket-jsr356 + http: false + passive: false + javaTypes: + - org.apache.camel.websocket.jsr356.JSR356WebSocketComponent + camel-wordpress: + groupId: org.apache.camel + artifactId: camel-wordpress + schemes: + - id: wordpress + http: false + passive: false + javaTypes: + - org.apache.camel.component.wordpress.WordpressComponent + camel-xchange: + groupId: org.apache.camel + artifactId: camel-xchange + schemes: + - id: xchange + http: false + passive: false + javaTypes: + - org.apache.camel.component.xchange.XChangeComponent + camel-xj: + groupId: org.apache.camel + artifactId: camel-xj + schemes: + - id: xj + http: false + passive: false + javaTypes: + - org.apache.camel.component.xj.XJComponent + camel-xmlsecurity: + groupId: org.apache.camel + artifactId: camel-xmlsecurity + schemes: + - id: xmlsecurity + http: false + passive: false + dataformats: + - secureXML + javaTypes: + - org.apache.camel.component.xmlsecurity.XmlSignatureComponent + - org.apache.camel.dataformat.xmlsecurity.XMLSecurityDataFormat + camel-xmpp: + groupId: org.apache.camel + artifactId: camel-xmpp + schemes: + - id: xmpp + http: false + passive: false + javaTypes: + - org.apache.camel.component.xmpp.XmppComponent + camel-xpath: + groupId: org.apache.camel + artifactId: camel-xpath + languages: + - xpath + javaTypes: + - org.apache.camel.language.xpath.XPathLanguage + camel-xslt: + groupId: org.apache.camel + artifactId: camel-xslt + schemes: + - id: xslt + http: false + passive: false + javaTypes: + - org.apache.camel.component.xslt.XsltComponent + camel-xslt-saxon: + groupId: org.apache.camel + artifactId: camel-xslt-saxon + schemes: + - id: xslt-saxon + http: false + passive: false + javaTypes: + - org.apache.camel.component.xslt.saxon.XsltSaxonComponent + camel-xstream: + groupId: org.apache.camel + artifactId: camel-xstream + dataformats: + - json-xstream + - xstream + javaTypes: + - org.apache.camel.dataformat.xstream.JsonDataFormat + - org.apache.camel.dataformat.xstream.XStreamDataFormat + camel-yammer: + groupId: org.apache.camel + artifactId: camel-yammer + schemes: + - id: yammer + http: false + passive: false + javaTypes: + - org.apache.camel.component.yammer.YammerComponent + camel-zendesk: + groupId: org.apache.camel + artifactId: camel-zendesk + schemes: + - id: zendesk + http: false + passive: false + javaTypes: + - org.apache.camel.component.zendesk.ZendeskComponent + camel-zip-deflater: + groupId: org.apache.camel + artifactId: camel-zip-deflater + dataformats: + - gzipdeflater + - zipdeflater + javaTypes: + - org.apache.camel.dataformat.deflater.GzipDeflaterDataFormat + - org.apache.camel.dataformat.deflater.ZipDeflaterDataFormat + camel-zipfile: + groupId: org.apache.camel + artifactId: camel-zipfile + dataformats: + - zipfile + javaTypes: + - org.apache.camel.dataformat.zipfile.ZipFileDataFormat + camel-zookeeper: + groupId: org.apache.camel + artifactId: camel-zookeeper + schemes: + - id: zookeeper + http: false + passive: false + javaTypes: + - org.apache.camel.component.zookeeper.ZooKeeperComponent + camel-zookeeper-master: + groupId: org.apache.camel + artifactId: camel-zookeeper-master + schemes: + - id: zookeeper-master + http: false + passive: false + javaTypes: + - org.apache.camel.component.zookeepermaster.MasterComponent + +` + Resources["camel-catalog-quarkus-1.0.0-M1-1.0.10.yaml"] = + ` +# --------------------------------------------------------------------------- +# 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: camel.apache.org/v1 +kind: CamelCatalog +metadata: + name: camel-catalog-quarkus-1.0.0-m1-1.0.10 + labels: + app: camel-k + camel.apache.org/catalog.version: 3.0.0 + camel.apache.org/catalog.loader.version: 3.0.0 + camel.apache.org/runtime.version: 1.0.10 + camel.apache.org/runtime.provider: quarkus +spec: + version: 3.0.0 + runtimeVersion: 1.0.10 + runtimeProvider: + quarkus: + camelQuarkusVersion: 1.0.0-M1 + quarkusVersion: 1.0.1.Final + artifacts: + camel-k-loader-groovy: + groupId: org.apache.camel.k + artifactId: camel-k-loader-groovy + dependencies: + - groupId: org.apache.camel + artifactId: camel-endpointdsl + - groupId: org.apache.camel + artifactId: camel-groovy + camel-k-loader-java: + groupId: org.apache.camel.k + artifactId: camel-k-loader-java + dependencies: + - groupId: org.apache.camel + artifactId: camel-endpointdsl + camel-k-loader-js: + groupId: org.apache.camel.k + artifactId: camel-k-loader-js + dependencies: + - groupId: org.apache.camel + artifactId: camel-endpointdsl + camel-k-loader-knative: + groupId: org.apache.camel.k + artifactId: camel-k-loader-knative + camel-k-loader-kotlin: + groupId: org.apache.camel.k + artifactId: camel-k-loader-kotlin + dependencies: + - groupId: org.apache.camel + artifactId: camel-endpointdsl + camel-k-loader-xml: + groupId: org.apache.camel.k + artifactId: camel-k-loader-xml + camel-k-runtime-health: + groupId: org.apache.camel.k + artifactId: camel-k-runtime-health + dependencies: + - groupId: org.apache.camel + artifactId: camel-servlet + - groupId: org.apache.camel.k + artifactId: camel-k-runtime-servlet + camel-k-runtime-knative: + groupId: org.apache.camel.k + artifactId: camel-k-runtime-knative + dependencies: + - groupId: org.apache.camel + artifactId: camel-cloud + - groupId: org.apache.camel.k + artifactId: camel-k-loader-yaml + - groupId: org.apache.camel.k + artifactId: camel-k-loader-knative + - groupId: org.apache.camel.k + artifactId: camel-knative-api + - groupId: org.apache.camel.k + artifactId: camel-knative + - groupId: org.apache.camel.k + artifactId: camel-knative-http + camel-k-runtime-main: + groupId: org.apache.camel.k + artifactId: camel-k-runtime-main + dependencies: + - groupId: org.apache.camel + artifactId: camel-core-engine + - groupId: org.apache.camel + artifactId: camel-main + camel-k-runtime-servlet: + groupId: org.apache.camel.k + artifactId: camel-k-runtime-servlet + dependencies: + - groupId: org.apache.camel + artifactId: camel-servlet + camel-k-runtime-webhook: + groupId: org.apache.camel.k + artifactId: camel-k-runtime-webhook + dependencies: + - groupId: org.apache.camel + artifactId: camel-webhook + camel-knative: + groupId: org.apache.camel.k + artifactId: camel-knative + schemes: + - id: knative + http: true + passive: false + dependencies: + - groupId: org.apache.camel + artifactId: camel-cloud + - groupId: org.apache.camel.k + artifactId: camel-knative-api + - groupId: org.apache.camel.k + artifactId: camel-knative-http + camel-quarkus-aws-ecs: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-aws-ecs + schemes: + - id: aws-ecs + http: false + passive: false + javaTypes: + - org.apache.camel.component.aws.ecs.ECSComponent + camel-quarkus-aws-eks: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-aws-eks + schemes: + - id: aws-eks + http: false + passive: false + javaTypes: + - org.apache.camel.component.aws.eks.EKSComponent + camel-quarkus-aws-kms: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-aws-kms + schemes: + - id: aws-kms + http: false + passive: false + javaTypes: + - org.apache.camel.component.aws.kms.KMSComponent + camel-quarkus-aws-s3: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-aws-s3 + schemes: + - id: aws-s3 + http: false + passive: false + javaTypes: + - org.apache.camel.component.aws.s3.S3Component + camel-quarkus-aws-sns: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-aws-sns + schemes: + - id: aws-sns + http: false + passive: false + javaTypes: + - org.apache.camel.component.aws.sns.SnsComponent + camel-quarkus-aws-sqs: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-aws-sqs + schemes: + - id: aws-sqs + http: false + passive: false + javaTypes: + - org.apache.camel.component.aws.sqs.SqsComponent + camel-quarkus-base64: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-base64 + dataformats: + - base64 + javaTypes: + - org.apache.camel.dataformat.base64.Base64DataFormat + camel-quarkus-bean: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-bean + schemes: + - id: bean + http: false + passive: true + - id: class + http: false + passive: true + languages: + - bean + javaTypes: + - org.apache.camel.component.bean.BeanComponent + - org.apache.camel.component.beanclass.ClassComponent + - org.apache.camel.language.bean.BeanLanguage + camel-quarkus-bean-validator: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-bean-validator + schemes: + - id: bean-validator + http: false + passive: false + javaTypes: + - org.apache.camel.component.bean.validator.BeanValidatorComponent + camel-quarkus-controlbus: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-controlbus + schemes: + - id: controlbus + http: false + passive: true + javaTypes: + - org.apache.camel.component.controlbus.ControlBusComponent + camel-quarkus-core: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-core + languages: + - constant + - exchangeProperty + - file + - header + - ref + - simple + - tokenize + javaTypes: + - org.apache.camel.language.constant.ConstantLanguage + - org.apache.camel.language.property.ExchangePropertyLanguage + - org.apache.camel.language.simple.FileLanguage + - org.apache.camel.language.header.HeaderLanguage + - org.apache.camel.language.ref.RefLanguage + - org.apache.camel.language.simple.SimpleLanguage + - org.apache.camel.language.tokenizer.TokenizeLanguage + camel-quarkus-csv: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-csv + dataformats: + - csv + javaTypes: + - org.apache.camel.dataformat.csv.CsvDataFormat + camel-quarkus-dataformat: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-dataformat + schemes: + - id: dataformat + http: false + passive: true + javaTypes: + - org.apache.camel.component.dataformat.DataFormatComponent + camel-quarkus-direct: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-direct + schemes: + - id: direct + http: false + passive: true + javaTypes: + - org.apache.camel.component.direct.DirectComponent + camel-quarkus-dozer: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-dozer + schemes: + - id: dozer + http: false + passive: false + javaTypes: + - org.apache.camel.component.dozer.DozerComponent + camel-quarkus-exec: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-exec + schemes: + - id: exec + http: false + passive: false + javaTypes: + - org.apache.camel.component.exec.ExecComponent + camel-quarkus-fhir: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-fhir + schemes: + - id: fhir + http: false + passive: false + dataformats: + - fhirJson + - fhirXml + javaTypes: + - org.apache.camel.component.fhir.FhirComponent + - org.apache.camel.component.fhir.FhirJsonDataFormat + - org.apache.camel.component.fhir.FhirXmlDataFormat + camel-quarkus-file: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-file + schemes: + - id: file + http: false + passive: false + javaTypes: + - org.apache.camel.component.file.FileComponent + camel-quarkus-ftp: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-ftp + schemes: + - id: ftp + http: false + passive: false + - id: ftps + http: false + passive: false + - id: sftp + http: false + passive: false + javaTypes: + - org.apache.camel.component.file.remote.FtpComponent + - org.apache.camel.component.file.remote.FtpsComponent + - org.apache.camel.component.file.remote.SftpComponent + camel-quarkus-infinispan: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-infinispan + schemes: + - id: infinispan + http: false + passive: false + javaTypes: + - org.apache.camel.component.infinispan.InfinispanComponent + camel-quarkus-jackson: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-jackson + dataformats: + - json-jackson + javaTypes: + - org.apache.camel.component.jackson.JacksonDataFormat + camel-quarkus-jdbc: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-jdbc + schemes: + - id: jdbc + http: false + passive: false + javaTypes: + - org.apache.camel.component.jdbc.JdbcComponent + camel-quarkus-kafka: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-kafka + schemes: + - id: kafka + http: false + passive: false + javaTypes: + - org.apache.camel.component.kafka.KafkaComponent + camel-quarkus-log: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-log + schemes: + - id: log + http: false + passive: true + javaTypes: + - org.apache.camel.component.log.LogComponent + camel-quarkus-mail: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-mail + schemes: + - id: imap + http: false + passive: false + - id: imaps + http: false + passive: false + - id: pop3 + http: false + passive: false + - id: pop3s + http: false + passive: false + - id: smtp + http: false + passive: false + - id: smtps + http: false + passive: false + dataformats: + - mime-multipart + javaTypes: + - org.apache.camel.component.mail.MailComponent + - org.apache.camel.dataformat.mime.multipart.MimeMultipartDataFormat + camel-quarkus-microprofile-metrics: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-microprofile-metrics + schemes: + - id: microprofile-metrics + http: false + passive: false + javaTypes: + - org.apache.camel.component.microprofile.metrics.MicroProfileMetricsComponent + camel-quarkus-mongodb: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-mongodb + schemes: + - id: mongodb + http: false + passive: false + javaTypes: + - org.apache.camel.component.mongodb.MongoDbComponent + camel-quarkus-netty: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-netty + schemes: + - id: netty + http: false + passive: false + javaTypes: + - org.apache.camel.component.netty.NettyComponent + 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.netty.http.NettyHttpComponent + camel-quarkus-paho: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-paho + schemes: + - id: paho + http: false + passive: false + javaTypes: + - org.apache.camel.component.paho.PahoComponent + camel-quarkus-pdf: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-pdf + schemes: + - id: pdf + http: false + passive: false + javaTypes: + - org.apache.camel.component.pdf.PdfComponent + camel-quarkus-platform-http: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-platform-http + schemes: + - id: platform-http + http: false + passive: false + javaTypes: + - org.apache.camel.component.platform.http.PlatformHttpComponent + camel-quarkus-rest: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-rest + schemes: + - id: rest + http: true + passive: false + - id: rest-api + http: false + passive: false + javaTypes: + - org.apache.camel.component.rest.RestComponent + - org.apache.camel.component.rest.RestApiComponent + camel-quarkus-salesforce: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-salesforce + schemes: + - id: salesforce + http: false + passive: false + javaTypes: + - org.apache.camel.component.salesforce.SalesforceComponent + camel-quarkus-scheduler: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-scheduler + schemes: + - id: scheduler + http: false + passive: false + javaTypes: + - org.apache.camel.component.scheduler.SchedulerComponent + camel-quarkus-seda: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-seda + schemes: + - id: seda + http: false + passive: true + javaTypes: + - org.apache.camel.component.seda.SedaComponent + camel-quarkus-servlet: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-servlet + schemes: + - id: servlet + http: true + passive: false + javaTypes: + - org.apache.camel.component.servlet.ServletComponent + camel-quarkus-sjms: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-sjms + schemes: + - id: sjms + http: false + passive: false + - id: sjms-batch + http: false + passive: false + javaTypes: + - org.apache.camel.component.sjms.SjmsComponent + - org.apache.camel.component.sjms.batch.SjmsBatchComponent + camel-quarkus-sjms2: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-sjms2 + schemes: + - id: sjms2 + http: false + passive: false + javaTypes: + - org.apache.camel.component.sjms2.Sjms2Component + camel-quarkus-slack: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-slack + schemes: + - id: slack + http: false + passive: false + javaTypes: + - org.apache.camel.component.slack.SlackComponent + camel-quarkus-snakeyaml: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-snakeyaml + dataformats: + - yaml-snakeyaml + javaTypes: + - org.apache.camel.component.snakeyaml.SnakeYAMLDataFormat + camel-quarkus-tagsoup: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-tagsoup + dataformats: + - tidyMarkup + javaTypes: + - org.apache.camel.dataformat.tagsoup.TidyMarkupDataFormat + camel-quarkus-tarfile: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-tarfile + dataformats: + - tarfile + javaTypes: + - org.apache.camel.dataformat.tarfile.TarFileDataFormat + camel-quarkus-timer: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-timer + schemes: + - id: timer + http: false + passive: false + javaTypes: + - org.apache.camel.component.timer.TimerComponent + camel-quarkus-twitter: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-twitter + schemes: + - id: twitter-directmessage + http: false + passive: false + - id: twitter-search + http: false + passive: false + - id: twitter-timeline + http: false + passive: false + javaTypes: + - org.apache.camel.component.twitter.directmessage.TwitterDirectMessageComponent + - org.apache.camel.component.twitter.search.TwitterSearchComponent + - org.apache.camel.component.twitter.timeline.TwitterTimelineComponent + camel-quarkus-validator: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-validator + schemes: + - id: validator + http: false + passive: true + javaTypes: + - org.apache.camel.component.validator.ValidatorComponent + camel-quarkus-vm: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-vm + schemes: + - id: vm + http: false + passive: true + javaTypes: + - org.apache.camel.component.vm.VmComponent + camel-quarkus-xslt: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-xslt + schemes: + - id: xslt + http: false + passive: false + javaTypes: + - org.apache.camel.component.xslt.XsltComponent + camel-quarkus-zipfile: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-zipfile + dataformats: + - zipfile + javaTypes: + - org.apache.camel.dataformat.zipfile.ZipFileDataFormat + +` + Resources["camel-catalog-quarkus-1.0.0-M1-1.0.9.yaml"] = + ` +# --------------------------------------------------------------------------- +# 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: camel.apache.org/v1 +kind: CamelCatalog +metadata: + name: camel-catalog-quarkus-1.0.0-m1-1.0.9 + labels: + app: camel-k + camel.apache.org/catalog.version: 3.0.0 + camel.apache.org/catalog.loader.version: 3.0.0 + camel.apache.org/runtime.version: 1.0.9 + camel.apache.org/runtime.provider: quarkus +spec: + version: 3.0.0 + runtimeVersion: 1.0.9 + runtimeProvider: + quarkus: + camelQuarkusVersion: 1.0.0-M1 + quarkusVersion: 1.0.1.Final + artifacts: + camel-k-loader-groovy: + groupId: org.apache.camel.k + artifactId: camel-k-loader-groovy + dependencies: + - groupId: org.apache.camel + artifactId: camel-endpointdsl + - groupId: org.apache.camel + artifactId: camel-groovy + camel-k-loader-java: + groupId: org.apache.camel.k + artifactId: camel-k-loader-java + dependencies: + - groupId: org.apache.camel + artifactId: camel-endpointdsl + camel-k-loader-js: + groupId: org.apache.camel.k + artifactId: camel-k-loader-js + dependencies: + - groupId: org.apache.camel + artifactId: camel-endpointdsl + camel-k-loader-knative: + groupId: org.apache.camel.k + artifactId: camel-k-loader-knative + camel-k-loader-kotlin: + groupId: org.apache.camel.k + artifactId: camel-k-loader-kotlin + dependencies: + - groupId: org.apache.camel + artifactId: camel-endpointdsl + camel-k-loader-xml: + groupId: org.apache.camel.k + artifactId: camel-k-loader-xml + camel-k-runtime-health: + groupId: org.apache.camel.k + artifactId: camel-k-runtime-health + dependencies: + - groupId: org.apache.camel + artifactId: camel-servlet + - groupId: org.apache.camel.k + artifactId: camel-k-runtime-servlet + camel-k-runtime-knative: + groupId: org.apache.camel.k + artifactId: camel-k-runtime-knative + dependencies: + - groupId: org.apache.camel + artifactId: camel-cloud + - groupId: org.apache.camel.k + artifactId: camel-k-loader-yaml + - groupId: org.apache.camel.k + artifactId: camel-k-loader-knative + - groupId: org.apache.camel.k + artifactId: camel-knative-api + - groupId: org.apache.camel.k + artifactId: camel-knative + - groupId: org.apache.camel.k + artifactId: camel-knative-http + camel-k-runtime-main: + groupId: org.apache.camel.k + artifactId: camel-k-runtime-main + dependencies: + - groupId: org.apache.camel + artifactId: camel-core-engine + - groupId: org.apache.camel + artifactId: camel-main + camel-k-runtime-servlet: + groupId: org.apache.camel.k + artifactId: camel-k-runtime-servlet + dependencies: + - groupId: org.apache.camel + artifactId: camel-servlet + camel-k-runtime-webhook: + groupId: org.apache.camel.k + artifactId: camel-k-runtime-webhook + dependencies: + - groupId: org.apache.camel + artifactId: camel-webhook + camel-knative: + groupId: org.apache.camel.k + artifactId: camel-knative + schemes: + - id: knative + http: true + passive: false + dependencies: + - groupId: org.apache.camel + artifactId: camel-cloud + - groupId: org.apache.camel.k + artifactId: camel-knative-api + - groupId: org.apache.camel.k + artifactId: camel-knative-http + camel-quarkus-aws-ecs: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-aws-ecs + schemes: + - id: aws-ecs + http: false + passive: false + javaTypes: + - org.apache.camel.component.aws.ecs.ECSComponent + camel-quarkus-aws-eks: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-aws-eks + schemes: + - id: aws-eks + http: false + passive: false + javaTypes: + - org.apache.camel.component.aws.eks.EKSComponent + camel-quarkus-aws-kms: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-aws-kms + schemes: + - id: aws-kms + http: false + passive: false + javaTypes: + - org.apache.camel.component.aws.kms.KMSComponent + camel-quarkus-aws-s3: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-aws-s3 + schemes: + - id: aws-s3 + http: false + passive: false + javaTypes: + - org.apache.camel.component.aws.s3.S3Component + camel-quarkus-aws-sns: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-aws-sns + schemes: + - id: aws-sns + http: false + passive: false + javaTypes: + - org.apache.camel.component.aws.sns.SnsComponent + camel-quarkus-aws-sqs: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-aws-sqs + schemes: + - id: aws-sqs + http: false + passive: false + javaTypes: + - org.apache.camel.component.aws.sqs.SqsComponent + camel-quarkus-base64: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-base64 + dataformats: + - base64 + javaTypes: + - org.apache.camel.dataformat.base64.Base64DataFormat + camel-quarkus-bean: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-bean + schemes: + - id: bean + http: false + passive: true + - id: class + http: false + passive: true + languages: + - bean + javaTypes: + - org.apache.camel.component.bean.BeanComponent + - org.apache.camel.component.beanclass.ClassComponent + - org.apache.camel.language.bean.BeanLanguage + camel-quarkus-bean-validator: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-bean-validator + schemes: + - id: bean-validator + http: false + passive: false + javaTypes: + - org.apache.camel.component.bean.validator.BeanValidatorComponent + camel-quarkus-controlbus: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-controlbus + schemes: + - id: controlbus + http: false + passive: true + javaTypes: + - org.apache.camel.component.controlbus.ControlBusComponent camel-quarkus-core: groupId: org.apache.camel.quarkus artifactId: camel-quarkus-core @@ -4399,6 +7942,19 @@ rules: - patch - update - watch +- apiGroups: + - batch + resources: + - cronjobs + verbs: + - create + - delete + - deletecollection + - get + - list + - patch + - update + - watch - apiGroups: - apps attributeRestrictions: null @@ -4511,6 +8067,19 @@ rules: - patch - update - watch +- apiGroups: + - batch + resources: + - cronjobs + verbs: + - create + - delete + - deletecollection + - get + - list + - patch + - update + - watch - apiGroups: - apps attributeRestrictions: null @@ -4715,6 +8284,19 @@ rules: - patch - update - watch +- apiGroups: + - batch + resources: + - cronjobs + verbs: + - create + - delete + - deletecollection + - get + - list + - patch + - update + - watch - apiGroups: - apps attributeRestrictions: null diff --git a/e2e/cron_test.go b/e2e/cron_test.go new file mode 100644 index 0000000000..3c0cc0d2e1 --- /dev/null +++ b/e2e/cron_test.go @@ -0,0 +1,54 @@ +// +build integration + +// To enable compilation of this file in Goland, go to "Settings -> Go -> Vendoring & Build Tags -> Custom Tags" and add "integration" + +/* +Licensed to the Apache Software Foundation (ASF) under one or more +contributor license agreements. See the NOTICE file distributed with +this work for additional information regarding copyright ownership. +The ASF licenses this file to You under the Apache License, Version 2.0 +(the "License"); you may not use this file except in compliance with +the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package e2e + +import ( + "testing" + "time" + + . "github.com/onsi/gomega" + v1 "k8s.io/api/core/v1" +) + +func TestRunCronExample(t *testing.T) { + withNewTestNamespace(t, func(ns string) { + Expect(kamel("install", "-n", ns).Execute()).Should(BeNil()) + + t.Run("cron", func(t *testing.T) { + RegisterTestingT(t) + + Expect(kamel("run", "-n", ns, "files/cron.groovy").Execute()).Should(BeNil()) + Eventually(integrationCronJob(ns, "cron"), 5*time.Minute).ShouldNot(BeNil()) + Eventually(integrationLogs(ns, "cron"), 5*time.Minute).Should(ContainSubstring("Magicstring!")) + Expect(kamel("delete", "--all", "-n", ns).Execute()).Should(BeNil()) + }) + + t.Run("cron-fallback", func(t *testing.T) { + RegisterTestingT(t) + + Expect(kamel("run", "-n", ns, "files/cron-fallback.groovy").Execute()).Should(BeNil()) + Eventually(integrationPodPhase(ns, "cron-fallback"), 5*time.Minute).Should(Equal(v1.PodRunning)) + Eventually(integrationLogs(ns, "cron-fallback"), 1*time.Minute).Should(ContainSubstring("Magicstring!")) + Expect(kamel("delete", "--all", "-n", ns).Execute()).Should(BeNil()) + }) + }) +} diff --git a/e2e/files/cron-fallback.groovy b/e2e/files/cron-fallback.groovy new file mode 100644 index 0000000000..47980c55d3 --- /dev/null +++ b/e2e/files/cron-fallback.groovy @@ -0,0 +1,24 @@ +/* + * 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. + */ + +// TODO: replace the consumer URI with 'cron:tab?schedule=0/1+*+*+*+*+?' when camel-cron is available in Apache Camel +from('quartz:trigger?cron=0/1+*+*+*+*+?') + .routeId('groovy') + .setHeader("m").constant("string!") + .setBody() + .simple('Magic${header.m}') + .to('log:info?showAll=false') diff --git a/e2e/files/cron.groovy b/e2e/files/cron.groovy new file mode 100644 index 0000000000..dbc26bc701 --- /dev/null +++ b/e2e/files/cron.groovy @@ -0,0 +1,23 @@ +/* + * 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. + */ + +from('cron:tab?schedule=*+*+*+*+?') + .routeId('groovy') + .setHeader("m").constant("string!") + .setBody() + .simple('Magic${header.m}') + .to('log:info?showAll=false') diff --git a/e2e/test_support.go b/e2e/test_support.go index d9f437c66a..ff29976d5c 100644 --- a/e2e/test_support.go +++ b/e2e/test_support.go @@ -46,6 +46,7 @@ import ( "github.com/operator-framework/operator-sdk/pkg/k8sutil" "github.com/spf13/cobra" appsv1 "k8s.io/api/apps/v1" + "k8s.io/api/batch/v1beta1" corev1 "k8s.io/api/core/v1" k8serrors "k8s.io/apimachinery/pkg/api/errors" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" @@ -220,6 +221,29 @@ func integrationPod(ns string, name string) func() *corev1.Pod { } } +func integrationCronJob(ns string, name string) func() *v1beta1.CronJob { + return func() *v1beta1.CronJob { + lst := v1beta1.CronJobList{ + TypeMeta: metav1.TypeMeta{ + Kind: "CronJob", + APIVersion: v1beta1.SchemeGroupVersion.String(), + }, + } + err := testClient.List(testContext, &lst, + k8sclient.InNamespace(ns), + k8sclient.MatchingLabels{ + "camel.apache.org/integration": name, + }) + if err != nil { + panic(err) + } + if len(lst.Items) == 0 { + return nil + } + return &lst.Items[0] + } +} + func integration(ns string, name string) func() *v1.Integration { return func() *v1.Integration { it := v1.NewIntegration(ns, name) diff --git a/examples/cron.groovy b/examples/cron.groovy new file mode 100644 index 0000000000..717683fa23 --- /dev/null +++ b/examples/cron.groovy @@ -0,0 +1,22 @@ +// camel-k: language=groovy +/* + * 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. + */ + +from('cron:tab?schedule=*+*+*+*+?') // once every minute + .setBody() + .simple('Hello Camel K using CronJob') + .to('log:info?showAll=false') diff --git a/go.mod b/go.mod index b501283aa9..b32d6711b4 100644 --- a/go.mod +++ b/go.mod @@ -15,6 +15,7 @@ require ( github.com/google/go-containerregistry v0.0.0-20190206233756-dbc4da98389f // indirect github.com/google/uuid v1.1.1 github.com/jpillora/backoff v0.0.0-20170918002102-8eab2debe79d + github.com/magiconair/properties v1.8.1 github.com/mitchellh/mapstructure v1.1.2 github.com/onsi/gomega v1.7.0 github.com/openshift/api v3.9.1-0.20190927182313-d4a64ec2cbd8+incompatible diff --git a/pkg/client/fastmapper.go b/pkg/client/fastmapper.go index 1501e4daee..346603d5d5 100644 --- a/pkg/client/fastmapper.go +++ b/pkg/client/fastmapper.go @@ -34,6 +34,7 @@ var FastMapperAllowedAPIGroups = map[string]bool{ "": true, // core APIs "apiextensions.k8s.io": true, "apps": true, + "batch": true, "camel.apache.org": true, "rbac.authorization.k8s.io": true, "console.openshift.io": true, // OpenShift console resources diff --git a/pkg/trait/container.go b/pkg/trait/container.go index 74cff3d3a2..0a3cfa6ce6 100644 --- a/pkg/trait/container.go +++ b/pkg/trait/container.go @@ -24,6 +24,7 @@ import ( v1 "github.com/apache/camel-k/pkg/apis/camel/v1" "github.com/apache/camel-k/pkg/util/envvar" appsv1 "k8s.io/api/apps/v1" + "k8s.io/api/batch/v1beta1" corev1 "k8s.io/api/core/v1" "k8s.io/apimachinery/pkg/api/resource" "k8s.io/apimachinery/pkg/util/intstr" @@ -152,6 +153,19 @@ func (t *containerTrait) Apply(e *Environment) error { service.Spec.ConfigurationSpec.Template.Spec.Containers = append(service.Spec.ConfigurationSpec.Template.Spec.Containers, container) }) + e.Resources.VisitCronJob(func(cron *v1beta1.CronJob) { + for _, envVar := range e.EnvVars { + envvar.SetVar(&container.Env, envVar) + } + + e.ConfigureVolumesAndMounts( + &cron.Spec.JobTemplate.Spec.Template.Spec.Volumes, + &container.VolumeMounts, + ) + + cron.Spec.JobTemplate.Spec.Template.Spec.Containers = append(cron.Spec.JobTemplate.Spec.Template.Spec.Containers, container) + }) + if t.Expose != nil && *t.Expose { t.configureService(e) } diff --git a/pkg/trait/cron.go b/pkg/trait/cron.go new file mode 100644 index 0000000000..856e4ef020 --- /dev/null +++ b/pkg/trait/cron.go @@ -0,0 +1,449 @@ +/* +Licensed to the Apache Software Foundation (ASF) under one or more +contributor license agreements. See the NOTICE file distributed with +this work for additional information regarding copyright ownership. +The ASF licenses this file to You under the Apache License, Version 2.0 +(the "License"); you may not use this file except in compliance with +the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package trait + +import ( + "fmt" + "regexp" + "strconv" + "strings" + + v1 "github.com/apache/camel-k/pkg/apis/camel/v1" + "github.com/apache/camel-k/pkg/metadata" + "github.com/apache/camel-k/pkg/util" + "github.com/apache/camel-k/pkg/util/envvar" + "github.com/apache/camel-k/pkg/util/kubernetes" + "github.com/apache/camel-k/pkg/util/uri" + batchv1 "k8s.io/api/batch/v1" + "k8s.io/api/batch/v1beta1" + corev1 "k8s.io/api/core/v1" + metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" +) + +// The Cron trait can be used to customize the behaviour of periodic timer/cron based integrations. +// +// +camel-k:trait=cron +type cronTrait struct { + BaseTrait `property:",squash"` + // The CronJob schedule for the whole integration. If multiple routes are declared, they must have the same schedule for this + // mechanism to work correctly. + Schedule string `property:"schedule"` + // A comma separated list of the Camel components that need to be customized in order for them to work when the schedule is triggered externally by Kubernetes. + // A specific customizer is activated for each specified component. E.g. for the `timer` component, the `cron-timer` customizer is + // activated (it's present in the `org.apache.camel.k:camel-k-runtime-cron` library). + // + // Supported components are currently: `cron`, `timer` and `quartz`. + Components string `property:"schedule"` + // Use the default Camel implementation of the `cron` endpoint (`quartz`) instead of trying to materialize the integration + // as Kubernetes CronJob. + Fallback *bool `property:"fallback"` + // Automatically deploy the integration as CronJob when all routes are + // either starting from a periodic consumer (only `cron`, `timer` and `quartz` are supported) or a passive consumer (e.g. `direct` is a passive consumer). + // + // It's required that all periodic consumers have the same period and it can be expressed as cron schedule (e.g. `1m` can be expressed as `0/1 * * * *`, + // while `35m` or `50s` cannot). + Auto *bool `property:"auto"` + deployer deployerTrait +} + +// cronInfo contains information about cron schedules present in the code +type cronInfo struct { + components []string + schedule string +} + +// cronExtractor extracts cron informatino from a Camel URI +type cronExtractor func(string) *cronInfo + +const ( + genericCronComponent = "cron" + genericCronComponentFallback = "camel:quartz" +) + +var ( + camelTimerPeriodMillis = regexp.MustCompile(`^[0-9]+$`) + camelTimerPeriodHumanReadable = regexp.MustCompile(`^(?:([0-9]+)h)?(?:([0-9]+)m)?(?:([0-9]+)s)?$`) + + supportedCamelComponents = map[string]cronExtractor{ + "timer": timerToCronInfo, + "quartz": quartzToCronInfo, + "cron": cronToCronInfo, + } +) + +func newCronTrait() *cronTrait { + return &cronTrait{ + BaseTrait: newBaseTrait("cron"), + } +} + +func (t *cronTrait) Configure(e *Environment) (bool, error) { + if t.Enabled != nil && !*t.Enabled { + return false, nil + } + + if !e.IntegrationInPhase(v1.IntegrationPhaseInitialization) && !e.InPhase(v1.IntegrationKitPhaseReady, v1.IntegrationPhaseDeploying) { + return false, nil + } + + if t.Auto == nil || *t.Auto { + globalCron, err := t.getGlobalCron(e) + if err != nil { + return false, err + } + + if t.Schedule == "" && globalCron != nil { + t.Schedule = globalCron.schedule + } + + if globalCron != nil { + configuredComponents := strings.FieldsFunc(t.Components, func(c rune) bool { return c == ',' }) + for _, c := range globalCron.components { + util.StringSliceUniqueAdd(&configuredComponents, c) + } + t.Components = strings.Join(configuredComponents, ",") + } + + if t.Schedule == "" && t.Components == "" && t.Fallback == nil { + // If there's at least a `cron` endpoint, add a fallback implementation + fromURIs, err := t.getSourcesFromURIs(e) + if err != nil { + return false, err + } + for _, fromURI := range fromURIs { + if uri.GetComponent(fromURI) == genericCronComponent { + _true := true + t.Fallback = &_true + break + } + } + + } + } + + dt := e.Catalog.GetTrait("deployer") + if dt != nil { + t.deployer = *dt.(*deployerTrait) + } + + // Fallback strategy can be implemented in any other controller + if t.Fallback != nil && *t.Fallback { + return true, nil + } + + // CronJob strategy requires common schedule + strategy, err := e.DetermineControllerStrategy(t.ctx, t.client) + if err != nil { + return false, err + } + if strategy != ControllerStrategyCronJob { + return false, nil + } + + return t.Schedule != "", nil +} + +func (t *cronTrait) Apply(e *Environment) error { + if t.Fallback != nil && *t.Fallback { + if e.IntegrationInPhase(v1.IntegrationPhaseInitialization) { + util.StringSliceUniqueAdd(&e.Integration.Status.Dependencies, genericCronComponentFallback) + } + } else { + if e.IntegrationInPhase(v1.IntegrationPhaseInitialization) { + util.StringSliceUniqueAdd(&e.Integration.Status.Dependencies, "mvn:org.apache.camel.k/camel-k-runtime-cron") + } else if e.InPhase(v1.IntegrationKitPhaseReady, v1.IntegrationPhaseDeploying) { + cronJob := t.getCronJobFor(e) + maps := e.ComputeConfigMaps() + + e.Resources.AddAll(maps) + e.Resources.Add(cronJob) + + envvar.SetVal(&e.EnvVars, "CAMEL_K_CRON_OVERRIDE", t.Components) + } + } + return nil +} + +func (t *cronTrait) getCronJobFor(e *Environment) *v1beta1.CronJob { + labels := map[string]string{ + "camel.apache.org/integration": e.Integration.Name, + } + + annotations := make(map[string]string) + + // Copy annotations from the integration resource + if e.Integration.Annotations != nil { + for k, v := range FilterTransferableAnnotations(e.Integration.Annotations) { + annotations[k] = v + } + } + + // Resolve registry host names when used + annotations["alpha.image.policy.openshift.io/resolve-names"] = "*" + + cronjob := v1beta1.CronJob{ + TypeMeta: metav1.TypeMeta{ + Kind: "CronJob", + APIVersion: v1beta1.SchemeGroupVersion.String(), + }, + ObjectMeta: metav1.ObjectMeta{ + Name: e.Integration.Name, + Namespace: e.Integration.Namespace, + Labels: labels, + Annotations: e.Integration.Annotations, + }, + Spec: v1beta1.CronJobSpec{ + Schedule: t.Schedule, + JobTemplate: v1beta1.JobTemplateSpec{ + Spec: batchv1.JobSpec{ + Template: corev1.PodTemplateSpec{ + ObjectMeta: metav1.ObjectMeta{ + Labels: labels, + Annotations: annotations, + }, + Spec: corev1.PodSpec{ + ServiceAccountName: e.Integration.Spec.ServiceAccountName, + RestartPolicy: corev1.RestartPolicyNever, + }, + }, + }, + }, + }, + } + + return &cronjob +} + +// CanCreateController can be used to check if a CronJob can be generated given the integration and trait settings +func (t *cronTrait) CanCreateController(e *Environment) (bool, error) { + if t.Enabled != nil && !*t.Enabled { + return false, nil + } + if t.Fallback != nil && *t.Fallback { + return false, nil + } + if t.Schedule != "" { + return true, nil + } + if t.Auto == nil || *t.Auto { + globalCron, err := t.getGlobalCron(e) + return err == nil && globalCron != nil, err + } + return false, nil +} + +// Gathering cron information + +func newCronInfo() *cronInfo { + return &cronInfo{} +} + +func (c *cronInfo) withComponents(components ...string) *cronInfo { + for _, comp := range components { + util.StringSliceUniqueAdd(&c.components, comp) + } + return c +} + +func (c *cronInfo) withSchedule(schedule string) *cronInfo { + c.schedule = schedule + return c +} + +func (t *cronTrait) getGlobalCron(e *Environment) (*cronInfo, error) { + fromURIs, err := t.getSourcesFromURIs(e) + if err != nil { + return nil, err + } + + passiveComponents := make(map[string]bool) + e.CamelCatalog.VisitSchemes(func(id string, scheme v1.CamelScheme) bool { + if scheme.Passive { + passiveComponents[id] = true + } + return true + }) + + var cron []string + for _, from := range fromURIs { + comp := uri.GetComponent(from) + if supportedCamelComponents[comp] != nil { + cron = append(cron, from) + } else if !passiveComponents[comp] { + return nil, nil + } + } + + globalCron := getCronForURIs(cron) + return globalCron, nil +} + +func (t *cronTrait) getSourcesFromURIs(e *Environment) ([]string, error) { + var sources []v1.SourceSpec + var err error + if sources, err = kubernetes.ResolveIntegrationSources(t.ctx, t.client, e.Integration, e.Resources); err != nil { + return nil, err + } + meta := metadata.ExtractAll(e.CamelCatalog, sources) + return meta.FromURIs, nil +} + +func getCronForURIs(camelURIs []string) (globalCron *cronInfo) { + for _, camelURI := range camelURIs { + cr := getCronForURI(camelURI) + if cr == nil { + return nil + } + if globalCron == nil { + globalCron = cr + } else { + if !cronEquivalent(globalCron.schedule, cr.schedule) { + return nil + } + globalCron = globalCron.withComponents(cr.components...) + } + } + return globalCron +} + +func getCronForURI(camelURI string) *cronInfo { + comp := uri.GetComponent(camelURI) + extractor := supportedCamelComponents[comp] + return extractor(camelURI) +} + +// Specific extractors + +// timerToCronInfo converts a timer endpoint to a Kubernetes cron schedule +func timerToCronInfo(camelURI string) *cronInfo { + if uri.GetQueryParameter(camelURI, "delay") != "" || + uri.GetQueryParameter(camelURI, "repeatCount") != "" || + uri.GetQueryParameter(camelURI, "time") != "" { + return nil + } + periodStr := uri.GetQueryParameter(camelURI, "period") + var period uint64 + if camelTimerPeriodMillis.MatchString(periodStr) { + period = checkedStringToUint64(periodStr) + } else if camelTimerPeriodHumanReadable.MatchString(periodStr) { + res := camelTimerPeriodHumanReadable.FindStringSubmatch(periodStr) + if len(res) == 4 { + period = 0 + if res[1] != "" { // hours + period += checkedStringToUint64(res[1]) * 3600000 + } + if res[2] != "" { // minutes + period += checkedStringToUint64(res[2]) * 60000 + } + if res[3] != "" { // seconds + period += checkedStringToUint64(res[3]) * 1000 + } + } + } else { + return nil + } + + if period == 0 || period%1000 != 0 { + return nil + } + seconds := period / 1000 + + if seconds%3600 == 0 { + hours := seconds / 3600 + if hours == 24 { + return newCronInfo().withComponents("timer").withSchedule("0 0 * * ?") + } else if hours < 24 && 24%hours == 0 { + return newCronInfo().withComponents("timer").withSchedule(fmt.Sprintf("0 0/%d * * ?", hours)) + } + } else if seconds%60 == 0 { + minutes := seconds / 60 + if minutes < 60 && 60%minutes == 0 { + return newCronInfo().withComponents("timer").withSchedule(fmt.Sprintf("0/%d * * * ?", minutes)) + } + } + return nil +} + +// quartzToCronInfo converts a quartz endpoint to a Kubernetes cron schedule +func quartzToCronInfo(camelURI string) *cronInfo { + if uri.GetQueryParameter(camelURI, "fireNow") != "" || + uri.GetQueryParameter(camelURI, "customCalendar") != "" || + uri.GetQueryParameter(camelURI, "startDelayedSeconds") != "" { + return nil + } + // Quartz URI has 6 or 7 components instead of the 5 expected by Kubernetes (starts with seconds, ends with year). + cron := uri.GetQueryParameter(camelURI, "cron") + normalized := toKubernetesCronSchedule(cron) + if normalized != "" { + return newCronInfo().withComponents("quartz").withSchedule(normalized) + } + + return nil +} + +// cronToCronInfo converts a cron endpoint to a Kubernetes cron schedule +func cronToCronInfo(camelURI string) *cronInfo { + // Camel cron URIs have 5 to 7 components. + schedule := uri.GetQueryParameter(camelURI, "schedule") + normalized := toKubernetesCronSchedule(schedule) + if normalized != "" { + return newCronInfo().withComponents("cron").withSchedule(normalized) + } + + return nil +} + +// Utility + +func cronEquivalent(cron1, cron2 string) bool { + // best effort to determine if two crons are equivalent + cron1 = strings.ReplaceAll(cron1, "?", "*") + cron2 = strings.ReplaceAll(cron2, "?", "*") + return cron1 == cron2 +} + +func toKubernetesCronSchedule(cron string) string { + parts := strings.Split(cron, " ") + + if len(parts) > 5 { + // drop seconds if they can be ignored + if parts[0] == "0" { + parts = parts[1:] + } else { + return "" + } + } + + if len(parts) == 6 && (parts[5] == "*" || parts[5] == "?") { + // drop year if present + parts = parts[0:5] + } + + if len(parts) == 5 { + return strings.Join(parts, " ") + } + return "" +} + +func checkedStringToUint64(str string) uint64 { + res, err := strconv.ParseUint(str, 10, 0) + if err != nil { + panic(err) + } + return res +} diff --git a/pkg/trait/cron_test.go b/pkg/trait/cron_test.go new file mode 100644 index 0000000000..908d94a270 --- /dev/null +++ b/pkg/trait/cron_test.go @@ -0,0 +1,209 @@ +/* +Licensed to the Apache Software Foundation (ASF) under one or more +contributor license agreements. See the NOTICE file distributed with +this work for additional information regarding copyright ownership. +The ASF licenses this file to You under the Apache License, Version 2.0 +(the "License"); you may not use this file except in compliance with +the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package trait + +import ( + "strings" + "testing" + + "github.com/magiconair/properties/assert" +) + +func TestCronFromURI(t *testing.T) { + tests := []struct { + uri string + uri2 string + uri3 string + cron string + components string + }{ + // Timer only + { + uri: "timer:tick?period=60000&delay=12", // invalid + }, + { + uri: "timer:tick?period=60000&repeatCount=10", // invalid + }, + { + uri: "timer:tick?period=60000", + cron: "0/1 * * * ?", + components: "timer", + }, + { + uri: "timer:tick?period=28800000", + cron: "0 0/8 * * ?", + components: "timer", + }, + { + uri: "timer:tick?period=120000", + cron: "0/2 * * * ?", + components: "timer", + }, + { + uri: "timer:tick?period=120001", // invalid + }, + { + uri: "timer:tick?period=1m", + cron: "0/1 * * * ?", + components: "timer", + }, + { + uri: "timer:tick?period=5m", + cron: "0/5 * * * ?", + components: "timer", + }, + { + uri: "timer:tick?period=10m", + cron: "0/10 * * * ?", + components: "timer", + }, + { + uri: "timer:tick?period=61m", // invalid + }, + { + uri: "timer:tick?period=2h", + cron: "0 0/2 * * ?", + components: "timer", + }, + { + uri: "timer:tick?period=2h60m", + cron: "0 0/3 * * ?", + components: "timer", + }, + { + uri: "timer:tick?period=24h", + cron: "0 0 * * ?", + components: "timer", + }, + { + uri: "timer:tick?period=3h60s", // invalid + }, + { + uri: "timer:tick?period=3h59m60s", + cron: "0 0/4 * * ?", + components: "timer", + }, + + // Quartz only + { + uri: "quartz:trigger?cron=0 0 0/4 * * ?", + cron: "0 0/4 * * ?", + components: "quartz", + }, + { + uri: "quartz:trigger?cron=0+0+0/4+*+*+?", + cron: "0 0/4 * * ?", + components: "quartz", + }, + { + uri: "quartz:trigger?cron=*+0+0/4+*+*+?", // invalid + }, + { + uri: "quartz:trigger?cron=0+0+0/4+*+*+?+2020", // invalid + }, + { + uri: "quartz:trigger?cron=1+0+0/4+*+*+?", // invalid + }, + { + uri: "quartz:trigger?cron=0+0+0/4+*+*+?&fireNow=true", // invalid + }, + + // Cron only + { + uri: "cron:tab?schedule=1/2 * * * ?", + cron: "1/2 * * * ?", + components: "cron", + }, + { + uri: "cron:tab?schedule=0 0 0/4 * * ?", + cron: "0 0/4 * * ?", + components: "cron", + }, + { + uri: "cron:tab?schedule=0+0+0/4+*+*+?", + cron: "0 0/4 * * ?", + components: "cron", + }, + { + uri: "cron:tab?schedule=*+0+0/4+*+*+?", // invalid + }, + { + uri: "cron:tab?schedule=0+0,6+0/4+*+*+MON-THU", + cron: "0,6 0/4 * * MON-THU", + components: "cron", + }, + { + uri: "cron:tab?schedule=0+0+0/4+*+*+?+2020", // invalid + }, + { + uri: "cron:tab?schedule=1+0+0/4+*+*+?", // invalid + }, + + // Mixed scenarios + { + uri: "cron:tab?schedule=0/2 * * * ?", + uri2: "timer:tick?period=2m", + cron: "0/2 * * * ?", + components: "cron,timer", + }, + { + uri: "cron:tab?schedule=0 0/2 * * ?", + uri2: "timer:tick?period=2h", + uri3: "quartz:trigger?cron=0 0 0/2 * * ? ?", + cron: "0 0/2 * * ?", + components: "cron,timer,quartz", + }, + { + uri: "cron:tab?schedule=1 0/2 * * ?", + uri2: "timer:tick?period=2h", + uri3: "quartz:trigger?cron=0 0 0/2 * * ? ?", + // invalid + }, + { + uri: "cron:tab?schedule=0 0/2 * * ?", + uri2: "timer:tick?period=3h", + uri3: "quartz:trigger?cron=0 0 0/2 * * ? ?", + // invalid + }, + } + + for _, test := range tests { + t.Run(test.uri, func(t *testing.T) { + uris := []string{test.uri, test.uri2, test.uri3} + filtered := make([]string, 0, len(uris)) + for _, uri := range uris { + if uri != "" { + filtered = append(filtered, uri) + } + } + + res := getCronForURIs(filtered) + gotCron := "" + if res != nil { + gotCron = res.schedule + } + assert.Equal(t, gotCron, test.cron) + + gotComponents := "" + if res != nil { + gotComponents = strings.Join(res.components, ",") + } + assert.Equal(t, gotComponents, test.components) + }) + } +} diff --git a/pkg/trait/trait_catalog.go b/pkg/trait/trait_catalog.go index 102744d407..2b02d3768b 100644 --- a/pkg/trait/trait_catalog.go +++ b/pkg/trait/trait_catalog.go @@ -38,6 +38,7 @@ type Catalog struct { tDebug Trait tDependencies Trait tDeployer Trait + tCron Trait tDeployment Trait tGarbageCollector Trait tKnativeService Trait @@ -71,6 +72,7 @@ func NewCatalog(ctx context.Context, c client.Client) *Catalog { tKnative: newKnativeTrait(), tDependencies: newDependenciesTrait(), tDeployer: newDeployerTrait(), + tCron: newCronTrait(), tDeployment: newDeploymentTrait(), tGarbageCollector: newGarbageCollectorTrait(), tKnativeService: newKnativeServiceTrait(), @@ -111,6 +113,7 @@ func (c *Catalog) allTraits() []Trait { c.tKnative, c.tDependencies, c.tDeployer, + c.tCron, c.tDeployment, c.tGarbageCollector, c.tKnativeService, @@ -150,6 +153,7 @@ func (c *Catalog) TraitsForProfile(profile v1.TraitProfile) []Trait { c.tCamel, c.tDebug, c.tRestDsl, + c.tCron, c.tDependencies, c.tBuilder, c.tQuarkus, @@ -180,6 +184,7 @@ func (c *Catalog) TraitsForProfile(profile v1.TraitProfile) []Trait { c.tQuarkus, c.tEnvironment, c.tDeployer, + c.tCron, c.tDeployment, c.tGarbageCollector, c.tAffinity, @@ -206,6 +211,7 @@ func (c *Catalog) TraitsForProfile(profile v1.TraitProfile) []Trait { c.tQuarkus, c.tEnvironment, c.tDeployer, + c.tCron, c.tDeployment, c.tGarbageCollector, c.tAffinity, @@ -229,6 +235,7 @@ func (c *Catalog) apply(environment *Environment) error { return err } traits := c.traitsFor(environment) + environment.ConfiguredTraits = traits applicable := false for _, trait := range traits { diff --git a/pkg/trait/trait_types.go b/pkg/trait/trait_types.go index 2e0ca9257a..ad523ea9d4 100644 --- a/pkg/trait/trait_types.go +++ b/pkg/trait/trait_types.go @@ -130,21 +130,22 @@ func (trait *BaseTrait) RequiresIntegrationPlatform() bool { // A Environment provides the context where the trait is executed type Environment struct { - CamelCatalog *camel.RuntimeCatalog - RuntimeVersion string - Catalog *Catalog - C context.Context - Client client.Client - Platform *v1.IntegrationPlatform - IntegrationKit *v1.IntegrationKit - Integration *v1.Integration - Resources *kubernetes.Collection - PostActions []func(*Environment) error - PostProcessors []func(*Environment) error - BuildTasks []v1.Task - ExecutedTraits []Trait - EnvVars []corev1.EnvVar - Classpath *strset.Set + CamelCatalog *camel.RuntimeCatalog + RuntimeVersion string + Catalog *Catalog + C context.Context + Client client.Client + Platform *v1.IntegrationPlatform + IntegrationKit *v1.IntegrationKit + Integration *v1.Integration + Resources *kubernetes.Collection + PostActions []func(*Environment) error + PostProcessors []func(*Environment) error + BuildTasks []v1.Task + ConfiguredTraits []Trait + ExecutedTraits []Trait + EnvVars []corev1.EnvVar + Classpath *strset.Set } // ControllerStrategy is used to determine the kind of controller that needs to be created for the integration @@ -154,6 +155,7 @@ type ControllerStrategy string const ( ControllerStrategyDeployment = "deployment" ControllerStrategyKnativeService = "knative-service" + ControllerStrategyCronJob = "cron-job" ) // GetTrait -- @@ -167,6 +169,17 @@ func (e *Environment) GetTrait(id ID) Trait { return nil } +// GetConfiguredTrait -- +func (e *Environment) GetConfiguredTrait(id ID) Trait { + for _, t := range e.ConfiguredTraits { + if t.ID() == id { + return t + } + } + + return nil +} + // IntegrationInPhase -- func (e *Environment) IntegrationInPhase(phases ...v1.IntegrationPhase) bool { if e.Integration == nil { @@ -229,17 +242,15 @@ func (e *Environment) DetermineProfile() v1.TraitProfile { // DetermineControllerStrategy determines the type of controller that should be used for the integration func (e *Environment) DetermineControllerStrategy(ctx context.Context, c controller.Reader) (ControllerStrategy, error) { - if e.DetermineProfile() != v1.TraitProfileKnative { - return ControllerStrategyDeployment, nil - } - - trait := e.GetTrait("deployer") - if trait != nil { - deployerTrait := trait.(*deployerTrait) + dt := e.GetTrait("deployer") + if dt != nil { + deployerTrait := dt.(*deployerTrait) if deployerTrait.Kind == ControllerStrategyDeployment { return ControllerStrategyDeployment, nil } else if deployerTrait.Kind == ControllerStrategyKnativeService { return ControllerStrategyKnativeService, nil + } else if deployerTrait.Kind == ControllerStrategyCronJob { + return ControllerStrategyCronJob, nil } } @@ -249,13 +260,25 @@ func (e *Environment) DetermineControllerStrategy(ctx context.Context, c control return "", err } - // In Knative profile: use knative service only if needed - meta := metadata.ExtractAll(e.CamelCatalog, sources) - if !meta.RequiresHTTPService { - return ControllerStrategyDeployment, nil + if e.DetermineProfile() == v1.TraitProfileKnative { + // In Knative profile: use knative service only if needed + meta := metadata.ExtractAll(e.CamelCatalog, sources) + if meta.RequiresHTTPService { + return ControllerStrategyKnativeService, nil + } + } + + ct := e.GetConfiguredTrait("cron") + if ct != nil { + cronTrait := ct.(*cronTrait) + if isApplicable, err := cronTrait.CanCreateController(e); err != nil { + return "", err + } else if isApplicable { + return ControllerStrategyCronJob, nil + } } - return ControllerStrategyKnativeService, nil + return ControllerStrategyDeployment, nil } // DetermineNamespace -- diff --git a/pkg/util/defaults/defaults.go b/pkg/util/defaults/defaults.go index 9a50e8af67..65b309e1a9 100644 --- a/pkg/util/defaults/defaults.go +++ b/pkg/util/defaults/defaults.go @@ -29,7 +29,7 @@ const ( DefaultCamelVersion = "3.0.0" // DefaultRuntimeVersion -- - DefaultRuntimeVersion = "1.0.9" + DefaultRuntimeVersion = "1.0.10" // DefaultCamelQuarkusVersion -- DefaultCamelQuarkusVersion = "1.0.0-M1" diff --git a/pkg/util/knative/uri.go b/pkg/util/knative/uri.go index 8b88959e8b..905a842c84 100644 --- a/pkg/util/knative/uri.go +++ b/pkg/util/knative/uri.go @@ -22,16 +22,20 @@ import ( "regexp" knativev1 "github.com/apache/camel-k/pkg/apis/camel/v1/knative" + uriutils "github.com/apache/camel-k/pkg/util/uri" v1 "k8s.io/api/core/v1" ) var uriRegexp = regexp.MustCompile(`^knative:[/]*(channel|endpoint|event)/([A-Za-z0-9.-]+)(?:[/?].*|$)`) var plainNameRegexp = regexp.MustCompile(`^[A-Za-z0-9.-]+$`) var queryExtractorRegexp = `^[^?]+\?(?:|.*[&])%s=([^&]+)(?:[&].*|$)` -var apiVersionRegexp = regexp.MustCompile(fmt.Sprintf(queryExtractorRegexp, "apiVersion")) -var kindRegexp = regexp.MustCompile(fmt.Sprintf(queryExtractorRegexp, "kind")) -var brokerNameRegexp = regexp.MustCompile(fmt.Sprintf(queryExtractorRegexp, "brokerName")) -var brokerAPIVersion = regexp.MustCompile(fmt.Sprintf(queryExtractorRegexp, "brokerApiVersion")) + +const ( + paramAPIVersion = "apiVersion" + paramKind = "kind" + paramBrokerName = "brokerName" + paramBrokerAPIVersion = "brokerApiVersion" +) // FilterURIs returns all Knative URIs of the given type from a slice func FilterURIs(uris []string, kind knativev1.CamelServiceType) []string { @@ -55,11 +59,11 @@ func NormalizeToURI(kind knativev1.CamelServiceType, uriOrString string) string // ExtractObjectReference returns a reference to the object described in the Knative URI func ExtractObjectReference(uri string) (v1.ObjectReference, error) { if isKnativeURI(knativev1.CamelServiceTypeEvent, uri) { - name := matchOrEmpty(brokerNameRegexp, 1, uri) + name := uriutils.GetQueryParameter(uri, paramBrokerName) if name == "" { name = "default" } - apiVersion := matchOrEmpty(brokerAPIVersion, 1, uri) + apiVersion := uriutils.GetQueryParameter(uri, paramBrokerAPIVersion) return v1.ObjectReference{ Name: name, APIVersion: apiVersion, @@ -70,8 +74,8 @@ func ExtractObjectReference(uri string) (v1.ObjectReference, error) { if name == "" { return v1.ObjectReference{}, fmt.Errorf("cannot find name in uri %s", uri) } - apiVersion := matchOrEmpty(apiVersionRegexp, 1, uri) - kind := matchOrEmpty(kindRegexp, 1, uri) + apiVersion := uriutils.GetQueryParameter(uri, paramAPIVersion) + kind := uriutils.GetQueryParameter(uri, paramKind) return v1.ObjectReference{ Name: name, APIVersion: apiVersion, diff --git a/pkg/util/kubernetes/collection.go b/pkg/util/kubernetes/collection.go index c75e7452a1..dd660c501f 100644 --- a/pkg/util/kubernetes/collection.go +++ b/pkg/util/kubernetes/collection.go @@ -22,6 +22,7 @@ import ( monitoringv1 "github.com/coreos/prometheus-operator/pkg/apis/monitoring/v1" routev1 "github.com/openshift/api/route/v1" appsv1 "k8s.io/api/apps/v1" + "k8s.io/api/batch/v1beta1" corev1 "k8s.io/api/core/v1" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "k8s.io/apimachinery/pkg/runtime" @@ -240,6 +241,15 @@ func (c *Collection) GetRoute(filter func(*routev1.Route) bool) *routev1.Route { return retValue } +// VisitCronJob executes the visitor function on all CronJob resources +func (c *Collection) VisitCronJob(visitor func(*v1beta1.CronJob)) { + c.Visit(func(res runtime.Object) { + if conv, ok := res.(*v1beta1.CronJob); ok { + visitor(conv) + } + }) +} + // VisitKnativeService executes the visitor function on all Knative serving Service resources func (c *Collection) VisitKnativeService(visitor func(*serving.Service)) { c.Visit(func(res runtime.Object) { @@ -304,6 +314,12 @@ func (c *Collection) VisitContainer(visitor func(container *corev1.Container)) { visitor(cntref) } }) + c.VisitCronJob(func(c *v1beta1.CronJob) { + for idx := range c.Spec.JobTemplate.Spec.Template.Spec.Containers { + cntref := &c.Spec.JobTemplate.Spec.Template.Spec.Containers[idx] + visitor(cntref) + } + }) } // VisitPodSpec executes the visitor function on all PodSpec inside deployments or other resources @@ -314,6 +330,9 @@ func (c *Collection) VisitPodSpec(visitor func(container *corev1.PodSpec)) { c.VisitKnativeConfigurationSpec(func(cs *serving.ConfigurationSpec) { visitor(&cs.Template.Spec.PodSpec) }) + c.VisitCronJob(func(d *v1beta1.CronJob) { + visitor(&d.Spec.JobTemplate.Spec.Template.Spec) + }) } // VisitKnativeConfigurationSpec executes the visitor function on all knative ConfigurationSpec inside serving Services diff --git a/pkg/util/uri/uri.go b/pkg/util/uri/uri.go new file mode 100644 index 0000000000..6e9122dbba --- /dev/null +++ b/pkg/util/uri/uri.go @@ -0,0 +1,58 @@ +/* +Licensed to the Apache Software Foundation (ASF) under one or more +contributor license agreements. See the NOTICE file distributed with +this work for additional information regarding copyright ownership. +The ASF licenses this file to You under the Apache License, Version 2.0 +(the "License"); you may not use this file except in compliance with +the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package uri + +import ( + "fmt" + "net/url" + "regexp" + "strings" + + "github.com/apache/camel-k/pkg/util/log" +) + +var queryExtractorRegexp = `^[^?]+\?(?:|.*[&])%s=([^&]+)(?:[&].*|$)` + +// GetComponent returns the Camel component used in the URI +func GetComponent(uri string) string { + parts := strings.Split(uri, ":") + if len(parts) <= 1 { + return "" + } + return parts[0] +} + +// GetQueryParameter returns the given parameter from the uri, if present +func GetQueryParameter(uri string, param string) string { + paramRegexp := regexp.MustCompile(fmt.Sprintf(queryExtractorRegexp, regexp.QuoteMeta(param))) + val := matchOrEmpty(paramRegexp, uri) + res, err := url.QueryUnescape(val) + if err != nil { + log.Error(err, fmt.Sprintf("Invalid character sequence in parameter %q", param)) + return "" + } + return res +} + +func matchOrEmpty(reg *regexp.Regexp, str string) string { + match := reg.FindStringSubmatch(str) + if len(match) > 1 { + return match[1] + } + return "" +} diff --git a/pkg/util/uri/uri_test.go b/pkg/util/uri/uri_test.go new file mode 100644 index 0000000000..049a53dcb3 --- /dev/null +++ b/pkg/util/uri/uri_test.go @@ -0,0 +1,90 @@ +/* +Licensed to the Apache Software Foundation (ASF) under one or more +contributor license agreements. See the NOTICE file distributed with +this work for additional information regarding copyright ownership. +The ASF licenses this file to You under the Apache License, Version 2.0 +(the "License"); you may not use this file except in compliance with +the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package uri + +import ( + "testing" + + "github.com/stretchr/testify/assert" +) + +func TestQueryParameter(t *testing.T) { + tests := []struct { + uri string + param string + expected string + component string + }{ + { + uri: "direct:endpoint", + param: "notPresent", + expected: "", + component: "direct", + }, + { + uri: "knative:endpoint/channel?brokerURI=123", + param: "brokeruri", + expected: "", + component: "knative", + }, + { + uri: "knative:endpoint/channel?brokerURI=123", + param: "brokerURI", + expected: "123", + component: "knative", + }, + { + uri: "timer:tick?delay=123&period=3s", + param: "period", + expected: "3s", + component: "timer", + }, + { + uri: "timer:tick?period=3s&delay=4s", + param: "period", + expected: "3s", + component: "timer", + }, + { + uri: "timer:tick?delay=123&period=3s", + param: ".*", + expected: "", + component: "timer", + }, + { + uri: "timer:tick?delay=123&period=3s", + param: ".", + expected: "", + component: "timer", + }, + { + uri: "tick&delay=123&period=3s", + param: "delay", + expected: "", + component: "", + }, + } + + for _, test := range tests { + t.Run(test.uri, func(t *testing.T) { + param := GetQueryParameter(test.uri, test.param) + assert.Equal(t, test.expected, param) + }) + } + +} diff --git a/script/Makefile b/script/Makefile index 3ddaca8e3a..f4eba74866 100644 --- a/script/Makefile +++ b/script/Makefile @@ -16,7 +16,7 @@ VERSIONFILE := pkg/util/defaults/defaults.go VERSION := 1.0.0-RC2-SNAPSHOT LAST_RELEASED_VERSION := 1.0.0-M4 -RUNTIME_VERSION := 1.0.9 +RUNTIME_VERSION := 1.0.10 CAMEL_VERSION := 3.0.0 CAMEL_QUARKUS_VERSION := 1.0.0-M1 QUARKUS_VERSION := 1.0.1.Final @@ -32,7 +32,7 @@ LINT_DEADLINE := 5m # Used to push pre-relase artifacts STAGING_IMAGE_NAME := docker.io/camelk/camel-k -STAGING_RUNTIME_REPO := https://repository.apache.org/content/repositories/orgapachecamel-1168 +STAGING_RUNTIME_REPO := https://repository.apache.org/content/repositories/orgapachecamel-1171 # When packaging artifacts into the docker image, you can "copy" them from local maven # or "download" them from Apache Snapshots and Maven Central