-
Notifications
You must be signed in to change notification settings - Fork 2
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
Architecture: Generic, template-able resource reconciler (Espejote) #368
Conversation
67a03d7
to
d3d18f8
Compare
d09203f
to
a08eec0
Compare
docs/modules/ROOT/pages/references/architecture/espejote-in-cluster-templating-controller.adoc
Outdated
Show resolved
Hide resolved
docs/modules/ROOT/pages/references/architecture/espejote-in-cluster-templating-controller.adoc
Outdated
Show resolved
Hide resolved
a08eec0
to
42f7f2c
Compare
It would be great to see the option "Crossplane Composition (Functions)" discussed in the decision document. This technology could probably also solve the problem at hand. I don't want to say it's the best solution, but at least I'd like to see a discussion around it and a conscious decision why not to use it. Some references to learn more: https://docs.crossplane.io/v1.18/concepts/compositions/ "Compositions are a template for creating multiple managed resources as a single object." |
I don't see how Crossplane Compositions would be the proper tool for this task. |
Option 1 discusses policy tools, Crossplane isn't one of them.
This is fine, but I want to understand the "why". Crossplane Compositions is exactly that, a template engine which reconciles resources. This document which is being written serves as a decision document to look back in the future and understand why something was done in a certain way, what alternatives were out there and why they haven't been chosen. |
I'll add an option for the 737-MAX 👍 Edit: For only 490 objects:
We tried very very hard to minimize the footgun potential in the architecture of espejote. |
That is true, the conclusion still remains.
Above points are the reason why we never considered using Crossplane, bc it never was a reasonable choice to consider given the problem statement. |
37639ea
to
9e7fc54
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Decision LGTM. Architecture LGTM overall, some comments inline.
docs/modules/ROOT/pages/references/architecture/espejote-in-cluster-templating-controller.adoc
Outdated
Show resolved
Hide resolved
docs/modules/ROOT/pages/references/architecture/espejote-in-cluster-templating-controller.adoc
Outdated
Show resolved
Hide resolved
docs/modules/ROOT/pages/references/architecture/espejote-in-cluster-templating-controller.adoc
Outdated
Show resolved
Hide resolved
docs/modules/ROOT/pages/references/architecture/espejote-in-cluster-templating-controller.adoc
Outdated
Show resolved
Hide resolved
docs/modules/ROOT/pages/references/architecture/espejote-in-cluster-templating-controller.adoc
Outdated
Show resolved
Hide resolved
9e7fc54
to
219320c
Compare
docs/modules/ROOT/pages/references/architecture/espejote-in-cluster-templating-controller.adoc
Outdated
Show resolved
Hide resolved
219320c
to
4b3f720
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Kyverno generate policies have a synchronize
property that allows you to choose not to sync a resource after it was created. Could something similar be done with espejote?
docs/modules/ROOT/pages/explanations/decisions/prometheusrule-controller.adoc
Outdated
Show resolved
Hide resolved
docs/modules/ROOT/pages/explanations/decisions/prometheusrule-controller.adoc
Outdated
Show resolved
Hide resolved
docs/modules/ROOT/pages/references/architecture/espejote-in-cluster-templating-controller.adoc
Outdated
Show resolved
Hide resolved
docs/modules/ROOT/pages/references/architecture/espejote-in-cluster-templating-controller.adoc
Show resolved
Hide resolved
docs/modules/ROOT/pages/references/architecture/espejote-in-cluster-templating-controller.adoc
Outdated
Show resolved
Hide resolved
bfd078c
to
eceffa9
Compare
505f1a6
to
9b1efbb
Compare
Co-authored-by: Adrian Haas <[email protected]> Co-authored-by: Simon Gerber <[email protected]>
9b1efbb
to
7293d51
Compare
No description provided.