From 80632ade5a594418a717d9613f40354cc525e131 Mon Sep 17 00:00:00 2001 From: nicolaferraro Date: Mon, 1 Mar 2021 14:47:16 +0100 Subject: [PATCH] Fix #1799: use fully qualified integration kit --- .../bases/camel.apache.org_integrations.yaml | 124 +- .../camel.apache.org_kameletbindings.yaml | 61 + deploy/camel-catalog-1.6.0.yaml | 3210 ++++++++--------- .../camel.apache.org_integrations.yaml | 124 +- .../camel.apache.org_kameletbindings.yaml | 61 + .../schema/integration-schema.json | 73 +- e2e/support/test_support.go | 5 +- helm/camel-k/crds/crd-integration.yaml | 124 +- helm/camel-k/crds/crd-kamelet-binding.yaml | 61 + pkg/apis/camel/v1/integration_types.go | 65 +- .../camel/v1/integration_types_support.go | 20 +- pkg/apis/camel/v1/zz_generated.deepcopy.go | 10 + pkg/cmd/describe_integration.go | 7 +- pkg/cmd/get.go | 7 +- pkg/cmd/log.go | 10 +- pkg/cmd/run.go | 18 +- pkg/controller/integration/build_kit.go | 11 +- pkg/controller/integration/deploy.go | 6 +- pkg/controller/integration/initialize.go | 30 +- pkg/controller/integration/util.go | 15 +- .../integrationkit_controller.go | 36 +- pkg/trait/jvm.go | 16 +- pkg/trait/pull_secret.go | 4 +- pkg/trait/trait_types.go | 7 +- pkg/trait/util.go | 10 +- pkg/util/digest/digest.go | 6 +- 26 files changed, 2409 insertions(+), 1712 deletions(-) diff --git a/config/crd/bases/camel.apache.org_integrations.yaml b/config/crd/bases/camel.apache.org_integrations.yaml index c28a5a8c92..96e26b9e2f 100644 --- a/config/crd/bases/camel.apache.org_integrations.yaml +++ b/config/crd/bases/camel.apache.org_integrations.yaml @@ -44,7 +44,7 @@ spec: name: Phase type: string - description: The integration kit - jsonPath: .status.kit + jsonPath: .status.integrationKit.name name: Kit type: string - description: The number of pods @@ -95,7 +95,67 @@ spec: type: object x-kubernetes-preserve-unknown-fields: true type: array + integrationKit: + description: 'ObjectReference contains enough information to let you + inspect or modify the referred object. --- New uses of this type + are discouraged because of difficulty describing its usage when + embedded in APIs. 1. Ignored fields. It includes many fields which + are not generally honored. For instance, ResourceVersion and FieldPath + are both very rarely valid in actual usage. 2. Invalid usage help. It + is impossible to add specific help for individual usage. In most + embedded usages, there are particular restrictions like, "must + refer only to types A and B" or "UID not honored" or "name must + be restricted". Those cannot be well described when embedded. 3. + Inconsistent validation. Because the usages are different, the + validation rules are different by usage, which makes it hard for + users to predict what will happen. 4. The fields are both imprecise + and overly precise. Kind is not a precise mapping to a URL. This + can produce ambiguity during interpretation and require a REST + mapping. In most cases, the dependency is on the group,resource + tuple and the version of the actual struct is irrelevant. 5. + We cannot easily change it. Because this type is embedded in many + locations, updates to this type will affect numerous schemas. Don''t + make new APIs embed an underspecified API type they do not control. + Instead of using this type, create a locally provided and used type + that is well-focused on your reference. For example, ServiceReferences + for admission registration: https://github.com/kubernetes/api/blob/release-1.17/admissionregistration/v1/types.go#L533 + .' + properties: + apiVersion: + description: API version of the referent. + type: string + fieldPath: + description: 'If referring to a piece of an object instead of + an entire object, this string should contain a valid JSON/Go + field access statement, such as desiredState.manifest.containers[2]. + For example, if the object reference is to a container within + a pod, this would take on a value like: "spec.containers{name}" + (where "name" refers to the name of the container that triggered + the event) or if no container name is specified "spec.containers[2]" + (container with index 2 in this pod). This syntax is chosen + only to have some well-defined way of referencing a part of + an object. TODO: this design is not final and this field is + subject to change in the future.' + type: string + kind: + description: 'Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + type: string + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names' + type: string + namespace: + description: 'Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/' + type: string + resourceVersion: + description: 'Specific resourceVersion to which this reference + is made, if any. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency' + type: string + uid: + description: 'UID of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids' + type: string + type: object kit: + description: 'Deprecated: use the IntegrationKit field' type: string profile: description: TraitProfile represents lists of traits that are enabled @@ -355,7 +415,67 @@ spec: type: array image: type: string + integrationKit: + description: 'ObjectReference contains enough information to let you + inspect or modify the referred object. --- New uses of this type + are discouraged because of difficulty describing its usage when + embedded in APIs. 1. Ignored fields. It includes many fields which + are not generally honored. For instance, ResourceVersion and FieldPath + are both very rarely valid in actual usage. 2. Invalid usage help. It + is impossible to add specific help for individual usage. In most + embedded usages, there are particular restrictions like, "must + refer only to types A and B" or "UID not honored" or "name must + be restricted". Those cannot be well described when embedded. 3. + Inconsistent validation. Because the usages are different, the + validation rules are different by usage, which makes it hard for + users to predict what will happen. 4. The fields are both imprecise + and overly precise. Kind is not a precise mapping to a URL. This + can produce ambiguity during interpretation and require a REST + mapping. In most cases, the dependency is on the group,resource + tuple and the version of the actual struct is irrelevant. 5. + We cannot easily change it. Because this type is embedded in many + locations, updates to this type will affect numerous schemas. Don''t + make new APIs embed an underspecified API type they do not control. + Instead of using this type, create a locally provided and used type + that is well-focused on your reference. For example, ServiceReferences + for admission registration: https://github.com/kubernetes/api/blob/release-1.17/admissionregistration/v1/types.go#L533 + .' + properties: + apiVersion: + description: API version of the referent. + type: string + fieldPath: + description: 'If referring to a piece of an object instead of + an entire object, this string should contain a valid JSON/Go + field access statement, such as desiredState.manifest.containers[2]. + For example, if the object reference is to a container within + a pod, this would take on a value like: "spec.containers{name}" + (where "name" refers to the name of the container that triggered + the event) or if no container name is specified "spec.containers[2]" + (container with index 2 in this pod). This syntax is chosen + only to have some well-defined way of referencing a part of + an object. TODO: this design is not final and this field is + subject to change in the future.' + type: string + kind: + description: 'Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + type: string + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names' + type: string + namespace: + description: 'Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/' + type: string + resourceVersion: + description: 'Specific resourceVersion to which this reference + is made, if any. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency' + type: string + uid: + description: 'UID of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids' + type: string + type: object kit: + description: 'Deprecated: use the IntegrationKit field' type: string lastInitTimestamp: description: The timestamp representing the last time when this integration @@ -367,8 +487,6 @@ spec: type: string platform: type: string - platformNamespace: - type: string profile: description: TraitProfile represents lists of traits that are enabled for the specific installation/integration diff --git a/config/crd/bases/camel.apache.org_kameletbindings.yaml b/config/crd/bases/camel.apache.org_kameletbindings.yaml index 5a427b5af4..c9a8b8724f 100644 --- a/config/crd/bases/camel.apache.org_kameletbindings.yaml +++ b/config/crd/bases/camel.apache.org_kameletbindings.yaml @@ -91,7 +91,68 @@ spec: type: object x-kubernetes-preserve-unknown-fields: true type: array + integrationKit: + description: 'ObjectReference contains enough information to let + you inspect or modify the referred object. --- New uses of this + type are discouraged because of difficulty describing its usage + when embedded in APIs. 1. Ignored fields. It includes many + fields which are not generally honored. For instance, ResourceVersion + and FieldPath are both very rarely valid in actual usage. 2. + Invalid usage help. It is impossible to add specific help for + individual usage. In most embedded usages, there are particular restrictions + like, "must refer only to types A and B" or "UID not honored" + or "name must be restricted". Those cannot be well described + when embedded. 3. Inconsistent validation. Because the usages + are different, the validation rules are different by usage, + which makes it hard for users to predict what will happen. 4. + The fields are both imprecise and overly precise. Kind is not + a precise mapping to a URL. This can produce ambiguity during + interpretation and require a REST mapping. In most cases, the + dependency is on the group,resource tuple and the version + of the actual struct is irrelevant. 5. We cannot easily change + it. Because this type is embedded in many locations, updates + to this type will affect numerous schemas. Don''t make + new APIs embed an underspecified API type they do not control. + Instead of using this type, create a locally provided and used + type that is well-focused on your reference. For example, ServiceReferences + for admission registration: https://github.com/kubernetes/api/blob/release-1.17/admissionregistration/v1/types.go#L533 + .' + properties: + apiVersion: + description: API version of the referent. + type: string + fieldPath: + description: 'If referring to a piece of an object instead + of an entire object, this string should contain a valid + JSON/Go field access statement, such as desiredState.manifest.containers[2]. + For example, if the object reference is to a container within + a pod, this would take on a value like: "spec.containers{name}" + (where "name" refers to the name of the container that triggered + the event) or if no container name is specified "spec.containers[2]" + (container with index 2 in this pod). This syntax is chosen + only to have some well-defined way of referencing a part + of an object. TODO: this design is not final and this field + is subject to change in the future.' + type: string + kind: + description: 'Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + type: string + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names' + type: string + namespace: + description: 'Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/' + type: string + resourceVersion: + description: 'Specific resourceVersion to which this reference + is made, if any. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency' + type: string + uid: + description: 'UID of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids' + type: string + type: object kit: + description: 'Deprecated: use the IntegrationKit field' type: string profile: description: TraitProfile represents lists of traits that are diff --git a/deploy/camel-catalog-1.6.0.yaml b/deploy/camel-catalog-1.6.0.yaml index e1051d02b1..2f0f7b1ba5 100644 --- a/deploy/camel-catalog-1.6.0.yaml +++ b/deploy/camel-catalog-1.6.0.yaml @@ -20,9 +20,9 @@ kind: CamelCatalog metadata: name: camel-catalog-1.6.0 labels: - camel.apache.org/catalog.loader.version: 3.7.0 - camel.apache.org/runtime.version: 1.6.0 camel.apache.org/catalog.version: 3.7.0 + camel.apache.org/runtime.version: 1.6.0 + camel.apache.org/catalog.loader.version: 3.7.0 app: camel-k spec: runtime: @@ -30,1415 +30,1352 @@ spec: provider: quarkus applicationClass: io.quarkus.runner.GeneratedMain metadata: - camel-quarkus.version: 1.5.0 camel.version: 3.7.0 + camel-quarkus.version: 1.5.0 quarkus.version: 1.10.3.Final dependencies: - groupId: org.apache.camel.k artifactId: camel-k-runtime capabilities: - rest: + health: dependencies: - groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-platform-http + artifactId: camel-quarkus-microprofile-health + platform-http: + dependencies: - groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-rest + artifactId: camel-quarkus-platform-http cron: dependencies: - groupId: org.apache.camel.k artifactId: camel-k-cron - platform-http: + rest: dependencies: - groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-platform-http - health: - dependencies: + artifactId: camel-quarkus-rest - groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-microprofile-health - circuit-breaker: + artifactId: camel-quarkus-platform-http + tracing: dependencies: - groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-microprofile-fault-tolerance + artifactId: camel-quarkus-opentracing master: dependencies: - groupId: org.apache.camel.k artifactId: camel-k-master - tracing: + circuit-breaker: dependencies: - groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-opentracing + artifactId: camel-quarkus-microprofile-fault-tolerance artifacts: - camel-quarkus-ipfs: + camel-quarkus-flink: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-ipfs + artifactId: camel-quarkus-flink schemes: - - id: ipfs + - id: flink http: false passive: false javaTypes: - - org.apache.camel.component.ipfs.IPFSComponent - camel-quarkus-grpc: + - org.apache.camel.component.flink.FlinkComponent + camel-quarkus-amqp: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-grpc + artifactId: camel-quarkus-amqp schemes: - - id: grpc - http: true + - id: amqp + http: false passive: false javaTypes: - - org.apache.camel.component.grpc.GrpcComponent - camel-quarkus-servicenow: + - org.apache.camel.component.amqp.AMQPComponent + camel-quarkus-guava-eventbus: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-servicenow + artifactId: camel-quarkus-guava-eventbus schemes: - - id: servicenow + - id: guava-eventbus http: false passive: false javaTypes: - - org.apache.camel.component.servicenow.ServiceNowComponent - camel-quarkus-sap-netweaver: + - org.apache.camel.component.guava.eventbus.GuavaEventBusComponent + camel-quarkus-pulsar: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-sap-netweaver + artifactId: camel-quarkus-pulsar schemes: - - id: sap-netweaver + - id: pulsar http: false passive: false javaTypes: - - org.apache.camel.component.sap.netweaver.NetWeaverComponent - camel-quarkus-aws-sdb: + - org.apache.camel.component.pulsar.PulsarComponent + camel-quarkus-jpa: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-aws-sdb + artifactId: camel-quarkus-jpa schemes: - - id: aws-sdb + - id: jpa http: false passive: false javaTypes: - - org.apache.camel.component.aws.sdb.SdbComponent - camel-quarkus-hbase: + - org.apache.camel.component.jpa.JpaComponent + camel-quarkus-aws2-ddb: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-hbase + artifactId: camel-quarkus-aws2-ddb schemes: - - id: hbase + - id: aws2-ddb + http: false + passive: false + - id: aws2-ddbstream http: false passive: false javaTypes: - - org.apache.camel.component.hbase.HBaseComponent - camel-quarkus-yammer: + - org.apache.camel.component.aws2.ddb.Ddb2Component + - org.apache.camel.component.aws2.ddbstream.Ddb2StreamComponent + camel-quarkus-mock: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-yammer + artifactId: camel-quarkus-mock schemes: - - id: yammer + - id: mock + http: false + passive: true + javaTypes: + - org.apache.camel.component.mock.MockComponent + camel-quarkus-iec60870: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-iec60870 + schemes: + - id: iec60870-server + http: false + passive: false + - id: iec60870-client http: false passive: false javaTypes: - - org.apache.camel.component.yammer.YammerComponent - camel-quarkus-jgroups: + - org.apache.camel.component.iec60870.client.ClientComponent + - org.apache.camel.component.iec60870.server.ServerComponent + camel-quarkus-weka: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-jgroups + artifactId: camel-quarkus-weka schemes: - - id: jgroups + - id: weka http: false passive: false javaTypes: - - org.apache.camel.component.jgroups.JGroupsComponent - camel-quarkus-dataformat: + - org.apache.camel.component.weka.WekaComponent + camel-quarkus-controlbus: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-dataformat + artifactId: camel-quarkus-controlbus schemes: - - id: dataformat + - id: controlbus http: false passive: true javaTypes: - - org.apache.camel.component.dataformat.DataFormatComponent - camel-quarkus-jing: + - org.apache.camel.component.controlbus.ControlBusComponent + camel-quarkus-vertx: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-jing + artifactId: camel-quarkus-vertx schemes: - - id: jing + - id: vertx http: false passive: false javaTypes: - - org.apache.camel.component.validator.jing.JingComponent - camel-quarkus-jaxb: - groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-jaxb - dataformats: - - jaxb - javaTypes: - - org.apache.camel.converter.jaxb.JaxbDataFormat - camel-quarkus-scheduler: + - org.apache.camel.component.vertx.VertxComponent + camel-quarkus-jdbc: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-scheduler + artifactId: camel-quarkus-jdbc schemes: - - id: scheduler + - id: jdbc http: false passive: false javaTypes: - - org.apache.camel.component.scheduler.SchedulerComponent - camel-quarkus-weather: + - org.apache.camel.component.jdbc.JdbcComponent + camel-quarkus-consul: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-weather + artifactId: camel-quarkus-consul schemes: - - id: weather + - id: consul http: false passive: false javaTypes: - - org.apache.camel.component.weather.WeatherComponent - camel-quarkus-aws2-eks: + - org.apache.camel.component.consul.ConsulComponent + camel-quarkus-ognl: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-aws2-eks + artifactId: camel-quarkus-ognl + languages: + - ognl + javaTypes: + - org.apache.camel.language.ognl.OgnlLanguage + camel-quarkus-facebook: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-facebook schemes: - - id: aws2-eks + - id: facebook http: false passive: false javaTypes: - - org.apache.camel.component.aws2.eks.EKS2Component - camel-quarkus-jsonapi: + - org.apache.camel.component.facebook.FacebookComponent + camel-quarkus-xpath: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-jsonapi - dataformats: - - jsonApi + artifactId: camel-quarkus-xpath + languages: + - xpath javaTypes: - - org.apache.camel.component.jsonapi.JsonApiDataFormat - camel-quarkus-iota: + - org.apache.camel.language.xpath.XPathLanguage + camel-quarkus-nsq: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-iota + artifactId: camel-quarkus-nsq schemes: - - id: iota + - id: nsq http: false passive: false javaTypes: - - org.apache.camel.component.iota.IOTAComponent - camel-quarkus-jt400: + - org.apache.camel.component.nsq.NsqComponent + camel-quarkus-jsonb: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-jt400 + artifactId: camel-quarkus-jsonb + dataformats: + - json-jsonb + javaTypes: + - org.apache.camel.component.jsonb.JsonbDataFormat + camel-quarkus-aws2-sns: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-aws2-sns schemes: - - id: jt400 + - id: aws2-sns http: false passive: false javaTypes: - - org.apache.camel.component.jt400.Jt400Component - camel-quarkus-aws2-sqs: + - org.apache.camel.component.aws2.sns.Sns2Component + camel-quarkus-mvel: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-aws2-sqs + artifactId: camel-quarkus-mvel schemes: - - id: aws2-sqs + - id: mvel http: false passive: false + languages: + - mvel javaTypes: - - org.apache.camel.component.aws2.sqs.Sqs2Component - camel-quarkus-stub: + - org.apache.camel.component.mvel.MvelComponent + - org.apache.camel.language.mvel.MvelLanguage + camel-quarkus-univocity-parsers: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-stub + artifactId: camel-quarkus-univocity-parsers + dataformats: + - univocity-tsv + - univocity-fixed + - univocity-csv + javaTypes: + - org.apache.camel.dataformat.univocity.UniVocityCsvDataFormat + - org.apache.camel.dataformat.univocity.UniVocityTsvDataFormat + - org.apache.camel.dataformat.univocity.UniVocityFixedWidthDataFormat + camel-quarkus-ref: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-ref schemes: - - id: stub + - id: ref http: false passive: true javaTypes: - - org.apache.camel.component.stub.StubComponent - camel-quarkus-pubnub: + - org.apache.camel.component.ref.RefComponent + camel-quarkus-lzf: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-pubnub - schemes: - - id: pubnub - http: false - passive: false + artifactId: camel-quarkus-lzf + dataformats: + - lzf javaTypes: - - org.apache.camel.component.pubnub.PubNubComponent - camel-quarkus-aws-swf: + - org.apache.camel.dataformat.lzf.LZFDataFormat + camel-quarkus-paho: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-aws-swf + artifactId: camel-quarkus-paho schemes: - - id: aws-swf + - id: paho http: false passive: false javaTypes: - - org.apache.camel.component.aws.swf.SWFComponent - camel-quarkus-twitter: + - org.apache.camel.component.paho.PahoComponent + camel-quarkus-vm: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-twitter + artifactId: camel-quarkus-vm schemes: - - id: twitter-directmessage + - id: vm http: false - passive: false - - id: twitter-timeline - http: false - passive: false - - id: twitter-search - http: false - passive: false + passive: true javaTypes: - - org.apache.camel.component.twitter.directmessage.TwitterDirectMessageComponent - - org.apache.camel.component.twitter.search.TwitterSearchComponent - - org.apache.camel.component.twitter.timeline.TwitterTimelineComponent - camel-quarkus-aws2-kinesis: + - org.apache.camel.component.vm.VmComponent + camel-quarkus-bindy: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-aws2-kinesis - schemes: - - id: aws2-kinesis-firehose - http: false - passive: false - - id: aws2-kinesis - http: false - passive: false + artifactId: camel-quarkus-bindy + dataformats: + - bindy-kvp + - bindy-csv + - bindy-fixed javaTypes: - - org.apache.camel.component.aws2.firehose.KinesisFirehose2Component - - org.apache.camel.component.aws2.kinesis.Kinesis2Component - camel-quarkus-ganglia: + - org.apache.camel.dataformat.bindy.fixed.BindyFixedLengthDataFormat + - org.apache.camel.dataformat.bindy.kvp.BindyKeyValuePairDataFormat + - org.apache.camel.dataformat.bindy.csv.BindyCsvDataFormat + camel-quarkus-jslt: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-ganglia + artifactId: camel-quarkus-jslt schemes: - - id: ganglia + - id: jslt http: false passive: false javaTypes: - - org.apache.camel.component.ganglia.GangliaComponent - camel-quarkus-telegram: + - org.apache.camel.component.jslt.JsltComponent + camel-quarkus-apns: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-telegram + artifactId: camel-quarkus-apns schemes: - - id: telegram + - id: apns http: false passive: false javaTypes: - - org.apache.camel.component.telegram.TelegramComponent - camel-quarkus-http: + - org.apache.camel.component.apns.ApnsComponent + camel-quarkus-optaplanner: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-http + artifactId: camel-quarkus-optaplanner schemes: - - id: http - http: false - passive: false - - id: https + - id: optaplanner http: false passive: false javaTypes: - - org.apache.camel.component.http.HttpComponent - camel-quarkus-jolt: + - org.apache.camel.component.optaplanner.OptaPlannerComponent + camel-quarkus-xstream: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-jolt + artifactId: camel-quarkus-xstream + dataformats: + - json-xstream + - xstream + javaTypes: + - org.apache.camel.dataformat.xstream.XStreamDataFormat + - org.apache.camel.dataformat.xstream.JsonDataFormat + camel-quarkus-debezium-mongodb: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-debezium-mongodb schemes: - - id: jolt + - id: debezium-mongodb http: false passive: false javaTypes: - - org.apache.camel.component.jolt.JoltComponent - camel-quarkus-netty: + - org.apache.camel.component.debezium.DebeziumMongodbComponent + camel-quarkus-jacksonxml: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-netty + artifactId: camel-quarkus-jacksonxml + dataformats: + - jacksonxml + javaTypes: + - org.apache.camel.component.jacksonxml.JacksonXMLDataFormat + camel-quarkus-zookeeper-master: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-zookeeper-master schemes: - - id: netty + - id: zookeeper-master http: false passive: false javaTypes: - - org.apache.camel.component.netty.NettyComponent - camel-quarkus-micrometer: + - org.apache.camel.component.zookeepermaster.MasterComponent + camel-k-knative: + groupId: org.apache.camel.k + artifactId: camel-k-knative + schemes: + - id: knative + http: true + passive: false + producer: + dependencies: + - groupId: org.apache.camel.k + artifactId: camel-k-knative-producer + consumer: + dependencies: + - groupId: org.apache.camel.k + artifactId: camel-k-knative-consumer + camel-quarkus-language: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-micrometer + artifactId: camel-quarkus-language schemes: - - id: micrometer + - id: language http: false - passive: false + passive: true javaTypes: - - org.apache.camel.component.micrometer.MicrometerComponent - camel-quarkus-elsql: + - org.apache.camel.component.language.LanguageComponent + camel-quarkus-schematron: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-elsql + artifactId: camel-quarkus-schematron schemes: - - id: elsql + - id: schematron http: false passive: false javaTypes: - - org.apache.camel.component.elsql.ElsqlComponent - camel-quarkus-cbor: + - org.apache.camel.component.schematron.SchematronComponent + camel-quarkus-asn1: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-cbor + artifactId: camel-quarkus-asn1 dataformats: - - cbor + - asn1 javaTypes: - - org.apache.camel.component.cbor.CBORDataFormat - camel-quarkus-mybatis: + - org.apache.camel.dataformat.asn1.ASN1DataFormat + camel-quarkus-aws2-cw: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-mybatis + artifactId: camel-quarkus-aws2-cw schemes: - - id: mybatis - http: false - passive: false - - id: mybatis-bean + - id: aws2-cw http: false passive: false javaTypes: - - org.apache.camel.component.mybatis.MyBatisBeanComponent - - org.apache.camel.component.mybatis.MyBatisComponent - camel-quarkus-file: + - org.apache.camel.component.aws2.cw.Cw2Component + camel-quarkus-sip: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-file + artifactId: camel-quarkus-sip schemes: - - id: file + - id: sips http: false passive: false - javaTypes: - - org.apache.camel.component.file.FileComponent - camel-quarkus-robotframework: - groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-robotframework - schemes: - - id: robotframework + - id: sip http: false passive: false javaTypes: - - org.apache.camel.component.robotframework.RobotFrameworkComponent - camel-quarkus-file-watch: + - org.apache.camel.component.sip.SipComponent + camel-quarkus-thrift: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-file-watch + artifactId: camel-quarkus-thrift schemes: - - id: file-watch + - id: thrift http: false passive: false + dataformats: + - thrift javaTypes: - - org.apache.camel.component.file.watch.FileWatchComponent - camel-quarkus-rest-openapi: + - org.apache.camel.dataformat.thrift.ThriftDataFormat + - org.apache.camel.component.thrift.ThriftComponent + camel-quarkus-jms: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-rest-openapi + artifactId: camel-quarkus-jms schemes: - - id: rest-openapi + - id: jms http: false passive: false javaTypes: - - org.apache.camel.component.rest.openapi.RestOpenApiComponent - camel-quarkus-jclouds: + - org.apache.camel.component.jms.JmsComponent + camel-quarkus-pg-replication-slot: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-jclouds + artifactId: camel-quarkus-pg-replication-slot schemes: - - id: jclouds + - id: pg-replication-slot http: false passive: false javaTypes: - - org.apache.camel.component.jclouds.JcloudsComponent - camel-quarkus-quickfix: + - org.apache.camel.component.pg.replication.slot.PgReplicationSlotComponent + camel-quarkus-quartz: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-quickfix + artifactId: camel-quarkus-quartz schemes: - - id: quickfix + - id: quartz http: false passive: false javaTypes: - - org.apache.camel.component.quickfixj.QuickfixjComponent - camel-quarkus-solr: + - org.apache.camel.component.quartz.QuartzComponent + camel-quarkus-etcd: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-solr + artifactId: camel-quarkus-etcd schemes: - - id: solr + - id: etcd-keys http: false passive: false - - id: solrs + - id: etcd-watch http: false passive: false - - id: solrCloud + - id: etcd-stats http: false passive: false javaTypes: - - org.apache.camel.component.solr.SolrComponent - camel-quarkus-johnzon: - groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-johnzon - dataformats: - - json-johnzon - javaTypes: - - org.apache.camel.component.johnzon.JohnzonDataFormat - camel-quarkus-fop: + - org.apache.camel.component.etcd.EtcdWatchComponent + - org.apache.camel.component.etcd.EtcdKeysComponent + - org.apache.camel.component.etcd.EtcdStatsComponent + camel-quarkus-as2: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-fop + artifactId: camel-quarkus-as2 schemes: - - id: fop + - id: as2 http: false passive: false javaTypes: - - org.apache.camel.component.fop.FopComponent - camel-quarkus-saga: + - org.apache.camel.component.as2.AS2Component + camel-quarkus-atmos: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-saga + artifactId: camel-quarkus-atmos schemes: - - id: saga + - id: atmos http: false passive: false javaTypes: - - org.apache.camel.component.saga.SagaComponent - camel-quarkus-beanstalk: - groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-beanstalk + - org.apache.camel.component.atmos.AtmosComponent + camel-k-kamelet-reify: + groupId: org.apache.camel.k + artifactId: camel-k-kamelet-reify schemes: - - id: beanstalk + - id: wrap http: false passive: false - javaTypes: - - org.apache.camel.component.beanstalk.BeanstalkComponent - camel-quarkus-xslt: + camel-quarkus-xchange: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-xslt + artifactId: camel-quarkus-xchange schemes: - - id: xslt + - id: xchange http: false passive: false javaTypes: - - org.apache.camel.component.xslt.XsltComponent - camel-quarkus-rest: + - org.apache.camel.component.xchange.XChangeComponent + camel-quarkus-ldap: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-rest + artifactId: camel-quarkus-ldap schemes: - - id: rest-api + - id: ldap http: false passive: false - - id: rest - http: true - passive: false - javaTypes: - - org.apache.camel.component.rest.RestApiComponent - - org.apache.camel.component.rest.RestComponent - camel-quarkus-groovy: - groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-groovy - languages: - - groovy javaTypes: - - org.apache.camel.language.groovy.GroovyLanguage - camel-quarkus-xmlsecurity: + - org.apache.camel.component.ldap.LdapComponent + camel-quarkus-sjms2: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-xmlsecurity + artifactId: camel-quarkus-sjms2 schemes: - - id: xmlsecurity-sign - http: false - passive: false - - id: xmlsecurity-verify + - id: sjms2 http: false passive: false - dataformats: - - secureXML javaTypes: - - org.apache.camel.dataformat.xmlsecurity.XMLSecurityDataFormat - - org.apache.camel.component.xmlsecurity.XmlVerifierComponent - - org.apache.camel.component.xmlsecurity.XmlSignerComponent - camel-quarkus-azure: + - org.apache.camel.component.sjms2.Sjms2Component + camel-quarkus-zookeeper: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-azure + artifactId: camel-quarkus-zookeeper schemes: - - id: azure-queue - http: false - passive: false - - id: azure-blob + - id: zookeeper http: false passive: false javaTypes: - - org.apache.camel.component.azure.blob.BlobServiceComponent - - org.apache.camel.component.azure.queue.QueueServiceComponent - camel-quarkus-aws-translate: + - org.apache.camel.component.zookeeper.ZooKeeperComponent + camel-quarkus-olingo4: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-aws-translate + artifactId: camel-quarkus-olingo4 schemes: - - id: aws-translate + - id: olingo4 http: false passive: false javaTypes: - - org.apache.camel.component.aws.translate.TranslateComponent - camel-quarkus-chatscript: + - org.apache.camel.component.olingo4.Olingo4Component + camel-quarkus-aws-sqs: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-chatscript + artifactId: camel-quarkus-aws-sqs schemes: - - id: chatscript + - id: aws-sqs http: false passive: false javaTypes: - - org.apache.camel.component.chatscript.ChatScriptComponent - camel-quarkus-rabbitmq: + - org.apache.camel.component.aws.sqs.SqsComponent + camel-quarkus-braintree: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-rabbitmq + artifactId: camel-quarkus-braintree schemes: - - id: rabbitmq + - id: braintree http: false passive: false javaTypes: - - org.apache.camel.component.rabbitmq.RabbitMQComponent - camel-quarkus-reactive-streams: + - org.apache.camel.component.braintree.BraintreeComponent + camel-quarkus-zendesk: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-reactive-streams + artifactId: camel-quarkus-zendesk schemes: - - id: reactive-streams + - id: zendesk http: false passive: false javaTypes: - - org.apache.camel.component.reactive.streams.ReactiveStreamsComponent - camel-quarkus-azure-storage-queue: + - org.apache.camel.component.zendesk.ZendeskComponent + camel-quarkus-twilio: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-azure-storage-queue + artifactId: camel-quarkus-twilio schemes: - - id: azure-storage-queue + - id: twilio http: false passive: false javaTypes: - - org.apache.camel.component.azure.storage.queue.QueueComponent - camel-quarkus-cron: + - org.apache.camel.component.twilio.TwilioComponent + camel-quarkus-activemq: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-cron + artifactId: camel-quarkus-activemq schemes: - - id: cron + - id: activemq http: false passive: false javaTypes: - - org.apache.camel.component.cron.CronComponent - camel-quarkus-mongodb-gridfs: + - org.apache.camel.component.activemq.ActiveMQComponent + camel-quarkus-nitrite: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-mongodb-gridfs + artifactId: camel-quarkus-nitrite schemes: - - id: mongodb-gridfs + - id: nitrite http: false passive: false javaTypes: - - org.apache.camel.component.mongodb.gridfs.GridFsComponent - camel-quarkus-ignite: + - org.apache.camel.component.nitrite.NitriteComponent + camel-quarkus-seda: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-ignite + artifactId: camel-quarkus-seda schemes: - - id: ignite-set - http: false - passive: false - - id: ignite-queue - http: false - passive: false - - id: ignite-events - http: false - passive: false - - id: ignite-messaging - http: false - passive: false - - id: ignite-compute + - id: seda http: false - passive: false - - id: ignite-cache + passive: true + javaTypes: + - org.apache.camel.component.seda.SedaComponent + camel-quarkus-aws-eks: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-aws-eks + schemes: + - id: aws-eks http: false passive: false - - id: ignite-idgen + javaTypes: + - org.apache.camel.component.aws.eks.EKSComponent + camel-quarkus-dozer: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-dozer + schemes: + - id: dozer http: false passive: false javaTypes: - - org.apache.camel.component.ignite.queue.IgniteQueueComponent - - org.apache.camel.component.ignite.messaging.IgniteMessagingComponent - - org.apache.camel.component.ignite.set.IgniteSetComponent - - org.apache.camel.component.ignite.idgen.IgniteIdGenComponent - - org.apache.camel.component.ignite.cache.IgniteCacheComponent - - org.apache.camel.component.ignite.events.IgniteEventsComponent - - org.apache.camel.component.ignite.compute.IgniteComputeComponent - camel-quarkus-web3j: + - org.apache.camel.component.dozer.DozerComponent + camel-quarkus-splunk: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-web3j + artifactId: camel-quarkus-splunk schemes: - - id: web3j + - id: splunk http: false passive: false javaTypes: - - org.apache.camel.component.web3j.Web3jComponent - camel-quarkus-aws-ec2: + - org.apache.camel.component.splunk.SplunkComponent + camel-quarkus-google-drive: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-aws-ec2 + artifactId: camel-quarkus-google-drive schemes: - - id: aws-ec2 + - id: google-drive http: false passive: false javaTypes: - - org.apache.camel.component.aws.ec2.EC2Component - camel-quarkus-ldif: + - org.apache.camel.component.google.drive.GoogleDriveComponent + camel-quarkus-sjms: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-ldif + artifactId: camel-quarkus-sjms schemes: - - id: ldif + - id: sjms + http: false + passive: false + - id: sjms-batch http: false passive: false javaTypes: - - org.apache.camel.component.ldif.LdifComponent - camel-quarkus-xml-jaxp: + - org.apache.camel.component.sjms.batch.SjmsBatchComponent + - org.apache.camel.component.sjms.SjmsComponent + camel-quarkus-ical: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-xml-jaxp - languages: - - xtokenize + artifactId: camel-quarkus-ical + dataformats: + - ical javaTypes: - - org.apache.camel.language.xtokenizer.XMLTokenizeLanguage - camel-quarkus-corda: + - org.apache.camel.component.ical.ICalDataFormat + camel-quarkus-cassandraql: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-corda + artifactId: camel-quarkus-cassandraql schemes: - - id: corda + - id: cql http: false passive: false javaTypes: - - org.apache.camel.component.corda.CordaComponent - camel-quarkus-github: + - org.apache.camel.component.cassandra.CassandraComponent + camel-quarkus-jgroups-raft: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-github + artifactId: camel-quarkus-jgroups-raft schemes: - - id: github + - id: jgroups-raft http: false passive: false javaTypes: - - org.apache.camel.component.github.GitHubComponent - camel-quarkus-aws2-eventbridge: + - org.apache.camel.component.jgroups.raft.JGroupsRaftComponent + camel-quarkus-mongodb: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-aws2-eventbridge + artifactId: camel-quarkus-mongodb schemes: - - id: aws2-eventbridge + - id: mongodb http: false passive: false javaTypes: - - org.apache.camel.component.aws2.eventbridge.EventbridgeComponent - camel-quarkus-xmpp: + - org.apache.camel.component.mongodb.MongoDbComponent + camel-quarkus-dns: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-xmpp + artifactId: camel-quarkus-dns schemes: - - id: xmpp + - id: dns http: false passive: false javaTypes: - - org.apache.camel.component.xmpp.XmppComponent - camel-quarkus-aws-lambda: + - org.apache.camel.component.dns.DnsComponent + camel-k-webhook: + groupId: org.apache.camel.k + artifactId: camel-k-webhook + schemes: + - id: webhook + http: true + passive: true + camel-quarkus-chunk: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-aws-lambda + artifactId: camel-quarkus-chunk schemes: - - id: aws-lambda + - id: chunk http: false passive: false javaTypes: - - org.apache.camel.component.aws.lambda.LambdaComponent - camel-quarkus-minio: + - org.apache.camel.component.chunk.ChunkComponent + camel-quarkus-cometd: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-minio + artifactId: camel-quarkus-cometd schemes: - - id: minio + - id: cometds + http: false + passive: false + - id: cometd http: false passive: false javaTypes: - - org.apache.camel.component.minio.MinioComponent - camel-quarkus-atlasmap: + - org.apache.camel.component.cometd.CometdComponent + camel-quarkus-drill: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-atlasmap + artifactId: camel-quarkus-drill schemes: - - id: atlasmap + - id: drill http: false passive: false javaTypes: - - org.apache.camel.component.atlasmap.AtlasMapComponent - camel-quarkus-aws2-sts: + - org.apache.camel.component.drill.DrillComponent + camel-quarkus-soroush: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-aws2-sts + artifactId: camel-quarkus-soroush schemes: - - id: aws2-sts + - id: soroush http: false passive: false javaTypes: - - org.apache.camel.component.aws2.sts.STS2Component - camel-quarkus-tarfile: + - org.apache.camel.component.soroushbot.component.SoroushBotComponent + camel-quarkus-atom: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-tarfile - dataformats: - - tarfile - javaTypes: - - org.apache.camel.dataformat.tarfile.TarFileDataFormat - camel-quarkus-avro: - groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-avro - dataformats: - - avro - javaTypes: - - org.apache.camel.dataformat.avro.AvroDataFormat - camel-quarkus-msv: - groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-msv + artifactId: camel-quarkus-atom schemes: - - id: msv + - id: atom http: false passive: false javaTypes: - - org.apache.camel.component.validator.msv.MsvComponent - camel-quarkus-spark: + - org.apache.camel.component.atom.AtomComponent + camel-quarkus-pgevent: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-spark + artifactId: camel-quarkus-pgevent schemes: - - id: spark + - id: pgevent http: false passive: false javaTypes: - - org.apache.camel.component.spark.SparkComponent - camel-quarkus-saxon: + - org.apache.camel.component.pgevent.PgEventComponent + camel-quarkus-geocoder: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-saxon + artifactId: camel-quarkus-geocoder schemes: - - id: xquery + - id: geocoder http: false passive: false - languages: - - xquery javaTypes: - - org.apache.camel.component.xquery.XQueryComponent - - org.apache.camel.language.xquery.XQueryLanguage - camel-quarkus-caffeine: + - org.apache.camel.component.geocoder.GeoCoderComponent + camel-quarkus-gson: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-caffeine - schemes: - - id: caffeine-loadcache - http: false - passive: false - - id: caffeine-cache - http: false - passive: false + artifactId: camel-quarkus-gson + dataformats: + - json-gson javaTypes: - - org.apache.camel.component.caffeine.cache.CaffeineCacheComponent - - org.apache.camel.component.caffeine.load.CaffeineLoadCacheComponent - camel-quarkus-elasticsearch-rest: + - org.apache.camel.component.gson.GsonDataFormat + camel-quarkus-rss: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-elasticsearch-rest + artifactId: camel-quarkus-rss schemes: - - id: elasticsearch-rest + - id: rss http: false passive: false + dataformats: + - rss javaTypes: - - org.apache.camel.component.elasticsearch.ElasticsearchComponent - camel-quarkus-bean-validator: + - org.apache.camel.dataformat.rss.RssDataFormat + - org.apache.camel.component.rss.RssComponent + camel-quarkus-exec: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-bean-validator + artifactId: camel-quarkus-exec schemes: - - id: bean-validator + - id: exec http: false passive: false javaTypes: - - org.apache.camel.component.bean.validator.BeanValidatorComponent - camel-quarkus-jira: + - org.apache.camel.component.exec.ExecComponent + camel-quarkus-base64: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-jira + artifactId: camel-quarkus-base64 + dataformats: + - base64 + javaTypes: + - org.apache.camel.dataformat.base64.Base64DataFormat + camel-quarkus-infinispan: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-infinispan schemes: - - id: jira + - id: infinispan http: false passive: false javaTypes: - - org.apache.camel.component.jira.JiraComponent - camel-quarkus-sql: + - org.apache.camel.component.infinispan.InfinispanComponent + camel-quarkus-nats: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-sql + artifactId: camel-quarkus-nats schemes: - - id: sql - http: false - passive: false - - id: sql-stored + - id: nats http: false passive: false javaTypes: - - org.apache.camel.component.sql.stored.SqlStoredComponent - - org.apache.camel.component.sql.SqlComponent - camel-quarkus-ehcache: + - org.apache.camel.component.nats.NatsComponent + camel-quarkus-microprofile-metrics: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-ehcache + artifactId: camel-quarkus-microprofile-metrics schemes: - - id: ehcache + - id: microprofile-metrics http: false passive: false javaTypes: - - org.apache.camel.component.ehcache.EhcacheComponent - camel-quarkus-aws2-iam: + - org.apache.camel.component.microprofile.metrics.MicroProfileMetricsComponent + camel-quarkus-asterisk: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-aws2-iam + artifactId: camel-quarkus-asterisk schemes: - - id: aws2-iam + - id: asterisk http: false passive: false javaTypes: - - org.apache.camel.component.aws2.iam.IAM2Component - camel-quarkus-velocity: + - org.apache.camel.component.asterisk.AsteriskComponent + camel-quarkus-azure-storage-blob: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-velocity + artifactId: camel-quarkus-azure-storage-blob schemes: - - id: velocity + - id: azure-storage-blob http: false passive: false javaTypes: - - org.apache.camel.component.velocity.VelocityComponent - camel-quarkus-core: + - org.apache.camel.component.azure.storage.blob.BlobComponent + camel-quarkus-protobuf: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-core - languages: - - ref - - constant - - csimple - - exchangeProperty - - tokenize - - file - - header - - simple + artifactId: camel-quarkus-protobuf + dataformats: + - protobuf javaTypes: - - org.apache.camel.language.ref.RefLanguage - - org.apache.camel.language.simple.FileLanguage - - org.apache.camel.language.csimple.CSimpleLanguage - - org.apache.camel.language.constant.ConstantLanguage - - org.apache.camel.language.simple.SimpleLanguage - - org.apache.camel.language.header.HeaderLanguage - - org.apache.camel.language.property.ExchangePropertyLanguage - - org.apache.camel.language.tokenizer.TokenizeLanguage - camel-quarkus-debezium-mysql: + - org.apache.camel.dataformat.protobuf.ProtobufDataFormat + camel-quarkus-tagsoup: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-debezium-mysql - schemes: - - id: debezium-mysql - http: false - passive: false + artifactId: camel-quarkus-tagsoup + dataformats: + - tidyMarkup javaTypes: - - org.apache.camel.component.debezium.DebeziumMySqlComponent - camel-quarkus-jcr: - groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-jcr + - org.apache.camel.dataformat.tagsoup.TidyMarkupDataFormat + camel-k-kamelet: + groupId: org.apache.camel.k + artifactId: camel-k-kamelet schemes: - - id: jcr + - id: kamelet http: false - passive: false - javaTypes: - - org.apache.camel.component.jcr.JcrComponent - camel-quarkus-hdfs: + passive: true + camel-quarkus-influxdb: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-hdfs + artifactId: camel-quarkus-influxdb schemes: - - id: hdfs + - id: influxdb http: false passive: false javaTypes: - - org.apache.camel.component.hdfs.HdfsComponent - camel-quarkus-kudu: + - org.apache.camel.component.influxdb.InfluxDbComponent + camel-quarkus-netty-http: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-kudu + artifactId: camel-quarkus-netty-http schemes: - - id: kudu - http: false + - id: netty-http + http: true passive: false javaTypes: - - org.apache.camel.component.kudu.KuduComponent - camel-quarkus-jooq: + - org.apache.camel.component.netty.http.NettyHttpComponent + camel-quarkus-aws2-ecs: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-jooq + artifactId: camel-quarkus-aws2-ecs schemes: - - id: jooq + - id: aws2-ecs http: false passive: false javaTypes: - - org.apache.camel.component.jooq.JooqComponent - camel-quarkus-jsonpath: - groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-jsonpath - languages: - - jsonpath - javaTypes: - - org.apache.camel.jsonpath.JsonPathLanguage - camel-quarkus-hl7: + - org.apache.camel.component.aws2.ecs.ECS2Component + camel-quarkus-zipfile: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-hl7 - languages: - - hl7terser + artifactId: camel-quarkus-zipfile dataformats: - - hl7 + - zipfile javaTypes: - - org.apache.camel.component.hl7.Hl7TerserLanguage - - org.apache.camel.component.hl7.HL7DataFormat - camel-quarkus-disruptor: + - org.apache.camel.dataformat.zipfile.ZipFileDataFormat + camel-quarkus-flatpack: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-disruptor + artifactId: camel-quarkus-flatpack schemes: - - id: disruptor - http: false - passive: false - - id: disruptor-vm + - id: flatpack http: false passive: false + dataformats: + - flatpack javaTypes: - - org.apache.camel.component.disruptor.vm.DisruptorVmComponent - - org.apache.camel.component.disruptor.DisruptorComponent - camel-quarkus-graphql: + - org.apache.camel.dataformat.flatpack.FlatpackDataFormat + - org.apache.camel.component.flatpack.FlatpackComponent + camel-quarkus-slack: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-graphql + artifactId: camel-quarkus-slack schemes: - - id: graphql + - id: slack http: false passive: false javaTypes: - - org.apache.camel.component.graphql.GraphqlComponent - camel-quarkus-log: + - org.apache.camel.component.slack.SlackComponent + camel-quarkus-aws-sns: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-log + artifactId: camel-quarkus-aws-sns schemes: - - id: log + - id: aws-sns http: false - passive: true + passive: false javaTypes: - - org.apache.camel.component.log.LogComponent - camel-quarkus-ahc: + - org.apache.camel.component.aws.sns.SnsComponent + camel-quarkus-couchbase: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-ahc + artifactId: camel-quarkus-couchbase schemes: - - id: ahc - http: true + - id: couchbase + http: false passive: false javaTypes: - - org.apache.camel.component.ahc.AhcComponent - camel-quarkus-milo: + - org.apache.camel.component.couchbase.CouchbaseComponent + camel-quarkus-digitalocean: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-milo + artifactId: camel-quarkus-digitalocean schemes: - - id: milo-server + - id: digitalocean http: false passive: false - - id: milo-client + javaTypes: + - org.apache.camel.component.digitalocean.DigitalOceanComponent + camel-quarkus-timer: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-timer + schemes: + - id: timer http: false passive: false javaTypes: - - org.apache.camel.component.milo.client.MiloClientComponent - - org.apache.camel.component.milo.server.MiloServerComponent - camel-quarkus-atomix: + - org.apache.camel.component.timer.TimerComponent + camel-quarkus-platform-http: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-atomix + artifactId: camel-quarkus-platform-http schemes: - - id: atomix-map - http: false + - id: platform-http + http: true passive: false - - id: atomix-queue + javaTypes: + - org.apache.camel.component.platform.http.PlatformHttpComponent + camel-quarkus-mail: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-mail + schemes: + - id: imap http: false passive: false - - id: atomix-set + - id: imaps http: false passive: false - - id: atomix-messaging + - id: smtp http: false passive: false - - id: atomix-value + - id: pop3 http: false passive: false - - id: atomix-multimap + - id: smtps http: false passive: false - javaTypes: - - org.apache.camel.component.atomix.client.map.AtomixMapComponent - - org.apache.camel.component.atomix.client.multimap.AtomixMultiMapComponent - - org.apache.camel.component.atomix.client.value.AtomixValueComponent - - org.apache.camel.component.atomix.client.set.AtomixSetComponent - - org.apache.camel.component.atomix.client.messaging.AtomixMessagingComponent - - org.apache.camel.component.atomix.client.queue.AtomixQueueComponent - camel-quarkus-fhir: - groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-fhir - schemes: - - id: fhir + - id: pop3s http: false passive: false dataformats: - - fhirXml - - fhirJson - javaTypes: - - org.apache.camel.component.fhir.FhirComponent - - org.apache.camel.component.fhir.FhirXmlDataFormat - - org.apache.camel.component.fhir.FhirJsonDataFormat - camel-quarkus-csv: - groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-csv - dataformats: - - csv - javaTypes: - - org.apache.camel.dataformat.csv.CsvDataFormat - camel-quarkus-aws2-kms: - groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-aws2-kms - schemes: - - id: aws2-kms - http: false - passive: false + - mime-multipart javaTypes: - - org.apache.camel.component.aws2.kms.KMS2Component - camel-quarkus-lucene: + - org.apache.camel.component.mail.MailComponent + - org.apache.camel.dataformat.mime.multipart.MimeMultipartDataFormat + camel-quarkus-google-bigquery: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-lucene + artifactId: camel-quarkus-google-bigquery schemes: - - id: lucene + - id: google-bigquery-sql http: false passive: false - javaTypes: - - org.apache.camel.component.lucene.LuceneComponent - camel-quarkus-splunk-hec: - groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-splunk-hec - schemes: - - id: splunk-hec + - id: google-bigquery http: false passive: false javaTypes: - - org.apache.camel.component.splunkhec.SplunkHECComponent - camel-quarkus-aws-ecs: + - org.apache.camel.component.google.bigquery.GoogleBigQueryComponent + - org.apache.camel.component.google.bigquery.sql.GoogleBigQuerySQLComponent + camel-quarkus-dropbox: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-aws-ecs + artifactId: camel-quarkus-dropbox schemes: - - id: aws-ecs + - id: dropbox http: false passive: false javaTypes: - - org.apache.camel.component.aws.ecs.ECSComponent - camel-quarkus-jbpm: + - org.apache.camel.component.dropbox.DropboxComponent + camel-quarkus-aws2-s3: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-jbpm + artifactId: camel-quarkus-aws2-s3 schemes: - - id: jbpm + - id: aws2-s3 http: false passive: false javaTypes: - - org.apache.camel.component.jbpm.JBPMComponent - camel-quarkus-salesforce: + - org.apache.camel.component.aws2.s3.AWS2S3Component + camel-quarkus-json-validator: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-salesforce + artifactId: camel-quarkus-json-validator schemes: - - id: salesforce + - id: json-validator http: false passive: false javaTypes: - - org.apache.camel.component.salesforce.SalesforceComponent - camel-quarkus-jcache: + - org.apache.camel.component.jsonvalidator.JsonValidatorComponent + camel-quarkus-lumberjack: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-jcache + artifactId: camel-quarkus-lumberjack schemes: - - id: jcache + - id: lumberjack http: false passive: false javaTypes: - - org.apache.camel.component.jcache.JCacheComponent - camel-quarkus-vertx-websocket: + - org.apache.camel.component.lumberjack.LumberjackComponent + camel-quarkus-websocket-jsr356: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-vertx-websocket + artifactId: camel-quarkus-websocket-jsr356 schemes: - - id: vertx-websocket + - id: websocket-jsr356 http: false passive: false javaTypes: - - org.apache.camel.component.vertx.websocket.VertxWebsocketComponent - camel-quarkus-google-calendar: + - org.apache.camel.websocket.jsr356.JSR356WebSocketComponent + camel-quarkus-google-mail: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-google-calendar + artifactId: camel-quarkus-google-mail schemes: - - id: google-calendar + - id: google-mail-stream http: false passive: false - - id: google-calendar-stream + - id: google-mail http: false passive: false javaTypes: - - org.apache.camel.component.google.calendar.stream.GoogleCalendarStreamComponent - - org.apache.camel.component.google.calendar.GoogleCalendarComponent - camel-quarkus-avro-rpc: + - org.apache.camel.component.google.mail.GoogleMailComponent + - org.apache.camel.component.google.mail.stream.GoogleMailStreamComponent + camel-quarkus-arangodb: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-avro-rpc + artifactId: camel-quarkus-arangodb schemes: - - id: avro + - id: arangodb http: false passive: false javaTypes: - - org.apache.camel.component.avro.AvroComponent - camel-quarkus-browse: + - org.apache.camel.component.arangodb.ArangoDbComponent + camel-quarkus-soap: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-browse - schemes: - - id: browse - http: false - passive: true + artifactId: camel-quarkus-soap + dataformats: + - soapjaxb javaTypes: - - org.apache.camel.component.browse.BrowseComponent - camel-quarkus-stream: + - org.apache.camel.dataformat.soap.SoapJaxbDataFormat + camel-quarkus-freemarker: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-stream + artifactId: camel-quarkus-freemarker schemes: - - id: stream + - id: freemarker http: false passive: false javaTypes: - - org.apache.camel.component.stream.StreamComponent - camel-quarkus-kafka: + - org.apache.camel.component.freemarker.FreemarkerComponent + camel-quarkus-servlet: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-kafka + artifactId: camel-quarkus-servlet schemes: - - id: kafka - http: false + - id: servlet + http: true passive: false javaTypes: - - org.apache.camel.component.kafka.KafkaComponent - camel-quarkus-xslt-saxon: + - org.apache.camel.component.servlet.ServletComponent + camel-quarkus-git: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-xslt-saxon + artifactId: camel-quarkus-git schemes: - - id: xslt-saxon + - id: git http: false passive: false javaTypes: - - org.apache.camel.component.xslt.saxon.XsltSaxonComponent - camel-quarkus-ssh: + - org.apache.camel.component.git.GitComponent + camel-quarkus-aws-kinesis: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-ssh + artifactId: camel-quarkus-aws-kinesis schemes: - - id: ssh + - id: aws-kinesis-firehose http: false passive: false - javaTypes: - - org.apache.camel.component.ssh.SshComponent - camel-quarkus-tika: - groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-tika - schemes: - - id: tika + - id: aws-kinesis http: false passive: false javaTypes: - - org.apache.camel.component.tika.TikaComponent - camel-quarkus-coap: + - org.apache.camel.component.aws.kinesis.KinesisComponent + - org.apache.camel.component.aws.firehose.KinesisFirehoseComponent + camel-quarkus-openstack: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-coap + artifactId: camel-quarkus-openstack schemes: - - id: coaps+tcp + - id: openstack-glance http: false passive: false - - id: coaps + - id: openstack-swift http: false passive: false - - id: coap+tcp + - id: openstack-neutron http: false passive: false - - id: coap + - id: openstack-keystone http: false passive: false - javaTypes: - - org.apache.camel.coap.CoAPComponent - camel-quarkus-aws2-mq: - groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-aws2-mq - schemes: - - id: aws2-mq + - id: openstack-cinder + http: false + passive: false + - id: openstack-nova http: false passive: false javaTypes: - - org.apache.camel.component.aws2.mq.MQ2Component - camel-quarkus-beanio: + - org.apache.camel.component.openstack.swift.SwiftComponent + - org.apache.camel.component.openstack.glance.GlanceComponent + - org.apache.camel.component.openstack.neutron.NeutronComponent + - org.apache.camel.component.openstack.keystone.KeystoneComponent + - org.apache.camel.component.openstack.cinder.CinderComponent + - org.apache.camel.component.openstack.nova.NovaComponent + camel-quarkus-barcode: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-beanio + artifactId: camel-quarkus-barcode dataformats: - - beanio + - barcode javaTypes: - - org.apache.camel.dataformat.beanio.BeanIODataFormat - camel-quarkus-jsch: + - org.apache.camel.dataformat.barcode.BarcodeDataFormat + camel-quarkus-snmp: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-jsch + artifactId: camel-quarkus-snmp schemes: - - id: scp + - id: snmp http: false passive: false javaTypes: - - org.apache.camel.component.scp.ScpComponent - camel-quarkus-irc: + - org.apache.camel.component.snmp.SnmpComponent + camel-quarkus-aws2-ec2: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-irc + artifactId: camel-quarkus-aws2-ec2 schemes: - - id: irc + - id: aws2-ec2 http: false passive: false javaTypes: - - org.apache.camel.component.irc.IrcComponent - camel-quarkus-mllp: + - org.apache.camel.component.aws2.ec2.AWS2EC2Component + camel-k-master: + groupId: org.apache.camel.k + artifactId: camel-k-master + schemes: + - id: master + http: false + passive: false + camel-quarkus-master: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-mllp + artifactId: camel-quarkus-master schemes: - - id: mllp + - id: master http: false passive: false javaTypes: - - org.apache.camel.component.mllp.MllpComponent - camel-quarkus-ahc-ws: + - org.apache.camel.component.master.MasterComponent + camel-quarkus-mustache: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-ahc-ws + artifactId: camel-quarkus-mustache schemes: - - id: ahc-wss + - id: mustache http: false passive: false - - id: ahc-ws - http: true - passive: false javaTypes: - - org.apache.camel.component.ahc.ws.WsComponent - camel-quarkus-aws2-translate: + - org.apache.camel.component.mustache.MustacheComponent + camel-quarkus-djl: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-aws2-translate + artifactId: camel-quarkus-djl schemes: - - id: aws2-translate + - id: djl http: false passive: false javaTypes: - - org.apache.camel.component.aws2.translate.Translate2Component - camel-quarkus-vertx-http: + - org.apache.camel.component.djl.DJLComponent + camel-quarkus-bonita: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-vertx-http + artifactId: camel-quarkus-bonita schemes: - - id: vertx-http + - id: bonita http: false passive: false javaTypes: - - org.apache.camel.component.vertx.http.VertxHttpComponent - camel-quarkus-wordpress: + - org.apache.camel.component.bonita.BonitaComponent + camel-quarkus-nagios: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-wordpress + artifactId: camel-quarkus-nagios schemes: - - id: wordpress + - id: nagios http: false passive: false javaTypes: - - org.apache.camel.component.wordpress.WordpressComponent - camel-quarkus-box: + - org.apache.camel.component.nagios.NagiosComponent + camel-quarkus-crypto: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-box + artifactId: camel-quarkus-crypto schemes: - - id: box + - id: crypto http: false passive: false + dataformats: + - pgp + - crypto javaTypes: - - org.apache.camel.component.box.BoxComponent - camel-quarkus-hazelcast: + - org.apache.camel.converter.crypto.CryptoDataFormat + - org.apache.camel.converter.crypto.PGPDataFormat + - org.apache.camel.component.crypto.DigitalSignatureComponent + camel-quarkus-cm-sms: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-hazelcast + artifactId: camel-quarkus-cm-sms schemes: - - id: hazelcast-multimap + - id: cm-sms http: false passive: false - - id: hazelcast-topic + javaTypes: + - org.apache.camel.component.cm.CMComponent + camel-quarkus-aws2-athena: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-aws2-athena + schemes: + - id: aws2-athena http: false passive: false - - id: hazelcast-replicatedmap + javaTypes: + - org.apache.camel.component.aws2.athena.Athena2Component + camel-quarkus-kubernetes: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-kubernetes + schemes: + - id: kubernetes-custom-resources http: false passive: false - - id: hazelcast-atomicvalue + - id: openshift-builds http: false passive: false - - id: hazelcast-ringbuffer + - id: kubernetes-resources-quota http: false passive: false - - id: hazelcast-instance + - id: kubernetes-replication-controllers http: false passive: false - - id: hazelcast-list + - id: kubernetes-job http: false passive: false - - id: hazelcast-queue + - id: openshift-build-configs http: false passive: false - - id: hazelcast-set + - id: kubernetes-service-accounts http: false passive: false - - id: hazelcast-map + - id: kubernetes-secrets http: false passive: false - - id: hazelcast-seda + - id: kubernetes-services http: false passive: false - javaTypes: - - org.apache.camel.component.hazelcast.seda.HazelcastSedaComponent - - org.apache.camel.component.hazelcast.replicatedmap.HazelcastReplicatedmapComponent - - org.apache.camel.component.hazelcast.set.HazelcastSetComponent - - org.apache.camel.component.hazelcast.instance.HazelcastInstanceComponent - - org.apache.camel.component.hazelcast.multimap.HazelcastMultimapComponent - - org.apache.camel.component.hazelcast.ringbuffer.HazelcastRingbufferComponent - - org.apache.camel.component.hazelcast.topic.HazelcastTopicComponent - - org.apache.camel.component.hazelcast.list.HazelcastListComponent - - org.apache.camel.component.hazelcast.atomicnumber.HazelcastAtomicnumberComponent - - org.apache.camel.component.hazelcast.queue.HazelcastQueueComponent - - org.apache.camel.component.hazelcast.map.HazelcastMapComponent - camel-quarkus-aws2-ses: - groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-aws2-ses - schemes: - - id: aws2-ses + - id: kubernetes-persistent-volumes http: false passive: false - javaTypes: - - org.apache.camel.component.aws2.ses.Ses2Component - camel-quarkus-cmis: - groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-cmis - schemes: - - id: cmis + - id: kubernetes-config-maps http: false passive: false - javaTypes: - - org.apache.camel.component.cmis.CMISComponent - camel-quarkus-google-pubsub: - groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-google-pubsub - schemes: - - id: google-pubsub + - id: kubernetes-pods http: false passive: false - javaTypes: - - org.apache.camel.component.google.pubsub.GooglePubsubComponent - camel-quarkus-printer: - groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-printer - schemes: - - id: lpr + - id: kubernetes-persistent-volumes-claims http: false passive: false - javaTypes: - - org.apache.camel.component.printer.PrinterComponent - camel-quarkus-jackson: - groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-jackson - dataformats: - - json-jackson - javaTypes: - - org.apache.camel.component.jackson.JacksonDataFormat - camel-quarkus-validator: - groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-validator - schemes: - - id: validator + - id: kubernetes-deployments http: false - passive: true - javaTypes: - - org.apache.camel.component.validator.ValidatorComponent - camel-quarkus-ftp: - groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-ftp - schemes: - - id: ftp + passive: false + - id: kubernetes-hpa http: false passive: false - - id: ftps + - id: kubernetes-nodes http: false passive: false - - id: sftp + - id: kubernetes-namespaces 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-google-sheets: + - org.apache.camel.component.openshift.builds.OpenshiftBuildsComponent + - org.apache.camel.component.kubernetes.secrets.KubernetesSecretsComponent + - org.apache.camel.component.kubernetes.nodes.KubernetesNodesComponent + - org.apache.camel.component.kubernetes.services.KubernetesServicesComponent + - org.apache.camel.component.kubernetes.persistent_volumes.KubernetesPersistentVolumesComponent + - org.apache.camel.component.openshift.build_configs.OpenshiftBuildConfigsComponent + - org.apache.camel.component.kubernetes.persistent_volumes_claims.KubernetesPersistentVolumesClaimsComponent + - org.apache.camel.component.kubernetes.customresources.KubernetesCustomResourcesComponent + - org.apache.camel.component.kubernetes.replication_controllers.KubernetesReplicationControllersComponent + - org.apache.camel.component.kubernetes.job.KubernetesJobComponent + - org.apache.camel.component.kubernetes.deployments.KubernetesDeploymentsComponent + - org.apache.camel.component.kubernetes.pods.KubernetesPodsComponent + - org.apache.camel.component.kubernetes.namespaces.KubernetesNamespacesComponent + - org.apache.camel.component.kubernetes.hpa.KubernetesHPAComponent + - org.apache.camel.component.kubernetes.resources_quota.KubernetesResourcesQuotaComponent + - org.apache.camel.component.kubernetes.service_accounts.KubernetesServiceAccountsComponent + - org.apache.camel.component.kubernetes.config_maps.KubernetesConfigMapsComponent + camel-quarkus-pdf: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-google-sheets + artifactId: camel-quarkus-pdf schemes: - - id: google-sheets-stream + - id: pdf http: false passive: false - - id: google-sheets + javaTypes: + - org.apache.camel.component.pdf.PdfComponent + camel-k-cron: + groupId: org.apache.camel.k + artifactId: camel-k-cron + schemes: + - id: cron http: false passive: false - javaTypes: - - org.apache.camel.component.google.sheets.GoogleSheetsComponent - - org.apache.camel.component.google.sheets.stream.GoogleSheetsStreamComponent - camel-quarkus-stomp: + camel-quarkus-aws2-lambda: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-stomp + artifactId: camel-quarkus-aws2-lambda schemes: - - id: stomp + - id: aws2-lambda http: false passive: false javaTypes: - - org.apache.camel.component.stomp.StompComponent + - org.apache.camel.component.aws2.lambda.Lambda2Component camel-quarkus-stringtemplate: groupId: org.apache.camel.quarkus artifactId: camel-quarkus-stringtemplate @@ -1448,1394 +1385,1445 @@ spec: passive: false javaTypes: - org.apache.camel.component.stringtemplate.StringTemplateComponent - camel-quarkus-aws2-lambda: + camel-quarkus-stomp: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-aws2-lambda + artifactId: camel-quarkus-stomp schemes: - - id: aws2-lambda + - id: stomp http: false passive: false javaTypes: - - org.apache.camel.component.aws2.lambda.Lambda2Component - camel-k-cron: - groupId: org.apache.camel.k - artifactId: camel-k-cron + - org.apache.camel.component.stomp.StompComponent + camel-quarkus-google-sheets: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-google-sheets schemes: - - id: cron + - id: google-sheets http: false passive: false - camel-quarkus-pdf: - groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-pdf - schemes: - - id: pdf + - id: google-sheets-stream http: false passive: false javaTypes: - - org.apache.camel.component.pdf.PdfComponent - camel-quarkus-kubernetes: + - org.apache.camel.component.google.sheets.stream.GoogleSheetsStreamComponent + - org.apache.camel.component.google.sheets.GoogleSheetsComponent + camel-quarkus-ftp: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-kubernetes + artifactId: camel-quarkus-ftp schemes: - - id: openshift-builds + - id: ftps http: false passive: false - - id: kubernetes-custom-resources + - id: ftp http: false passive: false - - id: kubernetes-namespaces + - id: sftp http: false passive: false - - id: kubernetes-nodes + javaTypes: + - org.apache.camel.component.file.remote.FtpComponent + - org.apache.camel.component.file.remote.SftpComponent + - org.apache.camel.component.file.remote.FtpsComponent + camel-quarkus-validator: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-validator + schemes: + - id: validator http: false - passive: false - - id: kubernetes-hpa + passive: true + javaTypes: + - org.apache.camel.component.validator.ValidatorComponent + camel-quarkus-jackson: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-jackson + dataformats: + - json-jackson + javaTypes: + - org.apache.camel.component.jackson.JacksonDataFormat + camel-quarkus-printer: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-printer + schemes: + - id: lpr http: false passive: false - - id: kubernetes-deployments + javaTypes: + - org.apache.camel.component.printer.PrinterComponent + camel-quarkus-google-pubsub: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-google-pubsub + schemes: + - id: google-pubsub http: false passive: false - - id: kubernetes-persistent-volumes-claims + javaTypes: + - org.apache.camel.component.google.pubsub.GooglePubsubComponent + camel-quarkus-cmis: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-cmis + schemes: + - id: cmis http: false passive: false - - id: kubernetes-pods + javaTypes: + - org.apache.camel.component.cmis.CMISComponent + camel-quarkus-aws2-ses: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-aws2-ses + schemes: + - id: aws2-ses http: false passive: false - - id: kubernetes-config-maps + javaTypes: + - org.apache.camel.component.aws2.ses.Ses2Component + camel-quarkus-hazelcast: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-hazelcast + schemes: + - id: hazelcast-instance http: false passive: false - - id: kubernetes-persistent-volumes + - id: hazelcast-ringbuffer http: false passive: false - - id: kubernetes-services + - id: hazelcast-atomicvalue http: false passive: false - - id: kubernetes-secrets + - id: hazelcast-replicatedmap http: false passive: false - - id: kubernetes-service-accounts + - id: hazelcast-topic http: false passive: false - - id: openshift-build-configs + - id: hazelcast-multimap http: false passive: false - - id: kubernetes-job + - id: hazelcast-seda http: false passive: false - - id: kubernetes-replication-controllers + - id: hazelcast-map http: false passive: false - - id: kubernetes-resources-quota + - id: hazelcast-set http: false passive: false - javaTypes: - - org.apache.camel.component.kubernetes.nodes.KubernetesNodesComponent - - org.apache.camel.component.kubernetes.secrets.KubernetesSecretsComponent - - org.apache.camel.component.openshift.builds.OpenshiftBuildsComponent - - org.apache.camel.component.kubernetes.config_maps.KubernetesConfigMapsComponent - - org.apache.camel.component.kubernetes.service_accounts.KubernetesServiceAccountsComponent - - org.apache.camel.component.kubernetes.resources_quota.KubernetesResourcesQuotaComponent - - org.apache.camel.component.kubernetes.hpa.KubernetesHPAComponent - - org.apache.camel.component.kubernetes.namespaces.KubernetesNamespacesComponent - - org.apache.camel.component.kubernetes.pods.KubernetesPodsComponent - - org.apache.camel.component.kubernetes.deployments.KubernetesDeploymentsComponent - - org.apache.camel.component.kubernetes.job.KubernetesJobComponent - - org.apache.camel.component.kubernetes.replication_controllers.KubernetesReplicationControllersComponent - - org.apache.camel.component.kubernetes.customresources.KubernetesCustomResourcesComponent - - org.apache.camel.component.kubernetes.persistent_volumes_claims.KubernetesPersistentVolumesClaimsComponent - - org.apache.camel.component.openshift.build_configs.OpenshiftBuildConfigsComponent - - org.apache.camel.component.kubernetes.persistent_volumes.KubernetesPersistentVolumesComponent - - org.apache.camel.component.kubernetes.services.KubernetesServicesComponent - camel-quarkus-aws2-athena: - groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-aws2-athena - schemes: - - id: aws2-athena + - id: hazelcast-queue http: false passive: false - javaTypes: - - org.apache.camel.component.aws2.athena.Athena2Component - camel-quarkus-cm-sms: - groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-cm-sms - schemes: - - id: cm-sms + - id: hazelcast-list http: false passive: false javaTypes: - - org.apache.camel.component.cm.CMComponent - camel-quarkus-crypto: + - org.apache.camel.component.hazelcast.list.HazelcastListComponent + - org.apache.camel.component.hazelcast.topic.HazelcastTopicComponent + - org.apache.camel.component.hazelcast.ringbuffer.HazelcastRingbufferComponent + - org.apache.camel.component.hazelcast.multimap.HazelcastMultimapComponent + - org.apache.camel.component.hazelcast.instance.HazelcastInstanceComponent + - org.apache.camel.component.hazelcast.set.HazelcastSetComponent + - org.apache.camel.component.hazelcast.replicatedmap.HazelcastReplicatedmapComponent + - org.apache.camel.component.hazelcast.seda.HazelcastSedaComponent + - org.apache.camel.component.hazelcast.map.HazelcastMapComponent + - org.apache.camel.component.hazelcast.queue.HazelcastQueueComponent + - org.apache.camel.component.hazelcast.atomicnumber.HazelcastAtomicnumberComponent + camel-quarkus-box: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-crypto + artifactId: camel-quarkus-box schemes: - - id: crypto + - id: box http: false passive: false - dataformats: - - crypto - - pgp javaTypes: - - org.apache.camel.converter.crypto.PGPDataFormat - - org.apache.camel.converter.crypto.CryptoDataFormat - - org.apache.camel.component.crypto.DigitalSignatureComponent - camel-quarkus-nagios: + - org.apache.camel.component.box.BoxComponent + camel-quarkus-wordpress: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-nagios + artifactId: camel-quarkus-wordpress schemes: - - id: nagios + - id: wordpress http: false passive: false javaTypes: - - org.apache.camel.component.nagios.NagiosComponent - camel-quarkus-bonita: + - org.apache.camel.component.wordpress.WordpressComponent + camel-quarkus-vertx-http: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-bonita + artifactId: camel-quarkus-vertx-http schemes: - - id: bonita + - id: vertx-http http: false passive: false javaTypes: - - org.apache.camel.component.bonita.BonitaComponent - camel-quarkus-djl: + - org.apache.camel.component.vertx.http.VertxHttpComponent + camel-quarkus-aws2-translate: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-djl + artifactId: camel-quarkus-aws2-translate schemes: - - id: djl + - id: aws2-translate http: false passive: false javaTypes: - - org.apache.camel.component.djl.DJLComponent - camel-quarkus-mustache: + - org.apache.camel.component.aws2.translate.Translate2Component + camel-quarkus-ahc-ws: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-mustache + artifactId: camel-quarkus-ahc-ws schemes: - - id: mustache + - id: ahc-ws + http: true + passive: false + - id: ahc-wss http: false passive: false javaTypes: - - org.apache.camel.component.mustache.MustacheComponent - camel-quarkus-master: + - org.apache.camel.component.ahc.ws.WsComponent + camel-quarkus-mllp: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-master + artifactId: camel-quarkus-mllp schemes: - - id: master + - id: mllp http: false passive: false javaTypes: - - org.apache.camel.component.master.MasterComponent - camel-k-master: - groupId: org.apache.camel.k - artifactId: camel-k-master - schemes: - - id: master - http: false - passive: false - camel-quarkus-aws2-ec2: + - org.apache.camel.component.mllp.MllpComponent + camel-quarkus-irc: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-aws2-ec2 + artifactId: camel-quarkus-irc schemes: - - id: aws2-ec2 + - id: irc http: false passive: false javaTypes: - - org.apache.camel.component.aws2.ec2.AWS2EC2Component - camel-quarkus-snmp: + - org.apache.camel.component.irc.IrcComponent + camel-quarkus-jsch: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-snmp + artifactId: camel-quarkus-jsch schemes: - - id: snmp + - id: scp http: false passive: false javaTypes: - - org.apache.camel.component.snmp.SnmpComponent - camel-quarkus-barcode: + - org.apache.camel.component.scp.ScpComponent + camel-quarkus-beanio: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-barcode + artifactId: camel-quarkus-beanio dataformats: - - barcode + - beanio javaTypes: - - org.apache.camel.dataformat.barcode.BarcodeDataFormat - camel-quarkus-openstack: + - org.apache.camel.dataformat.beanio.BeanIODataFormat + camel-quarkus-aws2-mq: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-openstack + artifactId: camel-quarkus-aws2-mq schemes: - - id: openstack-nova - http: false - passive: false - - id: openstack-cinder + - id: aws2-mq http: false passive: false - - id: openstack-keystone + javaTypes: + - org.apache.camel.component.aws2.mq.MQ2Component + camel-quarkus-coap: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-coap + schemes: + - id: coap http: false passive: false - - id: openstack-neutron + - id: coap+tcp http: false passive: false - - id: openstack-swift + - id: coaps http: false passive: false - - id: openstack-glance + - id: coaps+tcp http: false passive: false javaTypes: - - org.apache.camel.component.openstack.cinder.CinderComponent - - org.apache.camel.component.openstack.keystone.KeystoneComponent - - org.apache.camel.component.openstack.neutron.NeutronComponent - - org.apache.camel.component.openstack.glance.GlanceComponent - - org.apache.camel.component.openstack.swift.SwiftComponent - - org.apache.camel.component.openstack.nova.NovaComponent - camel-quarkus-aws-kinesis: + - org.apache.camel.coap.CoAPComponent + camel-quarkus-tika: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-aws-kinesis + artifactId: camel-quarkus-tika schemes: - - id: aws-kinesis + - id: tika http: false passive: false - - id: aws-kinesis-firehose + javaTypes: + - org.apache.camel.component.tika.TikaComponent + camel-quarkus-ssh: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-ssh + schemes: + - id: ssh http: false passive: false javaTypes: - - org.apache.camel.component.aws.firehose.KinesisFirehoseComponent - - org.apache.camel.component.aws.kinesis.KinesisComponent - camel-quarkus-git: + - org.apache.camel.component.ssh.SshComponent + camel-quarkus-xslt-saxon: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-git + artifactId: camel-quarkus-xslt-saxon schemes: - - id: git + - id: xslt-saxon http: false passive: false javaTypes: - - org.apache.camel.component.git.GitComponent - camel-quarkus-servlet: + - org.apache.camel.component.xslt.saxon.XsltSaxonComponent + camel-quarkus-kafka: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-servlet + artifactId: camel-quarkus-kafka schemes: - - id: servlet - http: true + - id: kafka + http: false passive: false javaTypes: - - org.apache.camel.component.servlet.ServletComponent - camel-quarkus-freemarker: + - org.apache.camel.component.kafka.KafkaComponent + camel-quarkus-stream: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-freemarker + artifactId: camel-quarkus-stream schemes: - - id: freemarker + - id: stream http: false passive: false javaTypes: - - org.apache.camel.component.freemarker.FreemarkerComponent - camel-quarkus-soap: + - org.apache.camel.component.stream.StreamComponent + camel-quarkus-browse: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-soap - dataformats: - - soapjaxb + artifactId: camel-quarkus-browse + schemes: + - id: browse + http: false + passive: true javaTypes: - - org.apache.camel.dataformat.soap.SoapJaxbDataFormat - camel-quarkus-arangodb: + - org.apache.camel.component.browse.BrowseComponent + camel-quarkus-avro-rpc: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-arangodb + artifactId: camel-quarkus-avro-rpc schemes: - - id: arangodb + - id: avro http: false passive: false javaTypes: - - org.apache.camel.component.arangodb.ArangoDbComponent - camel-quarkus-google-mail: + - org.apache.camel.component.avro.AvroComponent + camel-quarkus-google-calendar: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-google-mail + artifactId: camel-quarkus-google-calendar schemes: - - id: google-mail + - id: google-calendar-stream http: false passive: false - - id: google-mail-stream + - id: google-calendar http: false passive: false javaTypes: - - org.apache.camel.component.google.mail.stream.GoogleMailStreamComponent - - org.apache.camel.component.google.mail.GoogleMailComponent - camel-quarkus-websocket-jsr356: + - org.apache.camel.component.google.calendar.GoogleCalendarComponent + - org.apache.camel.component.google.calendar.stream.GoogleCalendarStreamComponent + camel-quarkus-vertx-websocket: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-websocket-jsr356 + artifactId: camel-quarkus-vertx-websocket schemes: - - id: websocket-jsr356 + - id: vertx-websocket http: false passive: false javaTypes: - - org.apache.camel.websocket.jsr356.JSR356WebSocketComponent - camel-quarkus-lumberjack: + - org.apache.camel.component.vertx.websocket.VertxWebsocketComponent + camel-quarkus-jcache: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-lumberjack + artifactId: camel-quarkus-jcache schemes: - - id: lumberjack + - id: jcache http: false passive: false javaTypes: - - org.apache.camel.component.lumberjack.LumberjackComponent - camel-quarkus-json-validator: + - org.apache.camel.component.jcache.JCacheComponent + camel-quarkus-salesforce: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-json-validator + artifactId: camel-quarkus-salesforce schemes: - - id: json-validator + - id: salesforce http: false passive: false javaTypes: - - org.apache.camel.component.jsonvalidator.JsonValidatorComponent - camel-quarkus-aws2-s3: + - org.apache.camel.component.salesforce.SalesforceComponent + camel-quarkus-jbpm: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-aws2-s3 + artifactId: camel-quarkus-jbpm schemes: - - id: aws2-s3 + - id: jbpm http: false passive: false javaTypes: - - org.apache.camel.component.aws2.s3.AWS2S3Component - camel-quarkus-dropbox: + - org.apache.camel.component.jbpm.JBPMComponent + camel-quarkus-aws-ecs: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-dropbox + artifactId: camel-quarkus-aws-ecs schemes: - - id: dropbox + - id: aws-ecs http: false passive: false javaTypes: - - org.apache.camel.component.dropbox.DropboxComponent - camel-quarkus-google-bigquery: + - org.apache.camel.component.aws.ecs.ECSComponent + camel-quarkus-splunk-hec: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-google-bigquery + artifactId: camel-quarkus-splunk-hec schemes: - - id: google-bigquery + - id: splunk-hec http: false passive: false - - id: google-bigquery-sql + javaTypes: + - org.apache.camel.component.splunkhec.SplunkHECComponent + camel-quarkus-lucene: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-lucene + schemes: + - id: lucene http: false passive: false javaTypes: - - org.apache.camel.component.google.bigquery.sql.GoogleBigQuerySQLComponent - - org.apache.camel.component.google.bigquery.GoogleBigQueryComponent - camel-quarkus-mail: + - org.apache.camel.component.lucene.LuceneComponent + camel-quarkus-aws2-kms: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-mail + artifactId: camel-quarkus-aws2-kms schemes: - - id: smtps + - id: aws2-kms http: false passive: false - - id: pop3 + javaTypes: + - org.apache.camel.component.aws2.kms.KMS2Component + camel-quarkus-csv: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-csv + dataformats: + - csv + javaTypes: + - org.apache.camel.dataformat.csv.CsvDataFormat + camel-quarkus-fhir: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-fhir + schemes: + - id: fhir http: false passive: false - - id: smtp + dataformats: + - fhirJson + - fhirXml + javaTypes: + - org.apache.camel.component.fhir.FhirComponent + - org.apache.camel.component.fhir.FhirJsonDataFormat + - org.apache.camel.component.fhir.FhirXmlDataFormat + camel-quarkus-atomix: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-atomix + schemes: + - id: atomix-value http: false passive: false - - id: imaps + - id: atomix-messaging http: false passive: false - - id: imap + - id: atomix-set http: false passive: false - - id: pop3s + - id: atomix-queue http: false passive: false - dataformats: - - mime-multipart - javaTypes: - - org.apache.camel.dataformat.mime.multipart.MimeMultipartDataFormat - - org.apache.camel.component.mail.MailComponent - camel-quarkus-platform-http: - groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-platform-http - schemes: - - id: platform-http - http: true + - id: atomix-map + http: false passive: false - javaTypes: - - org.apache.camel.component.platform.http.PlatformHttpComponent - camel-quarkus-timer: - groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-timer - schemes: - - id: timer + - id: atomix-multimap http: false passive: false javaTypes: - - org.apache.camel.component.timer.TimerComponent - camel-quarkus-digitalocean: + - org.apache.camel.component.atomix.client.messaging.AtomixMessagingComponent + - org.apache.camel.component.atomix.client.set.AtomixSetComponent + - org.apache.camel.component.atomix.client.value.AtomixValueComponent + - org.apache.camel.component.atomix.client.multimap.AtomixMultiMapComponent + - org.apache.camel.component.atomix.client.map.AtomixMapComponent + - org.apache.camel.component.atomix.client.queue.AtomixQueueComponent + camel-quarkus-milo: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-digitalocean + artifactId: camel-quarkus-milo schemes: - - id: digitalocean + - id: milo-client + http: false + passive: false + - id: milo-server http: false passive: false javaTypes: - - org.apache.camel.component.digitalocean.DigitalOceanComponent - camel-quarkus-couchbase: + - org.apache.camel.component.milo.server.MiloServerComponent + - org.apache.camel.component.milo.client.MiloClientComponent + camel-quarkus-ahc: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-couchbase + artifactId: camel-quarkus-ahc schemes: - - id: couchbase - http: false + - id: ahc + http: true passive: false javaTypes: - - org.apache.camel.component.couchbase.CouchbaseComponent - camel-quarkus-aws-sns: + - org.apache.camel.component.ahc.AhcComponent + camel-quarkus-log: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-aws-sns + artifactId: camel-quarkus-log schemes: - - id: aws-sns + - id: log http: false - passive: false + passive: true javaTypes: - - org.apache.camel.component.aws.sns.SnsComponent - camel-quarkus-slack: + - org.apache.camel.component.log.LogComponent + camel-quarkus-graphql: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-slack + artifactId: camel-quarkus-graphql schemes: - - id: slack + - id: graphql http: false passive: false javaTypes: - - org.apache.camel.component.slack.SlackComponent - camel-quarkus-flatpack: + - org.apache.camel.component.graphql.GraphqlComponent + camel-quarkus-disruptor: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-flatpack + artifactId: camel-quarkus-disruptor schemes: - - id: flatpack + - id: disruptor-vm + http: false + passive: false + - id: disruptor http: false passive: false - dataformats: - - flatpack javaTypes: - - org.apache.camel.component.flatpack.FlatpackComponent - - org.apache.camel.dataformat.flatpack.FlatpackDataFormat - camel-quarkus-zipfile: + - org.apache.camel.component.disruptor.DisruptorComponent + - org.apache.camel.component.disruptor.vm.DisruptorVmComponent + camel-quarkus-hl7: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-zipfile + artifactId: camel-quarkus-hl7 + languages: + - hl7terser dataformats: - - zipfile + - hl7 javaTypes: - - org.apache.camel.dataformat.zipfile.ZipFileDataFormat - camel-quarkus-aws2-ecs: + - org.apache.camel.component.hl7.HL7DataFormat + - org.apache.camel.component.hl7.Hl7TerserLanguage + camel-quarkus-jsonpath: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-aws2-ecs - schemes: - - id: aws2-ecs - http: false - passive: false + artifactId: camel-quarkus-jsonpath + languages: + - jsonpath javaTypes: - - org.apache.camel.component.aws2.ecs.ECS2Component - camel-quarkus-netty-http: + - org.apache.camel.jsonpath.JsonPathLanguage + camel-quarkus-jooq: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-netty-http + artifactId: camel-quarkus-jooq schemes: - - id: netty-http - http: true + - id: jooq + http: false passive: false javaTypes: - - org.apache.camel.component.netty.http.NettyHttpComponent - camel-quarkus-influxdb: + - org.apache.camel.component.jooq.JooqComponent + camel-quarkus-kudu: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-influxdb + artifactId: camel-quarkus-kudu schemes: - - id: influxdb + - id: kudu http: false passive: false javaTypes: - - org.apache.camel.component.influxdb.InfluxDbComponent - camel-k-kamelet: - groupId: org.apache.camel.k - artifactId: camel-k-kamelet - schemes: - - id: kamelet - http: false - passive: true - camel-quarkus-tagsoup: - groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-tagsoup - dataformats: - - tidyMarkup - javaTypes: - - org.apache.camel.dataformat.tagsoup.TidyMarkupDataFormat - camel-quarkus-protobuf: - groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-protobuf - dataformats: - - protobuf - javaTypes: - - org.apache.camel.dataformat.protobuf.ProtobufDataFormat - camel-quarkus-azure-storage-blob: + - org.apache.camel.component.kudu.KuduComponent + camel-quarkus-hdfs: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-azure-storage-blob + artifactId: camel-quarkus-hdfs schemes: - - id: azure-storage-blob + - id: hdfs http: false passive: false javaTypes: - - org.apache.camel.component.azure.storage.blob.BlobComponent - camel-quarkus-asterisk: + - org.apache.camel.component.hdfs.HdfsComponent + camel-quarkus-jcr: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-asterisk + artifactId: camel-quarkus-jcr schemes: - - id: asterisk + - id: jcr http: false passive: false javaTypes: - - org.apache.camel.component.asterisk.AsteriskComponent - camel-quarkus-microprofile-metrics: + - org.apache.camel.component.jcr.JcrComponent + camel-quarkus-debezium-mysql: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-microprofile-metrics + artifactId: camel-quarkus-debezium-mysql schemes: - - id: microprofile-metrics + - id: debezium-mysql http: false passive: false javaTypes: - - org.apache.camel.component.microprofile.metrics.MicroProfileMetricsComponent - camel-quarkus-nats: + - org.apache.camel.component.debezium.DebeziumMySqlComponent + camel-quarkus-core: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-nats - schemes: - - id: nats - http: false - passive: false + artifactId: camel-quarkus-core + languages: + - header + - file + - tokenize + - exchangeProperty + - csimple + - constant + - ref + - simple javaTypes: - - org.apache.camel.component.nats.NatsComponent - camel-quarkus-infinispan: + - org.apache.camel.language.header.HeaderLanguage + - org.apache.camel.language.simple.SimpleLanguage + - org.apache.camel.language.constant.ConstantLanguage + - org.apache.camel.language.csimple.CSimpleLanguage + - org.apache.camel.language.simple.FileLanguage + - org.apache.camel.language.ref.RefLanguage + - org.apache.camel.language.tokenizer.TokenizeLanguage + - org.apache.camel.language.property.ExchangePropertyLanguage + camel-quarkus-velocity: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-infinispan + artifactId: camel-quarkus-velocity schemes: - - id: infinispan + - id: velocity http: false passive: false javaTypes: - - org.apache.camel.component.infinispan.InfinispanComponent - camel-quarkus-base64: - groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-base64 - dataformats: - - base64 - javaTypes: - - org.apache.camel.dataformat.base64.Base64DataFormat - camel-quarkus-exec: + - org.apache.camel.component.velocity.VelocityComponent + camel-quarkus-aws2-iam: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-exec + artifactId: camel-quarkus-aws2-iam schemes: - - id: exec + - id: aws2-iam http: false passive: false javaTypes: - - org.apache.camel.component.exec.ExecComponent - camel-quarkus-rss: + - org.apache.camel.component.aws2.iam.IAM2Component + camel-quarkus-ehcache: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-rss + artifactId: camel-quarkus-ehcache schemes: - - id: rss + - id: ehcache http: false passive: false - dataformats: - - rss javaTypes: - - org.apache.camel.component.rss.RssComponent - - org.apache.camel.dataformat.rss.RssDataFormat - camel-quarkus-gson: - groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-gson - dataformats: - - json-gson - javaTypes: - - org.apache.camel.component.gson.GsonDataFormat - camel-quarkus-geocoder: + - org.apache.camel.component.ehcache.EhcacheComponent + camel-quarkus-sql: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-geocoder + artifactId: camel-quarkus-sql schemes: - - id: geocoder + - id: sql-stored http: false passive: false - javaTypes: - - org.apache.camel.component.geocoder.GeoCoderComponent - camel-quarkus-pgevent: - groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-pgevent - schemes: - - id: pgevent + - id: sql http: false passive: false javaTypes: - - org.apache.camel.component.pgevent.PgEventComponent - camel-quarkus-atom: + - org.apache.camel.component.sql.SqlComponent + - org.apache.camel.component.sql.stored.SqlStoredComponent + camel-quarkus-jira: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-atom + artifactId: camel-quarkus-jira schemes: - - id: atom + - id: jira http: false passive: false javaTypes: - - org.apache.camel.component.atom.AtomComponent - camel-quarkus-soroush: + - org.apache.camel.component.jira.JiraComponent + camel-quarkus-bean-validator: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-soroush + artifactId: camel-quarkus-bean-validator schemes: - - id: soroush + - id: bean-validator http: false passive: false javaTypes: - - org.apache.camel.component.soroushbot.component.SoroushBotComponent - camel-quarkus-drill: + - org.apache.camel.component.bean.validator.BeanValidatorComponent + camel-quarkus-elasticsearch-rest: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-drill + artifactId: camel-quarkus-elasticsearch-rest schemes: - - id: drill + - id: elasticsearch-rest http: false passive: false javaTypes: - - org.apache.camel.component.drill.DrillComponent - camel-quarkus-cometd: + - org.apache.camel.component.elasticsearch.ElasticsearchComponent + camel-quarkus-caffeine: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-cometd + artifactId: camel-quarkus-caffeine schemes: - - id: cometd + - id: caffeine-cache http: false passive: false - - id: cometds + - id: caffeine-loadcache http: false passive: false javaTypes: - - org.apache.camel.component.cometd.CometdComponent - camel-quarkus-chunk: + - org.apache.camel.component.caffeine.load.CaffeineLoadCacheComponent + - org.apache.camel.component.caffeine.cache.CaffeineCacheComponent + camel-quarkus-saxon: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-chunk + artifactId: camel-quarkus-saxon schemes: - - id: chunk + - id: xquery http: false passive: false + languages: + - xquery javaTypes: - - org.apache.camel.component.chunk.ChunkComponent - camel-k-webhook: - groupId: org.apache.camel.k - artifactId: camel-k-webhook - schemes: - - id: webhook - http: true - passive: true - camel-quarkus-dns: + - org.apache.camel.language.xquery.XQueryLanguage + - org.apache.camel.component.xquery.XQueryComponent + camel-quarkus-spark: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-dns + artifactId: camel-quarkus-spark schemes: - - id: dns + - id: spark http: false passive: false javaTypes: - - org.apache.camel.component.dns.DnsComponent - camel-quarkus-mongodb: + - org.apache.camel.component.spark.SparkComponent + camel-quarkus-msv: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-mongodb + artifactId: camel-quarkus-msv schemes: - - id: mongodb + - id: msv http: false passive: false javaTypes: - - org.apache.camel.component.mongodb.MongoDbComponent - camel-quarkus-jgroups-raft: + - org.apache.camel.component.validator.msv.MsvComponent + camel-quarkus-avro: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-jgroups-raft + artifactId: camel-quarkus-avro + dataformats: + - avro + javaTypes: + - org.apache.camel.dataformat.avro.AvroDataFormat + camel-quarkus-tarfile: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-tarfile + dataformats: + - tarfile + javaTypes: + - org.apache.camel.dataformat.tarfile.TarFileDataFormat + camel-quarkus-aws2-sts: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-aws2-sts schemes: - - id: jgroups-raft + - id: aws2-sts http: false passive: false javaTypes: - - org.apache.camel.component.jgroups.raft.JGroupsRaftComponent - camel-quarkus-cassandraql: + - org.apache.camel.component.aws2.sts.STS2Component + camel-quarkus-atlasmap: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-cassandraql + artifactId: camel-quarkus-atlasmap schemes: - - id: cql + - id: atlasmap http: false passive: false javaTypes: - - org.apache.camel.component.cassandra.CassandraComponent - camel-quarkus-ical: + - org.apache.camel.component.atlasmap.AtlasMapComponent + camel-quarkus-minio: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-ical - dataformats: - - ical - javaTypes: - - org.apache.camel.component.ical.ICalDataFormat - camel-quarkus-sjms: - groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-sjms + artifactId: camel-quarkus-minio schemes: - - id: sjms-batch - http: false - passive: false - - id: sjms + - id: minio http: false passive: false javaTypes: - - org.apache.camel.component.sjms.SjmsComponent - - org.apache.camel.component.sjms.batch.SjmsBatchComponent - camel-quarkus-google-drive: + - org.apache.camel.component.minio.MinioComponent + camel-quarkus-aws-lambda: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-google-drive + artifactId: camel-quarkus-aws-lambda schemes: - - id: google-drive + - id: aws-lambda http: false passive: false javaTypes: - - org.apache.camel.component.google.drive.GoogleDriveComponent - camel-quarkus-splunk: + - org.apache.camel.component.aws.lambda.LambdaComponent + camel-quarkus-xmpp: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-splunk + artifactId: camel-quarkus-xmpp schemes: - - id: splunk + - id: xmpp http: false passive: false javaTypes: - - org.apache.camel.component.splunk.SplunkComponent - camel-quarkus-dozer: + - org.apache.camel.component.xmpp.XmppComponent + camel-quarkus-aws2-eventbridge: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-dozer + artifactId: camel-quarkus-aws2-eventbridge schemes: - - id: dozer + - id: aws2-eventbridge http: false passive: false javaTypes: - - org.apache.camel.component.dozer.DozerComponent - camel-quarkus-aws-eks: + - org.apache.camel.component.aws2.eventbridge.EventbridgeComponent + camel-quarkus-github: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-aws-eks + artifactId: camel-quarkus-github schemes: - - id: aws-eks + - id: github http: false passive: false javaTypes: - - org.apache.camel.component.aws.eks.EKSComponent - camel-quarkus-seda: + - org.apache.camel.component.github.GitHubComponent + camel-quarkus-corda: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-seda + artifactId: camel-quarkus-corda schemes: - - id: seda + - id: corda http: false - passive: true + passive: false javaTypes: - - org.apache.camel.component.seda.SedaComponent - camel-quarkus-nitrite: + - org.apache.camel.component.corda.CordaComponent + camel-quarkus-xml-jaxp: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-nitrite - schemes: - - id: nitrite - http: false - passive: false + artifactId: camel-quarkus-xml-jaxp + languages: + - xtokenize javaTypes: - - org.apache.camel.component.nitrite.NitriteComponent - camel-quarkus-activemq: + - org.apache.camel.language.xtokenizer.XMLTokenizeLanguage + camel-quarkus-ldif: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-activemq + artifactId: camel-quarkus-ldif schemes: - - id: activemq + - id: ldif http: false passive: false javaTypes: - - org.apache.camel.component.activemq.ActiveMQComponent - camel-quarkus-twilio: + - org.apache.camel.component.ldif.LdifComponent + camel-quarkus-aws-ec2: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-twilio + artifactId: camel-quarkus-aws-ec2 schemes: - - id: twilio + - id: aws-ec2 http: false passive: false javaTypes: - - org.apache.camel.component.twilio.TwilioComponent - camel-quarkus-zendesk: + - org.apache.camel.component.aws.ec2.EC2Component + camel-quarkus-web3j: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-zendesk + artifactId: camel-quarkus-web3j schemes: - - id: zendesk + - id: web3j http: false passive: false javaTypes: - - org.apache.camel.component.zendesk.ZendeskComponent - camel-quarkus-braintree: + - org.apache.camel.component.web3j.Web3jComponent + camel-quarkus-ignite: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-braintree + artifactId: camel-quarkus-ignite schemes: - - id: braintree + - id: ignite-set http: false passive: false - javaTypes: - - org.apache.camel.component.braintree.BraintreeComponent - camel-quarkus-aws-sqs: - groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-aws-sqs - schemes: - - id: aws-sqs + - id: ignite-idgen + http: false + passive: false + - id: ignite-cache + http: false + passive: false + - id: ignite-compute + http: false + passive: false + - id: ignite-messaging + http: false + passive: false + - id: ignite-events + http: false + passive: false + - id: ignite-queue http: false passive: false javaTypes: - - org.apache.camel.component.aws.sqs.SqsComponent - camel-quarkus-olingo4: + - org.apache.camel.component.ignite.set.IgniteSetComponent + - org.apache.camel.component.ignite.messaging.IgniteMessagingComponent + - org.apache.camel.component.ignite.queue.IgniteQueueComponent + - org.apache.camel.component.ignite.compute.IgniteComputeComponent + - org.apache.camel.component.ignite.events.IgniteEventsComponent + - org.apache.camel.component.ignite.cache.IgniteCacheComponent + - org.apache.camel.component.ignite.idgen.IgniteIdGenComponent + camel-quarkus-mongodb-gridfs: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-olingo4 + artifactId: camel-quarkus-mongodb-gridfs schemes: - - id: olingo4 + - id: mongodb-gridfs http: false passive: false javaTypes: - - org.apache.camel.component.olingo4.Olingo4Component - camel-quarkus-zookeeper: + - org.apache.camel.component.mongodb.gridfs.GridFsComponent + camel-quarkus-cron: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-zookeeper + artifactId: camel-quarkus-cron schemes: - - id: zookeeper + - id: cron http: false passive: false javaTypes: - - org.apache.camel.component.zookeeper.ZooKeeperComponent - camel-quarkus-sjms2: + - org.apache.camel.component.cron.CronComponent + camel-quarkus-azure-storage-queue: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-sjms2 + artifactId: camel-quarkus-azure-storage-queue schemes: - - id: sjms2 + - id: azure-storage-queue http: false passive: false javaTypes: - - org.apache.camel.component.sjms2.Sjms2Component - camel-quarkus-ldap: + - org.apache.camel.component.azure.storage.queue.QueueComponent + camel-quarkus-reactive-streams: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-ldap + artifactId: camel-quarkus-reactive-streams schemes: - - id: ldap + - id: reactive-streams http: false passive: false javaTypes: - - org.apache.camel.component.ldap.LdapComponent - camel-quarkus-xchange: + - org.apache.camel.component.reactive.streams.ReactiveStreamsComponent + camel-quarkus-rabbitmq: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-xchange + artifactId: camel-quarkus-rabbitmq schemes: - - id: xchange + - id: rabbitmq http: false passive: false javaTypes: - - org.apache.camel.component.xchange.XChangeComponent - camel-k-kamelet-reify: - groupId: org.apache.camel.k - artifactId: camel-k-kamelet-reify + - org.apache.camel.component.rabbitmq.RabbitMQComponent + camel-quarkus-chatscript: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-chatscript schemes: - - id: wrap + - id: chatscript http: false passive: false - camel-quarkus-atmos: + javaTypes: + - org.apache.camel.component.chatscript.ChatScriptComponent + camel-quarkus-aws-translate: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-atmos + artifactId: camel-quarkus-aws-translate schemes: - - id: atmos + - id: aws-translate http: false passive: false javaTypes: - - org.apache.camel.component.atmos.AtmosComponent - camel-quarkus-as2: + - org.apache.camel.component.aws.translate.TranslateComponent + camel-quarkus-azure: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-as2 + artifactId: camel-quarkus-azure schemes: - - id: as2 + - id: azure-blob + http: false + passive: false + - id: azure-queue http: false passive: false javaTypes: - - org.apache.camel.component.as2.AS2Component - camel-quarkus-etcd: + - org.apache.camel.component.azure.queue.QueueServiceComponent + - org.apache.camel.component.azure.blob.BlobServiceComponent + camel-quarkus-xmlsecurity: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-etcd + artifactId: camel-quarkus-xmlsecurity schemes: - - id: etcd-keys - http: false - passive: false - - id: etcd-stats + - id: xmlsecurity-verify http: false passive: false - - id: etcd-watch + - id: xmlsecurity-sign http: false passive: false + dataformats: + - secureXML javaTypes: - - org.apache.camel.component.etcd.EtcdWatchComponent - - org.apache.camel.component.etcd.EtcdStatsComponent - - org.apache.camel.component.etcd.EtcdKeysComponent - camel-quarkus-quartz: + - org.apache.camel.dataformat.xmlsecurity.XMLSecurityDataFormat + - org.apache.camel.component.xmlsecurity.XmlSignerComponent + - org.apache.camel.component.xmlsecurity.XmlVerifierComponent + camel-quarkus-groovy: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-quartz + artifactId: camel-quarkus-groovy + languages: + - groovy + javaTypes: + - org.apache.camel.language.groovy.GroovyLanguage + camel-quarkus-rest: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-rest schemes: - - id: quartz + - id: rest + http: true + passive: false + - id: rest-api http: false passive: false javaTypes: - - org.apache.camel.component.quartz.QuartzComponent - camel-quarkus-pg-replication-slot: + - org.apache.camel.component.rest.RestComponent + - org.apache.camel.component.rest.RestApiComponent + camel-quarkus-xslt: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-pg-replication-slot + artifactId: camel-quarkus-xslt schemes: - - id: pg-replication-slot + - id: xslt http: false passive: false javaTypes: - - org.apache.camel.component.pg.replication.slot.PgReplicationSlotComponent - camel-quarkus-jms: + - org.apache.camel.component.xslt.XsltComponent + camel-quarkus-beanstalk: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-jms + artifactId: camel-quarkus-beanstalk schemes: - - id: jms + - id: beanstalk http: false passive: false javaTypes: - - org.apache.camel.component.jms.JmsComponent - camel-quarkus-thrift: + - org.apache.camel.component.beanstalk.BeanstalkComponent + camel-quarkus-saga: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-thrift + artifactId: camel-quarkus-saga schemes: - - id: thrift + - id: saga http: false passive: false + javaTypes: + - org.apache.camel.component.saga.SagaComponent + camel-quarkus-fop: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-fop + schemes: + - id: fop + http: false + passive: false + javaTypes: + - org.apache.camel.component.fop.FopComponent + camel-quarkus-johnzon: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-johnzon dataformats: - - thrift + - json-johnzon javaTypes: - - org.apache.camel.component.thrift.ThriftComponent - - org.apache.camel.dataformat.thrift.ThriftDataFormat - camel-quarkus-sip: + - org.apache.camel.component.johnzon.JohnzonDataFormat + camel-quarkus-solr: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-sip + artifactId: camel-quarkus-solr schemes: - - id: sip + - id: solrs http: false passive: false - - id: sips + - id: solr + http: false + passive: false + - id: solrCloud http: false passive: false javaTypes: - - org.apache.camel.component.sip.SipComponent - camel-quarkus-aws2-cw: + - org.apache.camel.component.solr.SolrComponent + camel-quarkus-quickfix: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-aws2-cw + artifactId: camel-quarkus-quickfix schemes: - - id: aws2-cw + - id: quickfix http: false passive: false javaTypes: - - org.apache.camel.component.aws2.cw.Cw2Component - camel-quarkus-asn1: - groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-asn1 - dataformats: - - asn1 - javaTypes: - - org.apache.camel.dataformat.asn1.ASN1DataFormat - camel-quarkus-schematron: + - org.apache.camel.component.quickfixj.QuickfixjComponent + camel-quarkus-jclouds: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-schematron + artifactId: camel-quarkus-jclouds schemes: - - id: schematron + - id: jclouds http: false passive: false javaTypes: - - org.apache.camel.component.schematron.SchematronComponent - camel-quarkus-language: + - org.apache.camel.component.jclouds.JcloudsComponent + camel-quarkus-rest-openapi: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-language + artifactId: camel-quarkus-rest-openapi schemes: - - id: language + - id: rest-openapi http: false - passive: true + passive: false javaTypes: - - org.apache.camel.component.language.LanguageComponent - camel-k-knative: - groupId: org.apache.camel.k - artifactId: camel-k-knative + - org.apache.camel.component.rest.openapi.RestOpenApiComponent + camel-quarkus-file-watch: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-file-watch schemes: - - id: knative - http: true + - id: file-watch + http: false passive: false - producer: - dependencies: - - groupId: org.apache.camel.k - artifactId: camel-k-knative-producer - consumer: - dependencies: - - groupId: org.apache.camel.k - artifactId: camel-k-knative-consumer - camel-quarkus-zookeeper-master: + javaTypes: + - org.apache.camel.component.file.watch.FileWatchComponent + camel-quarkus-robotframework: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-zookeeper-master + artifactId: camel-quarkus-robotframework schemes: - - id: zookeeper-master + - id: robotframework http: false passive: false javaTypes: - - org.apache.camel.component.zookeepermaster.MasterComponent - camel-quarkus-jacksonxml: + - org.apache.camel.component.robotframework.RobotFrameworkComponent + camel-quarkus-file: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-jacksonxml - dataformats: - - jacksonxml + artifactId: camel-quarkus-file + schemes: + - id: file + http: false + passive: false javaTypes: - - org.apache.camel.component.jacksonxml.JacksonXMLDataFormat - camel-quarkus-debezium-mongodb: + - org.apache.camel.component.file.FileComponent + camel-quarkus-mybatis: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-debezium-mongodb + artifactId: camel-quarkus-mybatis schemes: - - id: debezium-mongodb + - id: mybatis-bean + http: false + passive: false + - id: mybatis http: false passive: false javaTypes: - - org.apache.camel.component.debezium.DebeziumMongodbComponent - camel-quarkus-xstream: + - org.apache.camel.component.mybatis.MyBatisComponent + - org.apache.camel.component.mybatis.MyBatisBeanComponent + camel-quarkus-cbor: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-xstream + artifactId: camel-quarkus-cbor dataformats: - - xstream - - json-xstream + - cbor javaTypes: - - org.apache.camel.dataformat.xstream.JsonDataFormat - - org.apache.camel.dataformat.xstream.XStreamDataFormat - camel-quarkus-optaplanner: + - org.apache.camel.component.cbor.CBORDataFormat + camel-quarkus-elsql: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-optaplanner + artifactId: camel-quarkus-elsql schemes: - - id: optaplanner + - id: elsql http: false passive: false javaTypes: - - org.apache.camel.component.optaplanner.OptaPlannerComponent - camel-quarkus-apns: + - org.apache.camel.component.elsql.ElsqlComponent + camel-quarkus-micrometer: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-apns + artifactId: camel-quarkus-micrometer schemes: - - id: apns + - id: micrometer http: false passive: false javaTypes: - - org.apache.camel.component.apns.ApnsComponent - camel-quarkus-jslt: + - org.apache.camel.component.micrometer.MicrometerComponent + camel-quarkus-netty: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-jslt + artifactId: camel-quarkus-netty schemes: - - id: jslt + - id: netty http: false passive: false javaTypes: - - org.apache.camel.component.jslt.JsltComponent - camel-quarkus-bindy: - groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-bindy - dataformats: - - bindy-kvp - - bindy-fixed - - bindy-csv - javaTypes: - - org.apache.camel.dataformat.bindy.kvp.BindyKeyValuePairDataFormat - - org.apache.camel.dataformat.bindy.fixed.BindyFixedLengthDataFormat - - org.apache.camel.dataformat.bindy.csv.BindyCsvDataFormat - camel-quarkus-vm: + - org.apache.camel.component.netty.NettyComponent + camel-quarkus-jolt: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-vm + artifactId: camel-quarkus-jolt schemes: - - id: vm + - id: jolt http: false - passive: true + passive: false javaTypes: - - org.apache.camel.component.vm.VmComponent - camel-quarkus-paho: + - org.apache.camel.component.jolt.JoltComponent + camel-quarkus-http: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-paho + artifactId: camel-quarkus-http schemes: - - id: paho + - id: https + http: false + passive: false + - id: http http: false passive: false javaTypes: - - org.apache.camel.component.paho.PahoComponent - camel-quarkus-lzf: - groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-lzf - dataformats: - - lzf - javaTypes: - - org.apache.camel.dataformat.lzf.LZFDataFormat - camel-quarkus-ref: + - org.apache.camel.component.http.HttpComponent + camel-quarkus-telegram: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-ref + artifactId: camel-quarkus-telegram schemes: - - id: ref + - id: telegram http: false - passive: true - javaTypes: - - org.apache.camel.component.ref.RefComponent - camel-quarkus-univocity-parsers: - groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-univocity-parsers - dataformats: - - univocity-fixed - - univocity-tsv - - univocity-csv + passive: false javaTypes: - - org.apache.camel.dataformat.univocity.UniVocityTsvDataFormat - - org.apache.camel.dataformat.univocity.UniVocityCsvDataFormat - - org.apache.camel.dataformat.univocity.UniVocityFixedWidthDataFormat - camel-quarkus-mvel: + - org.apache.camel.component.telegram.TelegramComponent + camel-quarkus-ganglia: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-mvel + artifactId: camel-quarkus-ganglia schemes: - - id: mvel + - id: ganglia http: false passive: false - languages: - - mvel javaTypes: - - org.apache.camel.language.mvel.MvelLanguage - - org.apache.camel.component.mvel.MvelComponent - camel-quarkus-aws2-sns: + - org.apache.camel.component.ganglia.GangliaComponent + camel-quarkus-aws2-kinesis: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-aws2-sns + artifactId: camel-quarkus-aws2-kinesis schemes: - - id: aws2-sns + - id: aws2-kinesis + http: false + passive: false + - id: aws2-kinesis-firehose http: false passive: false javaTypes: - - org.apache.camel.component.aws2.sns.Sns2Component - camel-quarkus-jsonb: - groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-jsonb - dataformats: - - json-jsonb - javaTypes: - - org.apache.camel.component.jsonb.JsonbDataFormat - camel-quarkus-nsq: + - org.apache.camel.component.aws2.kinesis.Kinesis2Component + - org.apache.camel.component.aws2.firehose.KinesisFirehose2Component + camel-quarkus-twitter: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-nsq + artifactId: camel-quarkus-twitter schemes: - - id: nsq + - id: twitter-timeline + http: false + passive: false + - id: twitter-directmessage + http: false + passive: false + - id: twitter-search http: false passive: false javaTypes: - - org.apache.camel.component.nsq.NsqComponent - camel-quarkus-xpath: + - org.apache.camel.component.twitter.search.TwitterSearchComponent + - org.apache.camel.component.twitter.directmessage.TwitterDirectMessageComponent + - org.apache.camel.component.twitter.timeline.TwitterTimelineComponent + camel-quarkus-aws-swf: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-xpath - languages: - - xpath + artifactId: camel-quarkus-aws-swf + schemes: + - id: aws-swf + http: false + passive: false javaTypes: - - org.apache.camel.language.xpath.XPathLanguage - camel-quarkus-facebook: + - org.apache.camel.component.aws.swf.SWFComponent + camel-quarkus-pubnub: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-facebook + artifactId: camel-quarkus-pubnub schemes: - - id: facebook + - id: pubnub http: false passive: false javaTypes: - - org.apache.camel.component.facebook.FacebookComponent - camel-quarkus-ognl: + - org.apache.camel.component.pubnub.PubNubComponent + camel-quarkus-stub: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-ognl - languages: - - ognl + artifactId: camel-quarkus-stub + schemes: + - id: stub + http: false + passive: true javaTypes: - - org.apache.camel.language.ognl.OgnlLanguage - camel-quarkus-consul: + - org.apache.camel.component.stub.StubComponent + camel-quarkus-aws2-sqs: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-consul + artifactId: camel-quarkus-aws2-sqs schemes: - - id: consul + - id: aws2-sqs http: false passive: false javaTypes: - - org.apache.camel.component.consul.ConsulComponent - camel-quarkus-jdbc: + - org.apache.camel.component.aws2.sqs.Sqs2Component + camel-quarkus-jt400: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-jdbc + artifactId: camel-quarkus-jt400 schemes: - - id: jdbc + - id: jt400 http: false passive: false javaTypes: - - org.apache.camel.component.jdbc.JdbcComponent - camel-quarkus-vertx: + - org.apache.camel.component.jt400.Jt400Component + camel-quarkus-iota: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-vertx + artifactId: camel-quarkus-iota schemes: - - id: vertx + - id: iota http: false passive: false javaTypes: - - org.apache.camel.component.vertx.VertxComponent - camel-quarkus-controlbus: + - org.apache.camel.component.iota.IOTAComponent + camel-quarkus-jsonapi: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-controlbus - schemes: - - id: controlbus - http: false - passive: true + artifactId: camel-quarkus-jsonapi + dataformats: + - jsonApi javaTypes: - - org.apache.camel.component.controlbus.ControlBusComponent - camel-quarkus-weka: + - org.apache.camel.component.jsonapi.JsonApiDataFormat + camel-quarkus-aws2-eks: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-weka + artifactId: camel-quarkus-aws2-eks schemes: - - id: weka + - id: aws2-eks http: false passive: false javaTypes: - - org.apache.camel.component.weka.WekaComponent - camel-quarkus-iec60870: + - org.apache.camel.component.aws2.eks.EKS2Component + camel-quarkus-weather: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-iec60870 + artifactId: camel-quarkus-weather schemes: - - id: iec60870-client - http: false - passive: false - - id: iec60870-server + - id: weather http: false passive: false javaTypes: - - org.apache.camel.component.iec60870.server.ServerComponent - - org.apache.camel.component.iec60870.client.ClientComponent - camel-quarkus-mock: + - org.apache.camel.component.weather.WeatherComponent + camel-quarkus-scheduler: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-mock + artifactId: camel-quarkus-scheduler schemes: - - id: mock + - id: scheduler http: false - passive: true + passive: false javaTypes: - - org.apache.camel.component.mock.MockComponent - camel-quarkus-aws2-ddb: + - org.apache.camel.component.scheduler.SchedulerComponent + camel-quarkus-jaxb: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-aws2-ddb + artifactId: camel-quarkus-jaxb + dataformats: + - jaxb + javaTypes: + - org.apache.camel.converter.jaxb.JaxbDataFormat + camel-quarkus-jing: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-jing schemes: - - id: aws2-ddbstream - http: false - passive: false - - id: aws2-ddb + - id: jing http: false passive: false javaTypes: - - org.apache.camel.component.aws2.ddbstream.Ddb2StreamComponent - - org.apache.camel.component.aws2.ddb.Ddb2Component - camel-quarkus-jpa: + - org.apache.camel.component.validator.jing.JingComponent + camel-quarkus-dataformat: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-jpa + artifactId: camel-quarkus-dataformat schemes: - - id: jpa + - id: dataformat http: false - passive: false + passive: true javaTypes: - - org.apache.camel.component.jpa.JpaComponent - camel-quarkus-pulsar: + - org.apache.camel.component.dataformat.DataFormatComponent + camel-quarkus-jgroups: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-pulsar + artifactId: camel-quarkus-jgroups schemes: - - id: pulsar + - id: jgroups http: false passive: false javaTypes: - - org.apache.camel.component.pulsar.PulsarComponent - camel-quarkus-guava-eventbus: + - org.apache.camel.component.jgroups.JGroupsComponent + camel-quarkus-yammer: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-guava-eventbus + artifactId: camel-quarkus-yammer schemes: - - id: guava-eventbus + - id: yammer http: false passive: false javaTypes: - - org.apache.camel.component.guava.eventbus.GuavaEventBusComponent - camel-quarkus-amqp: + - org.apache.camel.component.yammer.YammerComponent + camel-quarkus-hbase: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-amqp + artifactId: camel-quarkus-hbase schemes: - - id: amqp + - id: hbase http: false passive: false javaTypes: - - org.apache.camel.component.amqp.AMQPComponent - camel-quarkus-flink: + - org.apache.camel.component.hbase.HBaseComponent + camel-quarkus-aws-sdb: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-flink + artifactId: camel-quarkus-aws-sdb schemes: - - id: flink + - id: aws-sdb http: false passive: false javaTypes: - - org.apache.camel.component.flink.FlinkComponent - camel-quarkus-debezium-postgres: + - org.apache.camel.component.aws.sdb.SdbComponent + camel-quarkus-sap-netweaver: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-debezium-postgres + artifactId: camel-quarkus-sap-netweaver schemes: - - id: debezium-postgres + - id: sap-netweaver http: false passive: false javaTypes: - - org.apache.camel.component.debezium.DebeziumPostgresComponent - camel-quarkus-aws-iam: + - org.apache.camel.component.sap.netweaver.NetWeaverComponent + camel-quarkus-servicenow: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-aws-iam + artifactId: camel-quarkus-servicenow schemes: - - id: aws-iam + - id: servicenow http: false passive: false javaTypes: - - org.apache.camel.component.aws.iam.IAMComponent - camel-quarkus-syslog: + - org.apache.camel.component.servicenow.ServiceNowComponent + camel-quarkus-grpc: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-syslog - dataformats: - - syslog + artifactId: camel-quarkus-grpc + schemes: + - id: grpc + http: true + passive: false javaTypes: - - org.apache.camel.component.syslog.SyslogDataFormat - camel-quarkus-smpp: + - org.apache.camel.component.grpc.GrpcComponent + camel-quarkus-ipfs: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-smpp + artifactId: camel-quarkus-ipfs schemes: - - id: smpp + - id: ipfs http: false passive: false - - id: smpps + javaTypes: + - org.apache.camel.component.ipfs.IPFSComponent + 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.smpp.SmppComponent - camel-quarkus-zip-deflater: + - org.apache.camel.component.aws.kms.KMSComponent + camel-quarkus-stax: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-zip-deflater - dataformats: - - zipdeflater - - gzipdeflater + artifactId: camel-quarkus-stax + schemes: + - id: stax + http: false + passive: false javaTypes: - - org.apache.camel.dataformat.deflater.GzipDeflaterDataFormat - - org.apache.camel.dataformat.deflater.ZipDeflaterDataFormat - camel-quarkus-workday: + - org.apache.camel.component.stax.StAXComponent + camel-quarkus-aws2-msk: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-workday + artifactId: camel-quarkus-aws2-msk schemes: - - id: workday + - id: aws2-msk http: false passive: false javaTypes: - - org.apache.camel.component.workday.WorkdayComponent - camel-quarkus-couchdb: + - org.apache.camel.component.aws2.msk.MSK2Component + camel-quarkus-debezium-sqlserver: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-couchdb + artifactId: camel-quarkus-debezium-sqlserver schemes: - - id: couchdb + - id: debezium-sqlserver http: false passive: false javaTypes: - - org.apache.camel.component.couchdb.CouchDbComponent - camel-quarkus-grok: + - org.apache.camel.component.debezium.DebeziumSqlserverComponent + camel-quarkus-snakeyaml: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-grok + artifactId: camel-quarkus-snakeyaml dataformats: - - grok + - yaml-snakeyaml javaTypes: - - org.apache.camel.component.grok.GrokDataFormat - camel-quarkus-aws-s3: + - org.apache.camel.component.snakeyaml.SnakeYAMLDataFormat + camel-quarkus-fastjson: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-aws-s3 + artifactId: camel-quarkus-fastjson + dataformats: + - json-fastjson + javaTypes: + - org.apache.camel.component.fastjson.FastjsonDataFormat + camel-quarkus-xj: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-xj schemes: - - id: aws-s3 + - id: xj http: false passive: false javaTypes: - - org.apache.camel.component.aws.s3.S3Component + - org.apache.camel.component.xj.XJComponent + 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-bean: groupId: org.apache.camel.quarkus artifactId: camel-quarkus-bean @@ -2849,92 +2837,104 @@ spec: languages: - bean javaTypes: - - org.apache.camel.language.bean.BeanLanguage - - org.apache.camel.component.bean.BeanComponent - org.apache.camel.component.beanclass.ClassComponent - camel-quarkus-direct: + - org.apache.camel.component.bean.BeanComponent + - org.apache.camel.language.bean.BeanLanguage + camel-quarkus-aws-s3: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-direct + artifactId: camel-quarkus-aws-s3 schemes: - - id: direct + - id: aws-s3 http: false - passive: true + passive: false javaTypes: - - org.apache.camel.component.direct.DirectComponent - camel-quarkus-xj: + - org.apache.camel.component.aws.s3.S3Component + camel-quarkus-grok: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-xj + artifactId: camel-quarkus-grok + dataformats: + - grok + javaTypes: + - org.apache.camel.component.grok.GrokDataFormat + camel-quarkus-couchdb: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-couchdb schemes: - - id: xj + - id: couchdb http: false passive: false javaTypes: - - org.apache.camel.component.xj.XJComponent - camel-quarkus-fastjson: + - org.apache.camel.component.couchdb.CouchDbComponent + camel-quarkus-workday: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-fastjson - dataformats: - - json-fastjson + artifactId: camel-quarkus-workday + schemes: + - id: workday + http: false + passive: false javaTypes: - - org.apache.camel.component.fastjson.FastjsonDataFormat - camel-quarkus-snakeyaml: + - org.apache.camel.component.workday.WorkdayComponent + camel-quarkus-zip-deflater: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-snakeyaml + artifactId: camel-quarkus-zip-deflater dataformats: - - yaml-snakeyaml + - gzipdeflater + - zipdeflater javaTypes: - - org.apache.camel.component.snakeyaml.SnakeYAMLDataFormat - camel-quarkus-debezium-sqlserver: + - org.apache.camel.dataformat.deflater.ZipDeflaterDataFormat + - org.apache.camel.dataformat.deflater.GzipDeflaterDataFormat + camel-quarkus-smpp: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-debezium-sqlserver + artifactId: camel-quarkus-smpp schemes: - - id: debezium-sqlserver + - id: smpps http: false passive: false - javaTypes: - - org.apache.camel.component.debezium.DebeziumSqlserverComponent - camel-quarkus-aws2-msk: - groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-aws2-msk - schemes: - - id: aws2-msk + - id: smpp http: false passive: false javaTypes: - - org.apache.camel.component.aws2.msk.MSK2Component - camel-quarkus-stax: + - org.apache.camel.component.smpp.SmppComponent + camel-quarkus-syslog: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-stax + artifactId: camel-quarkus-syslog + dataformats: + - syslog + javaTypes: + - org.apache.camel.component.syslog.SyslogDataFormat + camel-quarkus-aws-iam: + groupId: org.apache.camel.quarkus + artifactId: camel-quarkus-aws-iam schemes: - - id: stax + - id: aws-iam http: false passive: false javaTypes: - - org.apache.camel.component.stax.StAXComponent - camel-quarkus-aws-kms: + - org.apache.camel.component.aws.iam.IAMComponent + camel-quarkus-debezium-postgres: groupId: org.apache.camel.quarkus - artifactId: camel-quarkus-aws-kms + artifactId: camel-quarkus-debezium-postgres schemes: - - id: aws-kms + - id: debezium-postgres http: false passive: false javaTypes: - - org.apache.camel.component.aws.kms.KMSComponent + - org.apache.camel.component.debezium.DebeziumPostgresComponent loaders: - xml: + kts: groupId: org.apache.camel.k - artifactId: camel-k-loader-xml + artifactId: camel-k-loader-kotlin languages: - - xml + - kts metadata: - native: "true" - java: + native: "false" + yaml: groupId: org.apache.camel.k - artifactId: camel-k-loader-java + artifactId: camel-k-loader-yaml languages: - - java + - yaml metadata: - native: "false" + native: "true" groovy: groupId: org.apache.camel.k artifactId: camel-k-loader-groovy @@ -2942,20 +2942,20 @@ spec: - groovy metadata: native: "false" - yaml: + java: groupId: org.apache.camel.k - artifactId: camel-k-loader-yaml + artifactId: camel-k-loader-java languages: - - yaml + - java metadata: - native: "true" - kts: + native: "false" + xml: groupId: org.apache.camel.k - artifactId: camel-k-loader-kotlin + artifactId: camel-k-loader-xml languages: - - kts + - xml metadata: - native: "false" + native: "true" js: groupId: org.apache.camel.k artifactId: camel-k-loader-js diff --git a/deploy/olm-catalog/camel-k-dev/1.4.0-snapshot/camel.apache.org_integrations.yaml b/deploy/olm-catalog/camel-k-dev/1.4.0-snapshot/camel.apache.org_integrations.yaml index c28a5a8c92..96e26b9e2f 100644 --- a/deploy/olm-catalog/camel-k-dev/1.4.0-snapshot/camel.apache.org_integrations.yaml +++ b/deploy/olm-catalog/camel-k-dev/1.4.0-snapshot/camel.apache.org_integrations.yaml @@ -44,7 +44,7 @@ spec: name: Phase type: string - description: The integration kit - jsonPath: .status.kit + jsonPath: .status.integrationKit.name name: Kit type: string - description: The number of pods @@ -95,7 +95,67 @@ spec: type: object x-kubernetes-preserve-unknown-fields: true type: array + integrationKit: + description: 'ObjectReference contains enough information to let you + inspect or modify the referred object. --- New uses of this type + are discouraged because of difficulty describing its usage when + embedded in APIs. 1. Ignored fields. It includes many fields which + are not generally honored. For instance, ResourceVersion and FieldPath + are both very rarely valid in actual usage. 2. Invalid usage help. It + is impossible to add specific help for individual usage. In most + embedded usages, there are particular restrictions like, "must + refer only to types A and B" or "UID not honored" or "name must + be restricted". Those cannot be well described when embedded. 3. + Inconsistent validation. Because the usages are different, the + validation rules are different by usage, which makes it hard for + users to predict what will happen. 4. The fields are both imprecise + and overly precise. Kind is not a precise mapping to a URL. This + can produce ambiguity during interpretation and require a REST + mapping. In most cases, the dependency is on the group,resource + tuple and the version of the actual struct is irrelevant. 5. + We cannot easily change it. Because this type is embedded in many + locations, updates to this type will affect numerous schemas. Don''t + make new APIs embed an underspecified API type they do not control. + Instead of using this type, create a locally provided and used type + that is well-focused on your reference. For example, ServiceReferences + for admission registration: https://github.com/kubernetes/api/blob/release-1.17/admissionregistration/v1/types.go#L533 + .' + properties: + apiVersion: + description: API version of the referent. + type: string + fieldPath: + description: 'If referring to a piece of an object instead of + an entire object, this string should contain a valid JSON/Go + field access statement, such as desiredState.manifest.containers[2]. + For example, if the object reference is to a container within + a pod, this would take on a value like: "spec.containers{name}" + (where "name" refers to the name of the container that triggered + the event) or if no container name is specified "spec.containers[2]" + (container with index 2 in this pod). This syntax is chosen + only to have some well-defined way of referencing a part of + an object. TODO: this design is not final and this field is + subject to change in the future.' + type: string + kind: + description: 'Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + type: string + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names' + type: string + namespace: + description: 'Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/' + type: string + resourceVersion: + description: 'Specific resourceVersion to which this reference + is made, if any. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency' + type: string + uid: + description: 'UID of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids' + type: string + type: object kit: + description: 'Deprecated: use the IntegrationKit field' type: string profile: description: TraitProfile represents lists of traits that are enabled @@ -355,7 +415,67 @@ spec: type: array image: type: string + integrationKit: + description: 'ObjectReference contains enough information to let you + inspect or modify the referred object. --- New uses of this type + are discouraged because of difficulty describing its usage when + embedded in APIs. 1. Ignored fields. It includes many fields which + are not generally honored. For instance, ResourceVersion and FieldPath + are both very rarely valid in actual usage. 2. Invalid usage help. It + is impossible to add specific help for individual usage. In most + embedded usages, there are particular restrictions like, "must + refer only to types A and B" or "UID not honored" or "name must + be restricted". Those cannot be well described when embedded. 3. + Inconsistent validation. Because the usages are different, the + validation rules are different by usage, which makes it hard for + users to predict what will happen. 4. The fields are both imprecise + and overly precise. Kind is not a precise mapping to a URL. This + can produce ambiguity during interpretation and require a REST + mapping. In most cases, the dependency is on the group,resource + tuple and the version of the actual struct is irrelevant. 5. + We cannot easily change it. Because this type is embedded in many + locations, updates to this type will affect numerous schemas. Don''t + make new APIs embed an underspecified API type they do not control. + Instead of using this type, create a locally provided and used type + that is well-focused on your reference. For example, ServiceReferences + for admission registration: https://github.com/kubernetes/api/blob/release-1.17/admissionregistration/v1/types.go#L533 + .' + properties: + apiVersion: + description: API version of the referent. + type: string + fieldPath: + description: 'If referring to a piece of an object instead of + an entire object, this string should contain a valid JSON/Go + field access statement, such as desiredState.manifest.containers[2]. + For example, if the object reference is to a container within + a pod, this would take on a value like: "spec.containers{name}" + (where "name" refers to the name of the container that triggered + the event) or if no container name is specified "spec.containers[2]" + (container with index 2 in this pod). This syntax is chosen + only to have some well-defined way of referencing a part of + an object. TODO: this design is not final and this field is + subject to change in the future.' + type: string + kind: + description: 'Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + type: string + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names' + type: string + namespace: + description: 'Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/' + type: string + resourceVersion: + description: 'Specific resourceVersion to which this reference + is made, if any. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency' + type: string + uid: + description: 'UID of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids' + type: string + type: object kit: + description: 'Deprecated: use the IntegrationKit field' type: string lastInitTimestamp: description: The timestamp representing the last time when this integration @@ -367,8 +487,6 @@ spec: type: string platform: type: string - platformNamespace: - type: string profile: description: TraitProfile represents lists of traits that are enabled for the specific installation/integration diff --git a/deploy/olm-catalog/camel-k-dev/1.4.0-snapshot/camel.apache.org_kameletbindings.yaml b/deploy/olm-catalog/camel-k-dev/1.4.0-snapshot/camel.apache.org_kameletbindings.yaml index 5a427b5af4..c9a8b8724f 100644 --- a/deploy/olm-catalog/camel-k-dev/1.4.0-snapshot/camel.apache.org_kameletbindings.yaml +++ b/deploy/olm-catalog/camel-k-dev/1.4.0-snapshot/camel.apache.org_kameletbindings.yaml @@ -91,7 +91,68 @@ spec: type: object x-kubernetes-preserve-unknown-fields: true type: array + integrationKit: + description: 'ObjectReference contains enough information to let + you inspect or modify the referred object. --- New uses of this + type are discouraged because of difficulty describing its usage + when embedded in APIs. 1. Ignored fields. It includes many + fields which are not generally honored. For instance, ResourceVersion + and FieldPath are both very rarely valid in actual usage. 2. + Invalid usage help. It is impossible to add specific help for + individual usage. In most embedded usages, there are particular restrictions + like, "must refer only to types A and B" or "UID not honored" + or "name must be restricted". Those cannot be well described + when embedded. 3. Inconsistent validation. Because the usages + are different, the validation rules are different by usage, + which makes it hard for users to predict what will happen. 4. + The fields are both imprecise and overly precise. Kind is not + a precise mapping to a URL. This can produce ambiguity during + interpretation and require a REST mapping. In most cases, the + dependency is on the group,resource tuple and the version + of the actual struct is irrelevant. 5. We cannot easily change + it. Because this type is embedded in many locations, updates + to this type will affect numerous schemas. Don''t make + new APIs embed an underspecified API type they do not control. + Instead of using this type, create a locally provided and used + type that is well-focused on your reference. For example, ServiceReferences + for admission registration: https://github.com/kubernetes/api/blob/release-1.17/admissionregistration/v1/types.go#L533 + .' + properties: + apiVersion: + description: API version of the referent. + type: string + fieldPath: + description: 'If referring to a piece of an object instead + of an entire object, this string should contain a valid + JSON/Go field access statement, such as desiredState.manifest.containers[2]. + For example, if the object reference is to a container within + a pod, this would take on a value like: "spec.containers{name}" + (where "name" refers to the name of the container that triggered + the event) or if no container name is specified "spec.containers[2]" + (container with index 2 in this pod). This syntax is chosen + only to have some well-defined way of referencing a part + of an object. TODO: this design is not final and this field + is subject to change in the future.' + type: string + kind: + description: 'Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + type: string + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names' + type: string + namespace: + description: 'Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/' + type: string + resourceVersion: + description: 'Specific resourceVersion to which this reference + is made, if any. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency' + type: string + uid: + description: 'UID of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids' + type: string + type: object kit: + description: 'Deprecated: use the IntegrationKit field' type: string profile: description: TraitProfile represents lists of traits that are diff --git a/docs/modules/ROOT/assets/attachments/schema/integration-schema.json b/docs/modules/ROOT/assets/attachments/schema/integration-schema.json index 7423a3c49d..14b7051876 100644 --- a/docs/modules/ROOT/assets/attachments/schema/integration-schema.json +++ b/docs/modules/ROOT/assets/attachments/schema/integration-schema.json @@ -66,7 +66,42 @@ } } }, + "integrationKit": { + "description": "ObjectReference contains enough information to let you inspect or modify the referred object. --- New uses of this type are discouraged because of difficulty describing its usage when embedded in APIs. 1. Ignored fields. It includes many fields which are not generally honored. For instance, ResourceVersion and FieldPath are both very rarely valid in actual usage. 2. Invalid usage help. It is impossible to add specific help for individual usage. In most embedded usages, there are particular restrictions like, \"must refer only to types A and B\" or \"UID not honored\" or \"name must be restricted\". Those cannot be well described when embedded. 3. Inconsistent validation. Because the usages are different, the validation rules are different by usage, which makes it hard for users to predict what will happen. 4. The fields are both imprecise and overly precise. Kind is not a precise mapping to a URL. This can produce ambiguity during interpretation and require a REST mapping. In most cases, the dependency is on the group,resource tuple and the version of the actual struct is irrelevant. 5. We cannot easily change it. Because this type is embedded in many locations, updates to this type will affect numerous schemas. Don't make new APIs embed an underspecified API type they do not control. Instead of using this type, create a locally provided and used type that is well-focused on your reference. For example, ServiceReferences for admission registration: https://github.com/kubernetes/api/blob/release-1.17/admissionregistration/v1/types.go#L533 .", + "type": "object", + "properties": { + "apiVersion": { + "description": "API version of the referent.", + "type": "string" + }, + "fieldPath": { + "description": "If referring to a piece of an object instead of an entire object, this string should contain a valid JSON/Go field access statement, such as desiredState.manifest.containers[2]. For example, if the object reference is to a container within a pod, this would take on a value like: \"spec.containers{name}\" (where \"name\" refers to the name of the container that triggered the event) or if no container name is specified \"spec.containers[2]\" (container with index 2 in this pod). This syntax is chosen only to have some well-defined way of referencing a part of an object. TODO: this design is not final and this field is subject to change in the future.", + "type": "string" + }, + "kind": { + "description": "Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds", + "type": "string" + }, + "name": { + "description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names", + "type": "string" + }, + "namespace": { + "description": "Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/", + "type": "string" + }, + "resourceVersion": { + "description": "Specific resourceVersion to which this reference is made, if any. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency", + "type": "string" + }, + "uid": { + "description": "UID of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids", + "type": "string" + } + } + }, "kit": { + "description": "Deprecated: use the IntegrationKit field", "type": "string" }, "profile": { @@ -418,7 +453,42 @@ "image": { "type": "string" }, + "integrationKit": { + "description": "ObjectReference contains enough information to let you inspect or modify the referred object. --- New uses of this type are discouraged because of difficulty describing its usage when embedded in APIs. 1. Ignored fields. It includes many fields which are not generally honored. For instance, ResourceVersion and FieldPath are both very rarely valid in actual usage. 2. Invalid usage help. It is impossible to add specific help for individual usage. In most embedded usages, there are particular restrictions like, \"must refer only to types A and B\" or \"UID not honored\" or \"name must be restricted\". Those cannot be well described when embedded. 3. Inconsistent validation. Because the usages are different, the validation rules are different by usage, which makes it hard for users to predict what will happen. 4. The fields are both imprecise and overly precise. Kind is not a precise mapping to a URL. This can produce ambiguity during interpretation and require a REST mapping. In most cases, the dependency is on the group,resource tuple and the version of the actual struct is irrelevant. 5. We cannot easily change it. Because this type is embedded in many locations, updates to this type will affect numerous schemas. Don't make new APIs embed an underspecified API type they do not control. Instead of using this type, create a locally provided and used type that is well-focused on your reference. For example, ServiceReferences for admission registration: https://github.com/kubernetes/api/blob/release-1.17/admissionregistration/v1/types.go#L533 .", + "type": "object", + "properties": { + "apiVersion": { + "description": "API version of the referent.", + "type": "string" + }, + "fieldPath": { + "description": "If referring to a piece of an object instead of an entire object, this string should contain a valid JSON/Go field access statement, such as desiredState.manifest.containers[2]. For example, if the object reference is to a container within a pod, this would take on a value like: \"spec.containers{name}\" (where \"name\" refers to the name of the container that triggered the event) or if no container name is specified \"spec.containers[2]\" (container with index 2 in this pod). This syntax is chosen only to have some well-defined way of referencing a part of an object. TODO: this design is not final and this field is subject to change in the future.", + "type": "string" + }, + "kind": { + "description": "Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds", + "type": "string" + }, + "name": { + "description": "Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names", + "type": "string" + }, + "namespace": { + "description": "Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/", + "type": "string" + }, + "resourceVersion": { + "description": "Specific resourceVersion to which this reference is made, if any. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency", + "type": "string" + }, + "uid": { + "description": "UID of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids", + "type": "string" + } + } + }, "kit": { + "description": "Deprecated: use the IntegrationKit field", "type": "string" }, "lastInitTimestamp": { @@ -433,9 +503,6 @@ "platform": { "type": "string" }, - "platformNamespace": { - "type": "string" - }, "profile": { "description": "TraitProfile represents lists of traits that are enabled for the specific installation/integration", "type": "string" diff --git a/e2e/support/test_support.go b/e2e/support/test_support.go index cdd0d7f389..f9250caa8f 100644 --- a/e2e/support/test_support.go +++ b/e2e/support/test_support.go @@ -461,7 +461,10 @@ func IntegrationKit(ns string, name string) func() string { if it == nil { return "" } - return it.Status.Kit + if it.Status.IntegrationKit == nil { + return "" + } + return it.Status.IntegrationKit.Name } } diff --git a/helm/camel-k/crds/crd-integration.yaml b/helm/camel-k/crds/crd-integration.yaml index c28a5a8c92..96e26b9e2f 100644 --- a/helm/camel-k/crds/crd-integration.yaml +++ b/helm/camel-k/crds/crd-integration.yaml @@ -44,7 +44,7 @@ spec: name: Phase type: string - description: The integration kit - jsonPath: .status.kit + jsonPath: .status.integrationKit.name name: Kit type: string - description: The number of pods @@ -95,7 +95,67 @@ spec: type: object x-kubernetes-preserve-unknown-fields: true type: array + integrationKit: + description: 'ObjectReference contains enough information to let you + inspect or modify the referred object. --- New uses of this type + are discouraged because of difficulty describing its usage when + embedded in APIs. 1. Ignored fields. It includes many fields which + are not generally honored. For instance, ResourceVersion and FieldPath + are both very rarely valid in actual usage. 2. Invalid usage help. It + is impossible to add specific help for individual usage. In most + embedded usages, there are particular restrictions like, "must + refer only to types A and B" or "UID not honored" or "name must + be restricted". Those cannot be well described when embedded. 3. + Inconsistent validation. Because the usages are different, the + validation rules are different by usage, which makes it hard for + users to predict what will happen. 4. The fields are both imprecise + and overly precise. Kind is not a precise mapping to a URL. This + can produce ambiguity during interpretation and require a REST + mapping. In most cases, the dependency is on the group,resource + tuple and the version of the actual struct is irrelevant. 5. + We cannot easily change it. Because this type is embedded in many + locations, updates to this type will affect numerous schemas. Don''t + make new APIs embed an underspecified API type they do not control. + Instead of using this type, create a locally provided and used type + that is well-focused on your reference. For example, ServiceReferences + for admission registration: https://github.com/kubernetes/api/blob/release-1.17/admissionregistration/v1/types.go#L533 + .' + properties: + apiVersion: + description: API version of the referent. + type: string + fieldPath: + description: 'If referring to a piece of an object instead of + an entire object, this string should contain a valid JSON/Go + field access statement, such as desiredState.manifest.containers[2]. + For example, if the object reference is to a container within + a pod, this would take on a value like: "spec.containers{name}" + (where "name" refers to the name of the container that triggered + the event) or if no container name is specified "spec.containers[2]" + (container with index 2 in this pod). This syntax is chosen + only to have some well-defined way of referencing a part of + an object. TODO: this design is not final and this field is + subject to change in the future.' + type: string + kind: + description: 'Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + type: string + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names' + type: string + namespace: + description: 'Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/' + type: string + resourceVersion: + description: 'Specific resourceVersion to which this reference + is made, if any. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency' + type: string + uid: + description: 'UID of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids' + type: string + type: object kit: + description: 'Deprecated: use the IntegrationKit field' type: string profile: description: TraitProfile represents lists of traits that are enabled @@ -355,7 +415,67 @@ spec: type: array image: type: string + integrationKit: + description: 'ObjectReference contains enough information to let you + inspect or modify the referred object. --- New uses of this type + are discouraged because of difficulty describing its usage when + embedded in APIs. 1. Ignored fields. It includes many fields which + are not generally honored. For instance, ResourceVersion and FieldPath + are both very rarely valid in actual usage. 2. Invalid usage help. It + is impossible to add specific help for individual usage. In most + embedded usages, there are particular restrictions like, "must + refer only to types A and B" or "UID not honored" or "name must + be restricted". Those cannot be well described when embedded. 3. + Inconsistent validation. Because the usages are different, the + validation rules are different by usage, which makes it hard for + users to predict what will happen. 4. The fields are both imprecise + and overly precise. Kind is not a precise mapping to a URL. This + can produce ambiguity during interpretation and require a REST + mapping. In most cases, the dependency is on the group,resource + tuple and the version of the actual struct is irrelevant. 5. + We cannot easily change it. Because this type is embedded in many + locations, updates to this type will affect numerous schemas. Don''t + make new APIs embed an underspecified API type they do not control. + Instead of using this type, create a locally provided and used type + that is well-focused on your reference. For example, ServiceReferences + for admission registration: https://github.com/kubernetes/api/blob/release-1.17/admissionregistration/v1/types.go#L533 + .' + properties: + apiVersion: + description: API version of the referent. + type: string + fieldPath: + description: 'If referring to a piece of an object instead of + an entire object, this string should contain a valid JSON/Go + field access statement, such as desiredState.manifest.containers[2]. + For example, if the object reference is to a container within + a pod, this would take on a value like: "spec.containers{name}" + (where "name" refers to the name of the container that triggered + the event) or if no container name is specified "spec.containers[2]" + (container with index 2 in this pod). This syntax is chosen + only to have some well-defined way of referencing a part of + an object. TODO: this design is not final and this field is + subject to change in the future.' + type: string + kind: + description: 'Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + type: string + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names' + type: string + namespace: + description: 'Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/' + type: string + resourceVersion: + description: 'Specific resourceVersion to which this reference + is made, if any. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency' + type: string + uid: + description: 'UID of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids' + type: string + type: object kit: + description: 'Deprecated: use the IntegrationKit field' type: string lastInitTimestamp: description: The timestamp representing the last time when this integration @@ -367,8 +487,6 @@ spec: type: string platform: type: string - platformNamespace: - type: string profile: description: TraitProfile represents lists of traits that are enabled for the specific installation/integration diff --git a/helm/camel-k/crds/crd-kamelet-binding.yaml b/helm/camel-k/crds/crd-kamelet-binding.yaml index 5a427b5af4..c9a8b8724f 100644 --- a/helm/camel-k/crds/crd-kamelet-binding.yaml +++ b/helm/camel-k/crds/crd-kamelet-binding.yaml @@ -91,7 +91,68 @@ spec: type: object x-kubernetes-preserve-unknown-fields: true type: array + integrationKit: + description: 'ObjectReference contains enough information to let + you inspect or modify the referred object. --- New uses of this + type are discouraged because of difficulty describing its usage + when embedded in APIs. 1. Ignored fields. It includes many + fields which are not generally honored. For instance, ResourceVersion + and FieldPath are both very rarely valid in actual usage. 2. + Invalid usage help. It is impossible to add specific help for + individual usage. In most embedded usages, there are particular restrictions + like, "must refer only to types A and B" or "UID not honored" + or "name must be restricted". Those cannot be well described + when embedded. 3. Inconsistent validation. Because the usages + are different, the validation rules are different by usage, + which makes it hard for users to predict what will happen. 4. + The fields are both imprecise and overly precise. Kind is not + a precise mapping to a URL. This can produce ambiguity during + interpretation and require a REST mapping. In most cases, the + dependency is on the group,resource tuple and the version + of the actual struct is irrelevant. 5. We cannot easily change + it. Because this type is embedded in many locations, updates + to this type will affect numerous schemas. Don''t make + new APIs embed an underspecified API type they do not control. + Instead of using this type, create a locally provided and used + type that is well-focused on your reference. For example, ServiceReferences + for admission registration: https://github.com/kubernetes/api/blob/release-1.17/admissionregistration/v1/types.go#L533 + .' + properties: + apiVersion: + description: API version of the referent. + type: string + fieldPath: + description: 'If referring to a piece of an object instead + of an entire object, this string should contain a valid + JSON/Go field access statement, such as desiredState.manifest.containers[2]. + For example, if the object reference is to a container within + a pod, this would take on a value like: "spec.containers{name}" + (where "name" refers to the name of the container that triggered + the event) or if no container name is specified "spec.containers[2]" + (container with index 2 in this pod). This syntax is chosen + only to have some well-defined way of referencing a part + of an object. TODO: this design is not final and this field + is subject to change in the future.' + type: string + kind: + description: 'Kind of the referent. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' + type: string + name: + description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names' + type: string + namespace: + description: 'Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/' + type: string + resourceVersion: + description: 'Specific resourceVersion to which this reference + is made, if any. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency' + type: string + uid: + description: 'UID of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids' + type: string + type: object kit: + description: 'Deprecated: use the IntegrationKit field' type: string profile: description: TraitProfile represents lists of traits that are diff --git a/pkg/apis/camel/v1/integration_types.go b/pkg/apis/camel/v1/integration_types.go index fc3689c89c..6ba7e10d7e 100644 --- a/pkg/apis/camel/v1/integration_types.go +++ b/pkg/apis/camel/v1/integration_types.go @@ -27,40 +27,43 @@ import ( // IntegrationSpec defines the desired state of Integration type IntegrationSpec struct { - Replicas *int32 `json:"replicas,omitempty"` - Sources []SourceSpec `json:"sources,omitempty"` - Flows []Flow `json:"flows,omitempty"` - Resources []ResourceSpec `json:"resources,omitempty"` - Kit string `json:"kit,omitempty"` - Dependencies []string `json:"dependencies,omitempty"` - Profile TraitProfile `json:"profile,omitempty"` - Traits map[string]TraitSpec `json:"traits,omitempty"` - Configuration []ConfigurationSpec `json:"configuration,omitempty"` - Repositories []string `json:"repositories,omitempty"` - ServiceAccountName string `json:"serviceAccountName,omitempty"` + Replicas *int32 `json:"replicas,omitempty"` + Sources []SourceSpec `json:"sources,omitempty"` + Flows []Flow `json:"flows,omitempty"` + Resources []ResourceSpec `json:"resources,omitempty"` + // Deprecated: use the IntegrationKit field + Kit string `json:"kit,omitempty"` + IntegrationKit *corev1.ObjectReference `json:"integrationKit,omitempty"` + Dependencies []string `json:"dependencies,omitempty"` + Profile TraitProfile `json:"profile,omitempty"` + Traits map[string]TraitSpec `json:"traits,omitempty"` + Configuration []ConfigurationSpec `json:"configuration,omitempty"` + Repositories []string `json:"repositories,omitempty"` + ServiceAccountName string `json:"serviceAccountName,omitempty"` } // IntegrationStatus defines the observed state of Integration type IntegrationStatus struct { - Phase IntegrationPhase `json:"phase,omitempty"` - Digest string `json:"digest,omitempty"` - Image string `json:"image,omitempty"` - Dependencies []string `json:"dependencies,omitempty"` - Profile TraitProfile `json:"profile,omitempty"` - Kit string `json:"kit,omitempty"` - PlatformNamespace string `json:"platformNamespace,omitempty"` - Platform string `json:"platform,omitempty"` - GeneratedSources []SourceSpec `json:"generatedSources,omitempty"` - GeneratedResources []ResourceSpec `json:"generatedResources,omitempty"` - Failure *Failure `json:"failure,omitempty"` - RuntimeVersion string `json:"runtimeVersion,omitempty"` - RuntimeProvider RuntimeProvider `json:"runtimeProvider,omitempty"` - Configuration []ConfigurationSpec `json:"configuration,omitempty"` - Conditions []IntegrationCondition `json:"conditions,omitempty"` - Version string `json:"version,omitempty"` - Replicas *int32 `json:"replicas,omitempty"` - Selector string `json:"selector,omitempty"` - Capabilities []string `json:"capabilities,omitempty"` + Phase IntegrationPhase `json:"phase,omitempty"` + Digest string `json:"digest,omitempty"` + Image string `json:"image,omitempty"` + Dependencies []string `json:"dependencies,omitempty"` + Profile TraitProfile `json:"profile,omitempty"` + // Deprecated: use the IntegrationKit field + Kit string `json:"kit,omitempty"` + IntegrationKit *corev1.ObjectReference `json:"integrationKit,omitempty"` + Platform string `json:"platform,omitempty"` + GeneratedSources []SourceSpec `json:"generatedSources,omitempty"` + GeneratedResources []ResourceSpec `json:"generatedResources,omitempty"` + Failure *Failure `json:"failure,omitempty"` + RuntimeVersion string `json:"runtimeVersion,omitempty"` + RuntimeProvider RuntimeProvider `json:"runtimeProvider,omitempty"` + Configuration []ConfigurationSpec `json:"configuration,omitempty"` + Conditions []IntegrationCondition `json:"conditions,omitempty"` + Version string `json:"version,omitempty"` + Replicas *int32 `json:"replicas,omitempty"` + Selector string `json:"selector,omitempty"` + Capabilities []string `json:"capabilities,omitempty"` // The timestamp representing the last time when this integration was initialized. InitializationTimestamp *metav1.Time `json:"lastInitTimestamp,omitempty"` } @@ -74,7 +77,7 @@ type IntegrationStatus struct { // +kubebuilder:storageversion // +kubebuilder:subresource:scale:specpath=.spec.replicas,statuspath=.status.replicas,selectorpath=.status.selector // +kubebuilder:printcolumn:name="Phase",type=string,JSONPath=`.status.phase`,description="The integration phase" -// +kubebuilder:printcolumn:name="Kit",type=string,JSONPath=`.status.kit`,description="The integration kit" +// +kubebuilder:printcolumn:name="Kit",type=string,JSONPath=`.status.integrationKit.name`,description="The integration kit" // +kubebuilder:printcolumn:name="Replicas",type=integer,JSONPath=`.status.replicas`,description="The number of pods" // Integration is the Schema for the integrations API diff --git a/pkg/apis/camel/v1/integration_types_support.go b/pkg/apis/camel/v1/integration_types_support.go index 6384720a2b..34d973bf9b 100644 --- a/pkg/apis/camel/v1/integration_types_support.go +++ b/pkg/apis/camel/v1/integration_types_support.go @@ -259,7 +259,6 @@ func (in *Integration) SetIntegrationPlatform(platform *IntegrationPlatform) { } in.Status.SetCondition(IntegrationConditionPlatformAvailable, cs, IntegrationConditionPlatformAvailableReason, platform.Namespace+"/"+platform.Name) - in.Status.PlatformNamespace = platform.Namespace in.Status.Platform = platform.Name } @@ -277,14 +276,23 @@ func (in *Integration) SetIntegrationKit(kit *IntegrationKit) { } in.Status.SetCondition(IntegrationConditionKitAvailable, cs, IntegrationConditionKitAvailableReason, message) - in.Status.Kit = kit.Name + in.Status.IntegrationKit = &corev1.ObjectReference{ + Namespace: kit.Namespace, + Name: kit.Name, + } in.Status.Image = kit.Status.Image } -// SetIntegrationKit -- -func (in *Integration) GetIntegrationKitNamespace() string { - if in.Status.PlatformNamespace != "" { - return in.Status.PlatformNamespace +// GetIntegrationKitNamespace -- +func (in *Integration) GetIntegrationKitNamespace(p *IntegrationPlatform) string { + if in.Status.IntegrationKit != nil && in.Status.IntegrationKit.Namespace != "" { + return in.Status.IntegrationKit.Namespace + } + if in.Spec.IntegrationKit != nil && in.Spec.IntegrationKit.Namespace != "" { + return in.Spec.IntegrationKit.Namespace + } + if p != nil { + return p.Namespace } return in.Namespace } diff --git a/pkg/apis/camel/v1/zz_generated.deepcopy.go b/pkg/apis/camel/v1/zz_generated.deepcopy.go index 48ab8ddd95..4637c2d4c9 100644 --- a/pkg/apis/camel/v1/zz_generated.deepcopy.go +++ b/pkg/apis/camel/v1/zz_generated.deepcopy.go @@ -1145,6 +1145,11 @@ func (in *IntegrationSpec) DeepCopyInto(out *IntegrationSpec) { (*in)[i].DeepCopyInto(&(*out)[i]) } } + if in.IntegrationKit != nil { + in, out := &in.IntegrationKit, &out.IntegrationKit + *out = new(corev1.ObjectReference) + **out = **in + } if in.Dependencies != nil { in, out := &in.Dependencies, &out.Dependencies *out = make([]string, len(*in)) @@ -1187,6 +1192,11 @@ func (in *IntegrationStatus) DeepCopyInto(out *IntegrationStatus) { *out = make([]string, len(*in)) copy(*out, *in) } + if in.IntegrationKit != nil { + in, out := &in.IntegrationKit, &out.IntegrationKit + *out = new(corev1.ObjectReference) + **out = **in + } if in.GeneratedSources != nil { in, out := &in.GeneratedSources, &out.GeneratedSources *out = make([]SourceSpec, len(*in)) diff --git a/pkg/cmd/describe_integration.go b/pkg/cmd/describe_integration.go index 3d6b7ccdcf..bb4460770d 100644 --- a/pkg/cmd/describe_integration.go +++ b/pkg/cmd/describe_integration.go @@ -101,7 +101,12 @@ func (command *describeIntegrationCommandOptions) describeIntegration(i v1.Integ w.Write(0, "Phase:\t%s\n", i.Status.Phase) w.Write(0, "Runtime Version:\t%s\n", i.Status.RuntimeVersion) - w.Write(0, "Kit:\t%s\n", i.Status.Kit) + kit := "" + if i.Status.IntegrationKit != nil { + ns := i.GetIntegrationKitNamespace(nil) + kit = fmt.Sprintf("%s/%s", ns, i.Status.IntegrationKit.Name) + } + w.Write(0, "Kit:\t%s\n", kit) w.Write(0, "Image:\t%s\n", i.Status.Image) w.Write(0, "Version:\t%s\n", i.Status.Version) diff --git a/pkg/cmd/get.go b/pkg/cmd/get.go index 0bdf1f4947..bf0f1300a8 100644 --- a/pkg/cmd/get.go +++ b/pkg/cmd/get.go @@ -81,7 +81,12 @@ func (o *getCmdOptions) run(cmd *cobra.Command, args []string) error { w := tabwriter.NewWriter(cmd.OutOrStdout(), 0, 8, 1, '\t', 0) fmt.Fprintln(w, "NAME\tPHASE\tKIT") for _, integration := range integrationList.Items { - fmt.Fprintf(w, "%s\t%s\t%s\n", integration.Name, string(integration.Status.Phase), integration.Status.Kit) + kit := "" + if integration.Status.IntegrationKit != nil { + ns := integration.GetIntegrationKitNamespace(nil) + kit = fmt.Sprintf("%s/%s", ns, integration.Status.IntegrationKit.Name) + } + fmt.Fprintf(w, "%s\t%s\t%s\n", integration.Name, string(integration.Status.Phase), kit) } w.Flush() diff --git a/pkg/cmd/log.go b/pkg/cmd/log.go index dc2f854359..ced501efa8 100644 --- a/pkg/cmd/log.go +++ b/pkg/cmd/log.go @@ -142,7 +142,7 @@ func (o *logCmdOptions) run(cmd *cobra.Command, args []string) error { // the associated Integration Kit's progress // newLogMsg = fmt.Sprintf("The building kit for integration '%s' is being initialised. This may take some time ...", integrationId) - if integration.Status.Kit == "" { + if integration.Status.IntegrationKit == nil { // // Not created yet so wait quietly // @@ -155,13 +155,13 @@ func (o *logCmdOptions) run(cmd *cobra.Command, args []string) error { APIVersion: v1.SchemeGroupVersion.String(), }, ObjectMeta: metav1.ObjectMeta{ - Namespace: o.Namespace, - Name: integration.Status.Kit, + Namespace: integration.Status.IntegrationKit.Namespace, + Name: integration.Status.IntegrationKit.Name, }, } ikKey := k8sclient.ObjectKey{ - Namespace: o.Namespace, - Name: integration.Status.Kit, + Namespace: integration.Status.IntegrationKit.Namespace, + Name: integration.Status.IntegrationKit.Name, } // diff --git a/pkg/cmd/run.go b/pkg/cmd/run.go index 6f5f4ce003..87e3ac829f 100644 --- a/pkg/cmd/run.go +++ b/pkg/cmd/run.go @@ -439,6 +439,14 @@ func (o *runCmdOptions) updateIntegrationCode(c client.Client, sources []string, return nil, errors.New("unable to determine integration name") } + var integrationKit *corev1.ObjectReference + if o.IntegrationKit != "" { + integrationKit = &corev1.ObjectReference{ + Namespace: namespace, + Name: o.IntegrationKit, + } + } + integration := v1.Integration{ TypeMeta: metav1.TypeMeta{ Kind: v1.IntegrationKind, @@ -449,11 +457,11 @@ func (o *runCmdOptions) updateIntegrationCode(c client.Client, sources []string, Name: name, }, Spec: v1.IntegrationSpec{ - Dependencies: make([]string, 0, len(o.Dependencies)), - Kit: o.IntegrationKit, - Configuration: make([]v1.ConfigurationSpec, 0), - Repositories: o.Repositories, - Profile: v1.TraitProfileByName(o.Profile), + Dependencies: make([]string, 0, len(o.Dependencies)), + IntegrationKit: integrationKit, + Configuration: make([]v1.ConfigurationSpec, 0), + Repositories: o.Repositories, + Profile: v1.TraitProfileByName(o.Profile), }, } diff --git a/pkg/controller/integration/build_kit.go b/pkg/controller/integration/build_kit.go index 1cc782765d..863690d7c3 100644 --- a/pkg/controller/integration/build_kit.go +++ b/pkg/controller/integration/build_kit.go @@ -22,9 +22,11 @@ import ( "fmt" v1 "github.com/apache/camel-k/pkg/apis/camel/v1" + "github.com/apache/camel-k/pkg/platform" "github.com/apache/camel-k/pkg/trait" "github.com/apache/camel-k/pkg/util" "github.com/rs/xid" + k8serrors "k8s.io/apimachinery/pkg/api/errors" ) // NewBuildKitAction create an action that handles integration kit build @@ -92,7 +94,7 @@ func (action *buildKitAction) Handle(ctx context.Context, integration *v1.Integr return integration, nil } - if integration.Status.Kit == "" { + if integration.Status.IntegrationKit == nil || integration.Status.IntegrationKit.Name == "" { integration.SetIntegrationKit(kit) return integration, nil @@ -101,8 +103,13 @@ func (action *buildKitAction) Handle(ctx context.Context, integration *v1.Integr return nil, nil } + pl, err := platform.GetCurrent(ctx, action.client, integration.Namespace) + if err != nil && !k8serrors.IsNotFound(err) { + return nil, err + } + platformKitName := fmt.Sprintf("kit-%s", xid.New()) - platformKit := v1.NewIntegrationKit(integration.GetIntegrationKitNamespace(), platformKitName) + platformKit := v1.NewIntegrationKit(integration.GetIntegrationKitNamespace(pl), platformKitName) // Add some information for post-processing, this may need to be refactored // to a proper data structure diff --git a/pkg/controller/integration/deploy.go b/pkg/controller/integration/deploy.go index efa82ada54..fee22ae543 100644 --- a/pkg/controller/integration/deploy.go +++ b/pkg/controller/integration/deploy.go @@ -44,13 +44,13 @@ func (action *deployAction) CanHandle(integration *v1.Integration) bool { } func (action *deployAction) Handle(ctx context.Context, integration *v1.Integration) (*v1.Integration, error) { - if integration.Status.Kit == "" { + if integration.Status.IntegrationKit == nil { return nil, errors.Errorf("no kit set on integration %s", integration.Name) } - kit, err := kubernetes.GetIntegrationKit(ctx, action.client, integration.Status.Kit, integration.GetIntegrationKitNamespace()) + kit, err := kubernetes.GetIntegrationKit(ctx, action.client, integration.Status.IntegrationKit.Name, integration.Status.IntegrationKit.Namespace) if err != nil { - return nil, errors.Wrapf(err, "unable to find integration kit %s, %s", integration.Status.Kit, err) + return nil, errors.Wrapf(err, "unable to find integration kit %s/%s, %s", integration.Status.IntegrationKit.Namespace, integration.Status.IntegrationKit.Name, err) } _, err = trait.Apply(ctx, action.client, integration, kit) diff --git a/pkg/controller/integration/initialize.go b/pkg/controller/integration/initialize.go index d33d816819..102b66dd7f 100644 --- a/pkg/controller/integration/initialize.go +++ b/pkg/controller/integration/initialize.go @@ -20,6 +20,9 @@ package integration import ( "context" + "github.com/apache/camel-k/pkg/platform" + corev1 "k8s.io/api/core/v1" + k8serrors "k8s.io/apimachinery/pkg/api/errors" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" v1 "github.com/apache/camel-k/pkg/apis/camel/v1" @@ -52,10 +55,33 @@ func (action *initializeAction) Handle(ctx context.Context, integration *v1.Inte return nil, err } - kit := v1.NewIntegrationKit(integration.GetIntegrationKitNamespace(), integration.Spec.Kit) + if integration.Spec.IntegrationKit == nil && integration.Spec.Kit != "" { + // TODO: temporary fallback until deprecated field gets removed + integration.Spec.IntegrationKit = &corev1.ObjectReference{ + Name: integration.Spec.Kit, + } + } + + if integration.Spec.IntegrationKit != nil && integration.Spec.IntegrationKit.Name != "" { + kitNamespace := integration.Spec.IntegrationKit.Namespace + kitName := integration.Spec.IntegrationKit.Name + + if kitNamespace == "" { + pl, err := platform.GetCurrent(ctx, action.client, integration.Namespace) + if err != nil && !k8serrors.IsNotFound(err) { + return nil, err + } + if pl != nil { + kitNamespace = pl.Namespace + } + } + kit := v1.NewIntegrationKit(kitNamespace, kitName) + integration.SetIntegrationKit(&kit) + } else { + integration.Status.IntegrationKit = nil + } integration.Status.Phase = v1.IntegrationPhaseBuildingKit - integration.SetIntegrationKit(&kit) integration.Status.Version = defaults.Version if timestamp := integration.Status.InitializationTimestamp; timestamp == nil || timestamp.IsZero() { now := metav1.Now() diff --git a/pkg/controller/integration/util.go b/pkg/controller/integration/util.go index f0fc97bc89..986b499e29 100644 --- a/pkg/controller/integration/util.go +++ b/pkg/controller/integration/util.go @@ -21,7 +21,9 @@ import ( "context" "encoding/json" + "github.com/apache/camel-k/pkg/platform" "github.com/pkg/errors" + k8errors "k8s.io/apimachinery/pkg/api/errors" "k8s.io/apimachinery/pkg/selection" k8sclient "sigs.k8s.io/controller-runtime/pkg/client" @@ -34,17 +36,22 @@ import ( // LookupKitForIntegration -- func LookupKitForIntegration(ctx context.Context, c k8sclient.Reader, integration *v1.Integration) (*v1.IntegrationKit, error) { - if integration.Status.Kit != "" { - kit, err := kubernetes.GetIntegrationKit(ctx, c, integration.Status.Kit, integration.GetIntegrationKitNamespace()) + if integration.Status.IntegrationKit != nil { + kit, err := kubernetes.GetIntegrationKit(ctx, c, integration.Status.IntegrationKit.Name, integration.Status.IntegrationKit.Namespace) if err != nil { - return nil, errors.Wrapf(err, "unable to find integration kit %s/%s, %s", integration.GetIntegrationKitNamespace(), integration.Status.Kit, err) + return nil, errors.Wrapf(err, "unable to find integration kit %s/%s, %s", integration.Status.IntegrationKit.Namespace, integration.Status.IntegrationKit.Name, err) } return kit, nil } + pl, err := platform.GetCurrent(ctx, c, integration.Namespace) + if err != nil && !k8errors.IsNotFound(err) { + return nil, err + } + options := []k8sclient.ListOption{ - k8sclient.InNamespace(integration.GetIntegrationKitNamespace()), + k8sclient.InNamespace(integration.GetIntegrationKitNamespace(pl)), k8sclient.MatchingLabels{ "camel.apache.org/runtime.version": integration.Status.RuntimeVersion, "camel.apache.org/runtime.provider": string(integration.Status.RuntimeProvider), diff --git a/pkg/controller/integrationkit/integrationkit_controller.go b/pkg/controller/integrationkit/integrationkit_controller.go index cc4993d170..ac38555db9 100644 --- a/pkg/controller/integrationkit/integrationkit_controller.go +++ b/pkg/controller/integrationkit/integrationkit_controller.go @@ -204,27 +204,31 @@ func (r *reconcileIntegrationKit) Reconcile(request reconcile.Request) (reconcil targetLog := rlog.ForIntegrationKit(target) if target.Status.Phase == v1.IntegrationKitPhaseNone || target.Status.Phase == v1.IntegrationKitPhaseWaitingForPlatform { - // TODO.... here local... - pl, err := platform.GetOrFindLocal(ctx, r.client, target.Namespace, target.Status.Platform, true) - if err != nil || pl.Status.Phase != v1.IntegrationPlatformPhaseReady { - target.Status.Phase = v1.IntegrationKitPhaseWaitingForPlatform - } else { + if target.Labels["camel.apache.org/kit.type"] == v1.IntegrationKitTypeExternal { target.Status.Phase = v1.IntegrationKitPhaseInitialization - } - - if instance.Status.Phase != target.Status.Phase { - if err != nil { - target.Status.SetErrorCondition(v1.IntegrationKitConditionPlatformAvailable, v1.IntegrationKitConditionPlatformAvailableReason, err) + return r.update(ctx, &instance, target) + } else { + // Platform is always local to the kit + pl, err := platform.GetOrFindLocal(ctx, r.client, target.Namespace, target.Status.Platform, true) + if err != nil || pl.Status.Phase != v1.IntegrationPlatformPhaseReady { + target.Status.Phase = v1.IntegrationKitPhaseWaitingForPlatform + } else { + target.Status.Phase = v1.IntegrationKitPhaseInitialization } - if pl != nil { - target.SetIntegrationPlatform(pl) - } + if instance.Status.Phase != target.Status.Phase { + if err != nil { + target.Status.SetErrorCondition(v1.IntegrationKitConditionPlatformAvailable, v1.IntegrationKitConditionPlatformAvailableReason, err) + } - return r.update(ctx, &instance, target) - } + if pl != nil { + target.SetIntegrationPlatform(pl) + } - return reconcile.Result{}, err + return r.update(ctx, &instance, target) + } + return reconcile.Result{}, err + } } actions := []Action{ diff --git a/pkg/trait/jvm.go b/pkg/trait/jvm.go index 59b1f80b02..c4167f7ad7 100644 --- a/pkg/trait/jvm.go +++ b/pkg/trait/jvm.go @@ -70,23 +70,27 @@ func (t *jvmTrait) Configure(e *Environment) (bool, error) { func (t *jvmTrait) Apply(e *Environment) error { kit := e.IntegrationKit - if kit == nil && e.Integration.Status.Kit != "" { - name := e.Integration.Status.Kit - k := v1.NewIntegrationKit(e.Integration.Namespace, name) + if kit == nil && e.Integration.Status.IntegrationKit != nil { + name := e.Integration.Status.IntegrationKit.Name + ns := e.Integration.GetIntegrationKitNamespace(e.Platform) + k := v1.NewIntegrationKit(ns, name) key := k8sclient.ObjectKey{ - Namespace: e.Integration.Namespace, + Namespace: ns, Name: name, } if err := t.Client.Get(t.Ctx, key, &k); err != nil { - return errors.Wrapf(err, "unable to find integration kit %s, %s", name, err) + return errors.Wrapf(err, "unable to find integration kit %s/%s, %s", ns, name, err) } kit = &k } if kit == nil { - return fmt.Errorf("unable to find integration kit %s", e.Integration.Status.Kit) + if e.Integration.Status.IntegrationKit != nil { + return fmt.Errorf("unable to find integration kit %s/%s", e.Integration.GetIntegrationKitNamespace(e.Platform), e.Integration.Status.IntegrationKit.Name) + } + return fmt.Errorf("unable to find integration kit for integration %s", e.Integration.Name) } classpath := strset.New() diff --git a/pkg/trait/pull_secret.go b/pkg/trait/pull_secret.go index 1c19af7a4c..1dea2b12d1 100644 --- a/pkg/trait/pull_secret.go +++ b/pkg/trait/pull_secret.go @@ -93,7 +93,7 @@ func (t *pullSecretTrait) Configure(e *Environment) (bool, error) { } } isOperatorGlobal := platform.IsCurrentOperatorGlobal() - isKitExternal := e.Integration.GetIntegrationKitNamespace() != e.Integration.Namespace + isKitExternal := e.Integration.GetIntegrationKitNamespace(e.Platform) != e.Integration.Namespace needsDelegation := isOpenshift && isOperatorGlobal && isKitExternal t.ImagePullerDelegation = &needsDelegation } @@ -136,7 +136,7 @@ func (t *pullSecretTrait) newImagePullerRoleBinding(e *Environment) *rbacv1.Role } return &rbacv1.RoleBinding{ ObjectMeta: metav1.ObjectMeta{ - Namespace: e.Integration.GetIntegrationKitNamespace(), + Namespace: e.Integration.GetIntegrationKitNamespace(e.Platform), Name: fmt.Sprintf("camel-k-puller-%s", e.Integration.Namespace), }, RoleRef: rbacv1.RoleRef{ diff --git a/pkg/trait/trait_types.go b/pkg/trait/trait_types.go index b845eb97bf..97973d976f 100644 --- a/pkg/trait/trait_types.go +++ b/pkg/trait/trait_types.go @@ -311,8 +311,11 @@ func (e *Environment) getControllerStrategyChoosers() (res []ControllerStrategyS // DetermineCatalogNamespace -- func (e *Environment) DetermineCatalogNamespace() string { - if e.Integration != nil && e.Integration.Status.PlatformNamespace != "" { - return e.Integration.Status.PlatformNamespace + if e.Integration != nil && e.Integration.Status.IntegrationKit != nil && e.Integration.Status.IntegrationKit.Namespace != "" { + return e.Integration.Status.IntegrationKit.Namespace + } + if e.Integration != nil && e.Integration.Spec.IntegrationKit != nil && e.Integration.Spec.IntegrationKit.Namespace != "" { + return e.Integration.Spec.IntegrationKit.Namespace } if e.Platform != nil && e.Platform.Namespace != "" { return e.Platform.Namespace diff --git a/pkg/trait/util.go b/pkg/trait/util.go index 97376f9da0..debba1f750 100644 --- a/pkg/trait/util.go +++ b/pkg/trait/util.go @@ -41,15 +41,13 @@ var exactVersionRegexp = regexp.MustCompile(`^(\d+)\.(\d+)\.([\w-.]+)$`) // GetIntegrationKit retrieves the kit set on the integration func GetIntegrationKit(ctx context.Context, c client.Client, integration *v1.Integration) (*v1.IntegrationKit, error) { - if integration.Status.Kit == "" { + if integration.Status.IntegrationKit == nil { return nil, nil } - - name := integration.Status.Kit - kit := v1.NewIntegrationKit(integration.GetIntegrationKitNamespace(), name) + kit := v1.NewIntegrationKit(integration.Status.IntegrationKit.Namespace, integration.Status.IntegrationKit.Name) key := k8sclient.ObjectKey{ - Namespace: integration.GetIntegrationKitNamespace(), - Name: name, + Namespace: integration.Status.IntegrationKit.Namespace, + Name: integration.Status.IntegrationKit.Name, } err := c.Get(ctx, key, &kit) return &kit, err diff --git a/pkg/util/digest/digest.go b/pkg/util/digest/digest.go index 4b2dfba188..462aff20f7 100644 --- a/pkg/util/digest/digest.go +++ b/pkg/util/digest/digest.go @@ -45,8 +45,10 @@ func ComputeForIntegration(integration *v1.Integration) (string, error) { return "", err } // Integration Kit is relevant - if _, err := hash.Write([]byte(integration.Spec.Kit)); err != nil { - return "", err + if integration.Spec.IntegrationKit != nil { + if _, err := hash.Write([]byte(fmt.Sprintf("%s/%s", integration.Spec.IntegrationKit.Namespace, integration.Spec.IntegrationKit.Name))); err != nil { + return "", err + } } // Profile is relevant if _, err := hash.Write([]byte(integration.Spec.Profile)); err != nil {