Bump minimum Ingress version to networking.k8s.io/v1beta1
Summary
Make networking.k8s.io/v1v1beta1
the minimum version of Ingress object, as it is present from K8s v1.14 onward, and we document that we support only >= 1.16
Details
The following discussion from !2255 (merged) should be addressed:
-
@WarheadsSE started a discussion: (+4 comments) (we can update this default fallback to
networking.k8s.io/v1beta1
when we drop support for Kubernetes versions older than 1.19)🤔 I think you're a bit off base, and we may be able to go ahead a scream a bit farther into the future.https://kubernetes.io/docs/reference/using-api/deprecation-guide/#ingress-v122
The extensions/v1beta1 and networking.k8s.io/v1beta1 API versions of Ingress is no longer served as of v1.22.
- Migrate manifests and API clients to use the networking.k8s.io/v1 API version, available since v1.19.
networking.k8s.io/v1beta1
was present in 1.17, and though harder to find, present in 1.14 as well:See https://raw.githubusercontent.com/kubernetes/kubernetes/release-1.14/api/openapi-spec/swagger.json (WARNING! 4.5 MB JSON)
{ "io.k8s.api.extensions.v1beta1.Ingress": { "description": "Ingress is a collection of rules that allow inbound connections to reach the endpoints defined by a backend. An Ingress can be configured to give services externally-reachable urls, load balance traffic, terminate SSL, offer name based virtual hosting etc. DEPRECATED - This group version of Ingress is deprecated by networking.k8s.io/v1beta1 Ingress. See the release notes for more information." }, "io.k8s.api.networking.v1beta1.Ingress": { "description": "Ingress is a collection of rules that allow inbound connections to reach the endpoints defined by a backend. An Ingress can be configured to give services externally-reachable urls, load balance traffic, terminate SSL, offer name based virtual hosting etc." } }