knative-extensions / eventing-integrations

Eventing integration container images
Apache License 2.0
0 stars 4 forks source link

Extract Version information for Camel (and quarkus) #25

Open matzew opened 1 month ago

matzew commented 1 month ago

It would be nice to somehow receive the version of the runtimes, so that (eventually) the controller could stash this information on the .status of each CR

kn-connector-source-kamelet-source-timer-deployment-68c48cp8dsr source INFO running in /home/jboss
kn-connector-source-kamelet-source-timer-deployment-68c48cp8dsr source __  ____  __  _____   ___  __ ____  ______ 
kn-connector-source-kamelet-source-timer-deployment-68c48cp8dsr source  --/ __ \/ / / / _ | / _ \/ //_/ / / / __/ 
kn-connector-source-kamelet-source-timer-deployment-68c48cp8dsr source  -/ /_/ / /_/ / __ |/ , _/ ,< / /_/ /\ \   
kn-connector-source-kamelet-source-timer-deployment-68c48cp8dsr source --\___\_\____/_/ |_/_/|_/_/|_|\____/___/   
kn-connector-source-kamelet-source-timer-deployment-68c48cp8dsr source 2024-10-14 13:42:30,507 WARN  [io.qua.config] (main) Unrecognized configuration key "quarkus.camel.openapi.codegen.model-package" was provided; it will be ignored; verify that the dependency extension for this configuration is set or that you did not make a typo
kn-connector-source-kamelet-source-timer-deployment-68c48cp8dsr source 2024-10-14 13:42:31,964 INFO  [org.apa.cam.qua.cor.CamelBootstrapRecorder] (main) Apache Camel Quarkus 3.15.0 is starting
kn-connector-source-kamelet-source-timer-deployment-68c48cp8dsr source 2024-10-14 13:42:31,965 INFO  [org.apa.cam.mai.MainSupport] (main) Apache Camel (Main) 4.8.0 is starting
rhuss commented 1 month ago

I think it would be great if that meta information that is helpful for debugging could be already hardcoded into the controller, much like the image tag/hash for each runtime kamelet-based source image is hardcoded in the controller. This way, the controller can add it directly to the status without inspecting the running image during runtime. This would be much simpler and work, even when the runtime image does not come up for some reason.

Besides the version, I could imagine also adding information like the Maven coordinates of the underlying Camel component (or, if we want to go fancy, some URL pointing to the documentation of the schema/Kamelet)

matzew commented 1 month ago

One big issue is, that for running sources/sinks, you would have to update all of those.

Perhaps there is different way of exposing this information. Perhaps we have global annotation of the Camel runtime, eg on Eventing controller

matzew commented 1 month ago

IMO not to pressing, since each pod will log the version anyways