Reconciliation race: wait timing out due to dependency on shared common-variables configmap
#5420
Unanswered
cpressland
asked this question in
Q&A
Replies: 1 comment 1 reply
-
|
Like in every cyclic dependency problem, you extract the common part out of the cycle and make the other two things depend on it. Then you're free to make one of the two things depend on the other. But Flux is your friend and it first applies Namespaces, before anything else. In this case you can just move the Namespace to the Kustomization that applies the ConfigMap, and make the other Kustomizations depend on it. |
Beta Was this translation helpful? Give feedback.
1 reply
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
We're currently using Flux with OCI Artifacts to ship our apps. An example "app" structure looks like this:
The root
kustomization.yaml:All apps expect a common-variables ConfigMap to exist in the namespace. We define it once in a Git-based Kustomization and reuse it across all namespaces. Our GitOps setup looks like this:
Problem
There's a dependency cycle:
example-common-variablesdepends on theexamplenamespace.exampledepends on thecommon-variablesConfigMap.Flux eventually reconciles correctly, but when our CI/CD tool triggers reconciliation using
flux reconcile kustomizationfor the first time, we often see this:We suspect this is due to the wait: true setting on the example Kustomization. We require this flag to ensure CI/CD only proceeds after a successful rollout.
Questions
wait?waitflag.wait?Beta Was this translation helpful? Give feedback.
All reactions