Skip to content
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

Move kep to implementable, specify opt-in and out #1697

Merged
merged 1 commit into from
Oct 6, 2020
Merged

Conversation

alenkacz
Copy link
Contributor

Signed-off-by: Alena Varkockova varkockova.a@gmail.com

What this PR does / why we need it:
Move the KEP to implementable, specify some more left-overs from review.

Please take time to review also the KEP as a whole as this moves it to implementable.

keps/0034-instance-health.md Outdated Show resolved Hide resolved
@@ -106,10 +104,16 @@ From all these resources it would compute readiness based on `Condition: Ready`,

For operators installing their app via e.g. `Deployment`, there’s no need at this point to also check the Status of the underlying Pods because Deployment `Status` already mirrors the readiness of the underlying Pods. This is true to all higher-level types like StatefulSet etc.

To mitigate situation when a plan adds a resource we don't want to include in `Ready` condition, it's possible to opt-out from this when adding annotation `kudo.dev/allow-readiness-computation:false`
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hmmm... I'm not sure allow-readiness-computation is the right way... This feels like we would have a default value of "true" if this annotation is not present, which feels odd to me. I would prefer something that defaults to "false" if it's not there:

What about ignore-readiness-computation:true or skip-for-readiness-computation:true?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't mind the default being true but I'll switch to your suggestion :) I like both

keps/0034-instance-health.md Show resolved Hide resolved

### Future work

To support even more complex cases and operator, we should think about adding possibility to specify `kudo.dev/readiness-strategy:selected` which will switch readiness computation to OPT-IN mode. With this one set, only resources with `kudo.dev/allow-readiness-computation:true` will be considered for readiness computation.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ok, having read this the annotation from above makes a little more sense, still... Maybe we can find something that works with better defaults? Maybe we need two different annotations for opt-in and opt-out?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Alright I kept both in place (two different options).

Copy link
Member

@nfnt nfnt left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, though I agree with @ANeumann82's comment to rename allow-readiness-computation.

Copy link
Member

@ANeumann82 ANeumann82 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm!

@@ -106,10 +104,18 @@ From all these resources it would compute readiness based on `Condition: Ready`,

For operators installing their app via e.g. `Deployment`, there’s no need at this point to also check the Status of the underlying Pods because Deployment `Status` already mirrors the readiness of the underlying Pods. This is true to all higher-level types like StatefulSet etc.

To mitigate situation when a plan adds a resource we don't want to include in `Ready` condition, it's possible to opt-out from this when adding annotation `kudo.dev/skip-for-readiness-computation:true`
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
To mitigate situation when a plan adds a resource we don't want to include in `Ready` condition, it's possible to opt-out from this when adding annotation `kudo.dev/skip-for-readiness-computation:true`
To mitigate situation when a plan adds a resource we don't want to include in `Ready` condition, it's possible to opt-out from this by adding annotation `kudo.dev/skip-for-readiness-computation:true`

Signed-off-by: Alena Varkockova <varkockova.a@gmail.com>
@alenkacz alenkacz merged commit 0996215 into main Oct 6, 2020
@alenkacz alenkacz deleted the av/kep-34-3 branch October 6, 2020 08:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants