Skip to content

Commit 0bc0b24

Browse files
committed
Decision: Upgrade Controller Custom Health Checks
1 parent 72799a5 commit 0bc0b24

File tree

2 files changed

+45
-0
lines changed

2 files changed

+45
-0
lines changed
Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
= Upgrade Controller Custom Health Checks
2+
3+
== Problem
4+
5+
Currently, our OpenShift upgrade controller doesn't support custom health checks.
6+
Only checking the ClusterVersion CRD is supported, which is not sufficient for all use cases.
7+
8+
The current health check implementation can only fail jobs, but not skip them.
9+
We might want to skip jobs in some cases, for example, if there are maintenance blocking PDBs in place.
10+
11+
=== Goals
12+
13+
* We have a method of implementing custom health checks for the upgrade controller
14+
* We can skip jobs based on the health check results
15+
16+
=== Non-Goals
17+
18+
* TODO
19+
20+
== Proposals
21+
22+
=== 1a. Extend `UpgradeJobHooks`; track pod exit codes for skipping upgrades
23+
24+
=== 1b. Extend `UpgradeJobHooks`; upgrade controller exposes API for skipping upgrades
25+
26+
=== 1c. Extend `UpgradeJobHooks`, upgrade controller adds CRD for skipping upgrades
27+
28+
=== 1c. Extend `UpgradeJobHooks`, upgrade controller adds subresource for skipping upgrades
29+
30+
=== 2. Implement a new health check mechanism in the `UpgradeJob` CRD
31+
32+
=== 3. Implement a new health check mechanism analogous to the `UpgradeJobHook` CRD
33+
34+
== Decision
35+
36+
TODO
37+
38+
== Rationale
39+
40+
TODO
41+
42+
== References
43+
44+
* TODO

docs/modules/ROOT/partials/nav.adoc

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -265,3 +265,4 @@
265265
** xref:oc4:ROOT:explanations/decisions/cloudscale-cilium-egressip.adoc[]
266266
** xref:oc4:ROOT:explanations/decisions/gitlab-access-tokens.adoc[]
267267
** xref:oc4:ROOT:explanations/decisions/prometheusrule-controller.adoc[]
268+
** xref:oc4:ROOT:explanations/decisions/upgrade-controller-custom-healthchecks.adoc[]

0 commit comments

Comments
 (0)