[seaweedfs] Wait for ingress-nginx-system before creating Ingress
Without this, the outer tenant HelmReleases apply both seaweedfs and
ingress in parallel, which in turn creates their inner HelmReleases
(seaweedfs-system and ingress-nginx-system) in parallel too. When
seaweedfs-system tries to create its Ingress before the nginx admission
webhook's Service/endpoint state has finished reconciling on the CNI,
the apiserver's webhook call fails with:
failed calling webhook "validate.nginx.ingress.kubernetes.io":
dial tcp ...:443: connect: operation not permitted
and flux rolls back the install. E2E recovers via the "Retry install"
loop but it's flaky and adds minutes to every run.
Adding dependsOn: ingress-nginx-system on the inner seaweedfs HR makes
flux block the install until the ingress chart is Ready, which means
the controller Deployment is Available and its webhook endpoint is
routable before the first Ingress is created.
Guarded by {{- if \$ingress }} so this only kicks in for tenants that
have ingress enabled (i.e. tenant-root in the default topology).
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Signed-off-by: Myasnikov Daniil <myasnikovdaniil2001@gmail.com>
This commit is contained in:
parent
482d813d01
commit
e382968285
1 changed files with 5 additions and 0 deletions
|
|
@ -104,6 +104,11 @@ metadata:
|
|||
labels:
|
||||
sharding.fluxcd.io/key: tenants
|
||||
spec:
|
||||
{{- if $ingress }}
|
||||
# Ensure the ingress-nginx admission webhook is ready before creating Ingress resources.
|
||||
dependsOn:
|
||||
- name: ingress-nginx-system
|
||||
{{- end }}
|
||||
chartRef:
|
||||
kind: ExternalArtifact
|
||||
name: cozystack-seaweedfs-application-default-seaweedfs-system
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue