Merge pull request #4623 from irbekrm/bump_ingress

Installs v1 ingress-nginx for e2e tests against kube 1.23
This commit is contained in:
jetstack-bot 2021-11-30 11:52:45 +00:00 committed by GitHub
commit e089811c17
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 25 additions and 19 deletions

View File

@ -1,19 +1,21 @@
load("@io_bazel_rules_docker//container:bundle.bzl", "container_bundle")
# Ingress image that works on Kubernetes v1.16 - v1.20
# Ingress image that works on Kubernetes older than v1.22
# Image version can be bumped in test/e2e/images.bzl
container_bundle(
name = "bundle_v0.48.1",
name = "bundle_pre_networking_v1",
images = {
"k8s.gcr.io/ingress-nginx/controller:v0.48.1": "@io_kubernetes_ingress-nginx_old//image",
"k8s.gcr.io/ingress-nginx/controller:v0.49.3": "@io_kubernetes_ingress-nginx_old//image",
},
tags = ["manual"],
)
# Ingress image that works on Kubernetes v1.19 -> (including v1.22)
# Ingress image that works on Kubernetes v1.19+
# Image version can be bumped in test/e2e/images.bzl
container_bundle(
name = "bundle_v1.0.2",
name = "bundle",
images = {
"k8s.gcr.io/ingress-nginx/controller:v1.0.2": "@io_kubernetes_ingress-nginx_new//image",
"k8s.gcr.io/ingress-nginx/controller:v1.1.0": "@io_kubernetes_ingress-nginx_new//image",
},
tags = ["manual"],
)

View File

@ -52,10 +52,18 @@ export PATH="${bindir}/hack/bin/:$PATH"
# This allows running ./devel/setup-e2e-deps.sh locally against Kubernetes v1.22
# without passing the K8S_VERSION env var.
k8s_version=$(kubectl version -oyaml | yq e '.serverVersion | .major +"."+ .minor' -)
if [[ $k8s_version =~ 1\.22 ]]; then
# Deploy a v1 NGINX-Ingress when on Kubernetes 1.22 (only v1+ NGINX-Ingress versions support networking.k8s.io/v1 API)
IMAGE_TAG="v1.0.2"
HELM_CHART="4.0.3"
if [[ $k8s_version =~ 1\.18 ]]; then
# Ingress v1+ versions only support Kubernetes v1 networking API which is only
# available from Kubernetes v1.19 onwards.
# TODO: remove this if statement once the oldest version of Kubernetes
# supported by cert-manager is v1.19
IMAGE_TAG="v0.49.3"
HELM_CHART="3.40.0"
INGRESS_WITHOUT_CLASS="false"
require_image "k8s.gcr.io/ingress-nginx/controller:${IMAGE_TAG}" "//devel/addon/ingressnginx:bundle_pre_networking_v1"
else
IMAGE_TAG="v1.1.0"
HELM_CHART="4.0.10"
# v1 NGINX-Ingress by default only watches Ingresses with Ingress class
# defined. When configuring solver block for ACME HTTTP01 challenge on an ACME
# issuer, cert-manager users can currently specify either an Ingress name or a
@ -64,12 +72,8 @@ if [[ $k8s_version =~ 1\.22 ]]; then
# have a class, we pass a --watch-ingress-without-class flag
# https://github.com/kubernetes/ingress-nginx/blob/main/charts/ingress-nginx/values.yaml#L64-L67
INGRESS_WITHOUT_CLASS="true"
else
IMAGE_TAG="v0.48.1"
HELM_CHART="3.34.0"
INGRESS_WITHOUT_CLASS="false"
require_image "k8s.gcr.io/ingress-nginx/controller:${IMAGE_TAG}" "//devel/addon/ingressnginx:bundle"
fi
require_image "k8s.gcr.io/ingress-nginx/controller:${IMAGE_TAG}" "//devel/addon/ingressnginx:bundle_${IMAGE_TAG}"
# Ensure the ingress-nginx namespace exists
kubectl get namespace "${NAMESPACE}" || kubectl create namespace "${NAMESPACE}"

View File

@ -42,15 +42,15 @@ def install():
name = "io_kubernetes_ingress-nginx_old",
registry = "k8s.gcr.io",
repository = "ingress-nginx/controller",
tag = "v0.48.1",
digest = "sha256:dcc2d529a9cb95408ba9896639382793fb84361ef43cee9195f264c321e6b638",
tag = "v0.49.3",
digest = "sha256:c47ed90d1685cb6e3b556353d7afb2aced2be7095066edfc90dd81f3e9014747"
)
container_pull(
name = "io_kubernetes_ingress-nginx_new",
registry = "k8s.gcr.io",
repository = "ingress-nginx/controller",
tag = "v1.0.2",
digest = "sha256:8c0abb209aaef63631d1c85add422ca51848ccee2f87aea06558d37bda1c8e91",
tag = "v1.1.0",
digest = "sha256:7464dc90abfaa084204176bcc0728f182b0611849395787143f6854dc6c38c85"
)
container_pull(