-
Notifications
You must be signed in to change notification settings - Fork 22
Description
The umbrella chart v2.6.0 fails to install due to an ingress validation error from the nginx-ingress-controller admission webhook. The error occurs because certain ingresses use the regex path /(/|$)(.*) with pathType: Prefix, which is invalid. Regex paths must use pathType: ImplementationSpecific
Environment
- Kubernetes Version: v1.34.0 (minikube)
- Helm Version: (as available in system)
- Chart:
tractusx-dev/umbrellav2.6.0 - nginx-ingress-controller: (with validation webhook enabled)
Steps to Reproduce
- Add the tractusx-dev Helm repository
- Attempt to install with minimal configuration:
helm install -f docs/umbrella/minimal-values.yaml umbrella tractusx-dev/umbrella \ --namespace umbrella \ --version v2.6.0 \ --create-namespace
Error Log
coalesce.go:301: warning: destination for umbrella.semantic-hub.hub.ingress.annotations is a table. Ignoring non-table value ([])
coalesce.go:301: warning: destination for tractusx-connector.vault.injector.webhook.objectSelector is a table. Ignoring non-table value (matchExpressions:
- key: app.kubernetes.io/name
operator: NotIn
values:
- {{ template "vault.name" . }}-agent-injector
)
coalesce.go:301: warning: destination for tractusx-connector.vault.injector.webhook.objectSelector is a table. Ignoring non-table value (matchExpressions:
- key: app.kubernetes.io/name
operator: NotIn
values:
- {{ template "vault.name" . }}-agent-injector
)
I1104 16:09:37.515370 120192 warnings.go:110] "Warning: spec.SessionAffinity is ignored for headless services"
I1104 16:09:37.736865 120192 warnings.go:110] "Warning: spec.SessionAffinity is ignored for headless services"
I1104 16:09:38.026114 120192 warnings.go:110] "Warning: spec.SessionAffinity is ignored for headless services"
I1104 16:09:38.179883 120192 warnings.go:110] "Warning: spec.SessionAffinity is ignored for headless services"
I1104 16:09:38.353849 120192 warnings.go:110] "Warning: spec.SessionAffinity is ignored for headless services"
I1104 16:09:42.561435 120192 warnings.go:110] "Warning: path /(/|$)(.*) cannot be used with pathType Prefix"
Error: INSTALLATION FAILED: failed to create resource: admission webhook "validate.nginx.ingress.kubernetes.io" denied the request: ingress contains invalid paths: path /(/|$)(.*) cannot be used with pathType Prefix
Root Cause
Multiple components in the umbrella chart use the regex path pattern /(/|$)(.*) with pathType: Prefix:
- digital-twin-registry (DTR) -
dataprovider-dtringress - BPDM components:
- bpdm-gate:
/gate(/|$)(.*) - bpdm-pool:
/pool(/|$)(.*) - bpdm-orchestrator:
/orchestrator(/|$)(.*)
- bpdm-gate:
According to Kubernetes ingress specifications and nginx-ingress-controller validation, regex path patterns require pathType: ImplementationSpecific, not pathType: Prefix.
Attempted Workarounds
Attempted to override the pathType in docs/umbrella/minimal-values.yaml:
# For DTR
tx-data-provider:
digital-twin-registry:
registry:
ingress:
pathType: ImplementationSpecific
# For BPDM
bpdm:
bpdm-gate:
ingress:
enabled: false # or pathType override
bpdm-pool:
ingress:
enabled: false
bpdm-orchestrator:
ingress:
enabled: falseHowever, the pathType override does not appear to be respected by the subchart templates.
Is there any way to solve this issue? or any way that I can install industry core hub and make it work for a custom use case?