From ae98223575ba5e22766d7e3aaddfe3be8d3b9587 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Attila=20M=C3=A9sz=C3=A1ros?= Date: Mon, 5 Feb 2024 11:17:04 +0100 Subject: [PATCH 1/2] docs: improve read-only dependent MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Attila Mészáros --- docs/documentation/dependent-resources.md | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/docs/documentation/dependent-resources.md b/docs/documentation/dependent-resources.md index 7678e997e6..13edcf1718 100644 --- a/docs/documentation/dependent-resources.md +++ b/docs/documentation/dependent-resources.md @@ -544,5 +544,6 @@ several benefits: - if dependents are already used in a controller, it makes sense to unify the handling of all secondary resources as dependents from a code organization perspective - dependent resources can also interact with the workflow feature, thus allowing the read-only - resource to participate in conditions, in particular to decide whether or not the primary - resource needs/can be reconciled using reconcile pre-conditions \ No newline at end of file + resource to participate in conditions, in particular to decide whether the primary + resource needs/can be reconciled using reconcile pre-conditions, and ready post-conditions + can be added to read-only dependents and depend on them with other dependents. \ No newline at end of file From 93f7c1bcb910531f346113db8d8097704a23d3dc Mon Sep 17 00:00:00 2001 From: Chris Laprun Date: Tue, 6 Feb 2024 10:51:35 +0100 Subject: [PATCH 2/2] doc: reword to improve clarity Signed-off-by: Chris Laprun --- docs/documentation/dependent-resources.md | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/docs/documentation/dependent-resources.md b/docs/documentation/dependent-resources.md index 13edcf1718..61e18fd3f2 100644 --- a/docs/documentation/dependent-resources.md +++ b/docs/documentation/dependent-resources.md @@ -370,7 +370,13 @@ server. To bypass the matching feature completely, simply override the `match` m return `false`, thus telling JOSDK that the actual state never matches the desired one, making it always update the resources using SSA. -WARNING: Older versions of Kubernetes before 1.25 would create an additional resource version for every SSA update performed with certain resources - even though there were no actual changes in the stored resource - leading to infinite reconciliations. This behavior was seen with Secrets using `stringData`, Ingresses using empty string fields, and StatefulSets using volume claim templates. The operator framework has added built-in handling for the StatefulSet issue. If you encounter this issue on an older Kubernetes version, consider changing your desired state, turning off SSA for that resource, or even upgrading your Kubernetes version. If you encounter it on a newer Kubernetes version, please log an issue with the JOSDK and with upstream Kubernetes. +WARNING: Older versions of Kubernetes before 1.25 would create an additional resource version for every SSA update +performed with certain resources - even though there were no actual changes in the stored resource - leading to infinite +reconciliations. This behavior was seen with Secrets using `stringData`, Ingresses using empty string fields, and +StatefulSets using volume claim templates. The operator framework has added built-in handling for the StatefulSet issue. +If you encounter this issue on an older Kubernetes version, consider changing your desired state, turning off SSA for +that resource, or even upgrading your Kubernetes version. If you encounter it on a newer Kubernetes version, please log +an issue with the JOSDK and with upstream Kubernetes. ## Telling JOSDK how to find which secondary resources are associated with a given primary resource @@ -545,5 +551,6 @@ several benefits: secondary resources as dependents from a code organization perspective - dependent resources can also interact with the workflow feature, thus allowing the read-only resource to participate in conditions, in particular to decide whether the primary - resource needs/can be reconciled using reconcile pre-conditions, and ready post-conditions - can be added to read-only dependents and depend on them with other dependents. \ No newline at end of file + resource needs/can be reconciled using reconcile pre-conditions, block the progression of the workflow altogether with + ready post-conditions or have other dependents depend on them, in essence, read-only dependents can participate in + workflows just as any other dependents. \ No newline at end of file