nicolaferraro opened a new pull request #1274: Refactoring traits to allow addons and add master trait (as addon) URL: https://github.com/apache/camel-k/pull/1274 <!-- Description --> Fix #1234 Needs https://github.com/apache/camel-k-runtime/pull/242 This removes the trait static lists and allow to dynamically define traits also in other packages. This added the possibility to define an "addons" package. Currently addons are always loaded, but technically they can be easily disabled at both build time or runtime. The idea is, for the future, to include addons for other external projects, so that Camel K can leverage them to auto-configure the integrations. Examples of traits that are best placed in the addon package are: - Camel non-core features: like Master, Cron - Knative - Keda (#1107) - Connectors (idea still maturing, making sure that Camel K can configure connections e.g. to a Kafka [Strimzi] instance, automatically injecting certificates and authentication credentials in the integration) About the **master component**: it's using the `camel-k-runtime-master` module, which embeds `camel-kubernetes` to do leader election. It's enabled by default when someone uses a route like: ``` from("master:listener:telegram:bots")... ``` So that that route is started only once, no matter how many `replicas` you set in the integration (works also with auto-scaling integrations). By default, each integration has its own lock domain (i.e. configmap), but configuration can be tweaked to let two different integrations share the same lock if needed. <!-- Enter your extended release note in the below block. If the PR requires additional action from users switching to the new release, include the string "action required". If no release note is required, write "NONE". You can (optionally) mark this PR with labels "kind/bug" or "kind/feature" to make sure the text is added to the right section of the release notes. --> **Release Note** ```release-note Camel master component is automatically configured to do leader election using Kubernetes resources ```
---------------------------------------------------------------- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org With regards, Apache Git Services