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

[Explore]: Ready status condition on all Korifi objects #2098

Closed
danail-branekov opened this issue Jan 20, 2023 · 0 comments · Fixed by #3454
Closed

[Explore]: Ready status condition on all Korifi objects #2098

danail-branekov opened this issue Jan 20, 2023 · 0 comments · Fixed by #3454
Labels

Comments

@danail-branekov
Copy link
Member

Background

This explore is a follow up from #1721

Generally, Korifi resources' controllers should ensure that referenced resources (such as jobs that backup a task workload, or secrets that are referenced by apps) a) exist, b) are in the state controllers expect them to be, and c) own them if created by the controller

However, if reconciling those referenced resources cannot be done (e.g. the controller wants to patch an immutable field, of a job with a different command is found for a task workload), we need to propagate this error to the API and the kubectl user.

Therefore, can we introduce a generic Ready status condition on all Korifi resources so that
a) kubectl users can easily check it
b) API awaits that condition to become true
c) in both cases users would be aware that there is something wrong going on with those Korifi resources

Acceptance Criteria

ADR/proposal on how such a generic condition can be introduced and how it should be consumed

Timebox

No timebox

Dev Notes

No response

@github-project-automation github-project-automation bot moved this to 🧊 Icebox in Korifi - Backlog Jan 20, 2023
danail-branekov added a commit that referenced this issue May 27, 2024
The `Ready` status condition is becoming the standard for Korifi
resources, therefore let's get rid of the `Valid` and `Invalid`
conditions in favour of the `Ready` one. Thus the CFRoute status
reconciliation code could be significantly simplified as we already have
the readyConditionBuilder utility in place.

Noone seems to care about `Valid`/`Invalid` status conditions, noone
cares about the `Ready` condition as well. However, having a standard
`Ready` condition is good (see #2098)

While being here, `CFRoute.Status.Description` and
`CFRoute.Status.CurrentStatus` are removed (as
again, noone cares) - hopefully this is not an incompatible change. If
anyone ever gets interested whether the route is OK, they should check
the `Ready` condition instead.

issue: #3304
tcdowney pushed a commit that referenced this issue May 29, 2024
The `Ready` status condition is becoming the standard for Korifi
resources, therefore let's get rid of the `Valid` and `Invalid`
conditions in favour of the `Ready` one. Thus the CFRoute status
reconciliation code could be significantly simplified as we already have
the readyConditionBuilder utility in place.

Noone seems to care about `Valid`/`Invalid` status conditions, noone
cares about the `Ready` condition as well. However, having a standard
`Ready` condition is good (see #2098)

While being here, `CFRoute.Status.Description` and
`CFRoute.Status.CurrentStatus` are removed (as
again, noone cares) - hopefully this is not an incompatible change. If
anyone ever gets interested whether the route is OK, they should check
the `Ready` condition instead.

issue: #3304
danail-branekov added a commit that referenced this issue May 29, 2024
The `Ready` status condition is becoming the standard for Korifi
resources, therefore let's get rid of the `Valid` and `Invalid`
conditions in favour of the `Ready` one. Thus the CFRoute status
reconciliation code could be significantly simplified as we already have
the readyConditionBuilder utility in place.

Noone seems to care about `Valid`/`Invalid` status conditions, noone
cares about the `Ready` condition as well. However, having a standard
`Ready` condition is good (see #2098)

While being here, `CFRoute.Status.Description` and
`CFRoute.Status.CurrentStatus` are removed (as
again, noone cares) - hopefully this is not an incompatible change. If
anyone ever gets interested whether the route is OK, they should check
the `Ready` condition instead.

issue: #3304
@danail-branekov danail-branekov moved this from 🧊 Icebox to 🔄 In progress in Korifi - Backlog Aug 30, 2024
@github-project-automation github-project-automation bot moved this from 🔄 In progress to ✅ Done in Korifi - Backlog Sep 2, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
Archived in project
Development

Successfully merging a pull request may close this issue.

1 participant