-
Notifications
You must be signed in to change notification settings - Fork 348
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat: import external Camel applications #4942
Conversation
🐫 Thank you for contributing! Code Coverage Report |
quick comment before looking at the code: we can maybe simplify it by using a static label |
Unfortunately not. Or at least, it would not be that easy. The way we are watching objects is quite limited to the presence of the |
mh, I see. |
🐫 Thank you for contributing! Code Coverage Report |
🐫 Thank you for contributing! Code Coverage Report |
c6e2675
to
4e8196d
Compare
🐫 Thank you for contributing! Code Coverage Report |
4e8196d
to
1862bfe
Compare
🐫 Thank you for contributing! Code Coverage Report |
a3318e2
to
2342349
Compare
🐫 Thank you for contributing! Code Coverage Report ✔️ - Coverage changed: 33.6% --> 34.1% (Coverage difference: +.5%) |
2 similar comments
🐫 Thank you for contributing! Code Coverage Report ✔️ - Coverage changed: 33.6% --> 34.1% (Coverage difference: +.5%) |
🐫 Thank you for contributing! Code Coverage Report ✔️ - Coverage changed: 33.6% --> 34.1% (Coverage difference: +.5%) |
An additional comment which may be useful in the future. Before reaching this state, I've worked on a few experiments. The result of them may return useful eventually. The first experiment was to let the operator assume the control of the managed fields of a Deployment: 1e4aaaa#diff-de2d026ce0dc415e68ee971f300e7320de019cc68c5171cf76425859587f1a85 - this solution was discarded because it clearly overlap the external deployment procedure (ie, triggering a new deployment). The second one had the same problem (overlapping external deployment): https://github.com/squakez/camel-k/tree/feat/it_import_delete_deploy - in this case we were deleting the deployment, in order to let the operator create and manage one from scratch. Although they are aggressive approaches, they may be used eventually in a sort of "dry-run" operation to let the user decide if a given deployment can be substituted with a managed Integration (at the price of forcefully deleting the original deployment). |
0f82384
to
8910f11
Compare
🐫 Thank you for contributing! 🐫 Unable to create Coverage Report |
8910f11
to
facacb4
Compare
@lburgazzoli I think I've addressed the concerns of your last review. About the possibility to miss an event, now this should be covered by the same monitoring action which is in charge to be reconciled and eventually capture any possible missing delete event. |
🐫 Thank you for contributing! Code Coverage Report ✔️ - Coverage changed: 33.6% --> 34.2% (Coverage difference: +.6%) |
facacb4
to
d133d64
Compare
🐫 Thank you for contributing! Code Coverage Report ✔️ - Coverage changed: 33.6% --> 34.2% (Coverage difference: +.6%) |
baf1682
to
473732b
Compare
473732b
to
802aea9
Compare
With this PR we enable the possibility to import any Camel application deployed on Kubernetes manually or via other tooling and be able to monitor it as a "synthetic" Integration.
We can control the same deployment objects we are using for managed Integrations: Deployment, CronJob and Knative Services.
It works by annotating the specific object we want to import with the
camel.apache.org/integration=my-it
label. The operator creates a synthetic Integration and monitor the resources after the object which created it. In order to monitor the sibling Pods, we need the user to properly add an annotation in the resource template.We're covering the main corner cases such as removal of the object which generated the import or the missing selector which would not allow the possibility to monitor the sibling pods. It's a MVP that sets the framework for any possible future feature around monitoring.
Release Note