-
Notifications
You must be signed in to change notification settings - Fork 214
Description
Summary
Hello 👋
When the controller computes configuration, it tries to create pattern files with the name of current annotation of the config map used to reference pattern files.
This should most probably not happen, and result in error in logs (see details)
Note: this is not blocking the creation of actual valid pattern file defined inside the configmap. But it’s still a weird error.
Details
Important note: I am currently trying out controller version 3.2.1 (helm chart version 1.47.0)
I am using the following relevant values in the ingress controller chart:
controller:
extraArgs:
- --configmap-patternfiles=haproxy/haproxy-acl-patterns
The configmap looks like the following:
kubectl -n haproxy get cm haproxy-acl-patterns -o yaml
apiVersion: v1
data:
foo-ips:
1.1.1.1/32
bar-ips:
2.2.2.2/32
kind: ConfigMap
metadata:
annotations:
argocd.argoproj.io/tracking-id: [REDACTED]
kubectl.kubernetes.io/last-applied-configuration: [REDACTED]
creationTimestamp: "2025-12-08T08:06:20Z"
name: haproxy-acl-patterns
namespace: haproxy
resourceVersion: "7060140"
uid: fd19cb7d-283d-4326-9288-acc2778b83b0
Note: I have redacted the value of annotation, it’s not really relevant.
In the controller logs, I can see the following error:
2025/12/22 09:55:57 ERROR handler/pattern-files.go:42 [transactionID=702e0c09-aada-4b5b-b1c6-888c3baf7b21] failed writing patternfile 'argocd.argoproj.io/tracking-id': open /etc/haproxy/patterns/argocd.argoproj.io/.tracking-id40401543: no such file or directory
2025/12/22 09:55:57 ERROR handler/pattern-files.go:42 [transactionID=702e0c09-aada-4b5b-b1c6-888c3baf7b21] failed writing patternfile 'kubectl.kubernetes.io/last-applied-configuration': open /etc/haproxy/patterns/kubectl.kubernetes.io/.last-applied-configuration2707750114: no such file or directory
2025/12/22 09:55:57 ERROR handler/pattern-files.go:50 [transactionID=702e0c09-aada-4b5b-b1c6-888c3baf7b21] failed deleting atternfile 'argocd.argoproj.io/tracking-id': remove /etc/haproxy/patterns/argocd.argoproj.io/tracking-id: no such file or directory
2025/12/22 09:55:57 ERROR handler/pattern-files.go:50 [transactionID=702e0c09-aada-4b5b-b1c6-888c3baf7b21] failed deleting atternfile 'kubectl.kubernetes.io/last-applied-configuration': remove /etc/haproxy/patterns/kubectl.kubernetes.io/last-applied-configuration: no such file or directory
The controller seems to retrieve the annotations on the config map, and tries to create pattern files out of these annotations that have nothing to do with haproxy ingress controller.