---
# System prepended metadata

title: IngressClass Issue

---

# IngressClass Issue

This doc is meant to be used for making a plan on how to deal with the Issues around IngressClass

## Status Quo 
* Users complain about how we can deprecate annotations if users are using them 
* People are confused if annotations are deprecated or not
* We have made a mistake with the deprecation of the IngressClass annotation
* Existing docs on K8s API is not sufficient, there are suggestions for improvement: https://docs.google.com/document/d/11YrnTqale4ICnR9SFMttCoRL4-NEvQJookNfFb3QjYA/edit?pli=1#. PR is open on K8s repo https://github.com/kubernetes/kubernetes/pull/107675, here is slack conversation: https://kubernetes.slack.com/archives/C09QYUH5W/p1642497910169300
* -> Noah will be helping folks with the improvement of the K8s docs: https://github.com/kubernetes/kubernetes/pull/109293
* https://github.com/kubernetes/ingress-nginx/pull/8136/files Adds default ingress class annotation and makes override available again when using helm charts. 
* Migration Path docs may not be accurate enough?!


## Related GitHub Issues/PRs
* https://github.com/kubernetes/ingress-nginx/pull/8263 - Ingress conflicts with Namespace versus Cluster Role 
* https://github.com/kubernetes/ingress-nginx/issues/7569 - with helm chart 4.0.0~ I cannot use customized ingress class name
* https://github.com/kubernetes/ingress-nginx/issues/7570 - IngressClass annotation support via IngressClassParams
* https://github.com/kubernetes/ingress-nginx/issues/7820 - [helm-chart] Missing --ingress-class in deployment or daemonset args 
* https://github.com/kubernetes/ingress-nginx/issues/7823 - ingress-class-by-name not working as expected
* https://github.com/kubernetes/ingress-nginx/issues/7850 - Ignoring ingress when migrating to 1.0.4
* https://github.com/kubernetes/ingress-nginx/issues/8006 - Allow ingress controller to set default annotations for ingress resources
* https://github.com/kubernetes/ingress-nginx/issues/8103 - Clarification on ingressClassName documentation
* https://github.com/kubernetes/ingress-nginx/issues/8109 - nginx ingress doest not add new ingress resources to "nginx.conf" file
* https://docs.google.com/document/d/11YrnTqale4ICnR9SFMttCoRL4-NEvQJookNfFb3QjYA/edit#heading=h.5jhdj672ohml - Cert-manger team tracking issues with several ingress, including ingress-nginx

## Action Steps
* Some freeze of related PRs/Issues until the problem is solved
 

## Leasons learned 
* Be aware of red flags in the future 
* Listen to the users 
* Bring such conversations to the community (sig-network)

## Next Steps
* Help to improve official k8s docs about ingressclass 
* Do we need to improve our migration path docs? 
* According to the current docs, annotation should have precendence over the field. Apparently (https://github.com/kubernetes/ingress-nginx/blob/main/charts/ingress-nginx/README.md) the annotation has not precendence over the field. Should we change that?!