-
Notifications
You must be signed in to change notification settings - Fork 319
Description
This is with v1.10.2-gke.3 (the GKE default now, I believe)
Updating a tls Secret used in a GCLB Ingress is failing because the resource.name field generated by the Ingress (or something) is invalid. Error from a kubectl describe ingress apps:
Warning Sync 5m (x941 over 4d) loadbalancer-controller Cert creation failures - k8s-ssl-69d4fb7e3d37d4e1-3275ae2d33a9a727-- Error:googleapi: Error 400: Invalid value for field 'resource.name': 'k8s-ssl-69d4fb7e3d37d4e1-3275ae2d33a9a727--'. Must be a match of regex '(?:a-z?)', invalid
(The important bit is Invalid value for field 'resource.name': 'k8s-ssl-69d4fb7e3d37d4e1-3275ae2d33a9a727--'. Must be a match of regex '(?:a-z?)')
The TLS certs used by the GCLB Ingress should be updated to what is inside the Secret but, instead, the old (soon to expire) cert is the one being served.
Not sure how to reproduce other than trying to update a cert, I guess? I'm not sure how that resource.name field gets constructed. I use Let's Encrypt created tickets and they refresh often.
I've got a production certificate expiring in 10 days and I'm not sure how to fix this.