We use terraform resource "kubernetes_deployment" to deploy our pods. Our pods have readiness probes, but these probes are not good enough because we need external feedback to decide if a pod is ready. In our case, a pod is ready only after external program creates a file in aws S3 bucket, and this is a manual step, which may be completed at random time (can be several days/weeks) so readiness probe is not good, becuase it will fail and leave our pod in "unready" state. We understand kubernetes 1.14 introduced something called readiness-gate. See https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#pod-readiness-gate However it seems terraform resource "kubernetes_deployment" does not support pod readiness-gates.
Note that we prefer using kubernetes deployment (rather than defining pods directly) because we need rolling update strategy.
It would be great if resource "kubernetes_deployment" supported readinessGates for pods
Another use case for ReadinessGates is 0-downtime deployments when using ALB Ingress Controller as described here: https://github.com/kubernetes-sigs/aws-alb-ingress-controller/blob/master/docs/guide/ingress/pod-conditions.md
It's nice that provider does strict validation of deployment arguments, but is there a foot-gun we could use in the meantime to inject readinessGates into our job specifications?
I'm going to lock this issue because it has been closed for _30 days_ ⏳. This helps our maintainers find and focus on the active issues.
If you feel this issue should be reopened, we encourage creating a new issue linking back to this one for added context. If you feel I made an error 🤖 🙉 , please reach out to my human friends 👉 [email protected]. Thanks!
Most helpful comment
Another use case for
ReadinessGatesis 0-downtime deployments when using ALB Ingress Controller as described here: https://github.com/kubernetes-sigs/aws-alb-ingress-controller/blob/master/docs/guide/ingress/pod-conditions.mdIt's nice that provider does strict validation of deployment arguments, but is there a foot-gun we could use in the meantime to inject
readinessGatesinto our job specifications?