From 4d5743055ad9a9e048c2fac4a1a05b323129d42d Mon Sep 17 00:00:00 2001 From: Antonio Ojea Date: Fri, 19 Apr 2024 11:25:51 +0000 Subject: [PATCH 1/4] remove legacy nftables kind job --- .../sig-network/sig-network-kind.yaml | 50 +--- experiment/kind-nftables-e2e.sh | 266 ------------------ 2 files changed, 1 insertion(+), 315 deletions(-) delete mode 100755 experiment/kind-nftables-e2e.sh diff --git a/config/jobs/kubernetes/sig-network/sig-network-kind.yaml b/config/jobs/kubernetes/sig-network/sig-network-kind.yaml index f208fa942da8..e7d5bae3782f 100644 --- a/config/jobs/kubernetes/sig-network/sig-network-kind.yaml +++ b/config/jobs/kubernetes/sig-network/sig-network-kind.yaml @@ -183,7 +183,7 @@ presubmits: - wrapper.sh - bash - -c - - curl -sSL https://kind.sigs.k8s.io/dl/latest/linux-amd64.tgz | tar xvfz - -C "${PATH%%:*}/" && $GOPATH/src/k8s.io/test-infra/experiment/kind-nftables-e2e.sh + - curl -sSL https://kind.sigs.k8s.io/dl/latest/linux-amd64.tgz | tar xvfz - -C "${PATH%%:*}/" && e2e-k8s.sh env: - name: PARALLEL value: "true" @@ -837,51 +837,3 @@ periodics: testgrid-tab-name: sig-network-kind, detect-local-interface-name-prefix description: Runs network tests using KIND against latest kubernetes master with a kubernetes-in-docker cluster and kube-proxy detectLocalMode=InterfaceNamePrefix testgrid-alert-email: antonio.ojea.garcia@gmail.com, widaly@microsoft.com -- interval: 12h - name: ci-kubernetes-kind-network-nftables - cluster: k8s-infra-prow-build - labels: - preset-service-account: "true" - preset-dind-enabled: "true" - preset-kind-volume-mounts: "true" - decorate: true - decoration_config: - timeout: 200m - extra_refs: - - org: kubernetes - repo: kubernetes - base_ref: master - path_alias: k8s.io/kubernetes - - org: kubernetes - repo: test-infra - base_ref: master - path_alias: "k8s.io/test-infra" - spec: - containers: - - image: gcr.io/k8s-staging-test-infra/krte:v20240405-14b8bc2f76-master - command: - - wrapper.sh - - bash - - -c - - curl -sSL https://kind.sigs.k8s.io/dl/latest/linux-amd64.tgz | tar xvfz - -C "${PATH%%:*}/" && $GOPATH/src/k8s.io/test-infra/experiment/kind-nftables-e2e.sh - env: - - name: FOCUS - value: \[sig-network\]|\[Conformance\] - - name: SKIP - value: \[Feature:(Networking-IPv6|Example|Federation|PerformanceDNS|ServiceCIDRs)\]|LB.health.check|LoadBalancer|load.balancer|GCE|NetworkPolicy|DualStack - # we need privileged mode in order to do docker in docker - securityContext: - privileged: true - resources: - limits: - cpu: 4 - memory: 9Gi - requests: - cpu: 4 - memory: 9Gi - annotations: - testgrid-dashboards: sig-network-kind, sig-testing-kind - testgrid-tab-name: sig-network-kind, nftables, master - description: Runs network tests using KIND against latest kubernetes master with a kubernetes-in-docker cluster and the nftables proxy mode - testgrid-alert-email: antonio.ojea.garcia@gmail.com, danwinship@redhat.com - testgrid-num-columns-recent: '3' diff --git a/experiment/kind-nftables-e2e.sh b/experiment/kind-nftables-e2e.sh deleted file mode 100755 index 18b7784a72b9..000000000000 --- a/experiment/kind-nftables-e2e.sh +++ /dev/null @@ -1,266 +0,0 @@ -#!/bin/sh -# Copyright 2018 The Kubernetes Authors. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# hack script for running a kind e2e -# must be run with a kubernetes checkout in $PWD (IE from the checkout) -# Usage: SKIP="ginkgo skip regex" FOCUS="ginkgo focus regex" kind-e2e.sh - -set -o errexit -o nounset -o xtrace - -# Settings: -# SKIP: ginkgo skip regex -# FOCUS: ginkgo focus regex - -# cleanup logic for cleanup on exit -CLEANED_UP=false -cleanup() { - if [ "$CLEANED_UP" = "true" ]; then - return - fi - # KIND_CREATE_ATTEMPTED is true once we: kind create - if [ "${KIND_CREATE_ATTEMPTED:-}" = true ]; then - kind "export" logs "${ARTIFACTS}/logs" || true - kind delete cluster || true - fi - rm -f _output/bin/e2e.test || true - # remove our tempdir, this needs to be last, or it will prevent kind delete - if [ -n "${TMP_DIR:-}" ]; then - rm -rf "${TMP_DIR:?}" - fi - CLEANED_UP=true -} - -# setup signal handlers -signal_handler() { - if [ -n "${GINKGO_PID:-}" ]; then - kill -TERM "$GINKGO_PID" || true - fi - cleanup -} -trap signal_handler INT TERM - -# build kubernetes / node image, e2e binaries and ginkgo -build() { - # build the node image w/ kubernetes - kind build node-image -v 1 - # Ginkgo v1 is used by Kubernetes 1.24 and earlier and exists in the vendor directory. - # Historically it has been built with the "vendor" prefix. - GINKGO_TARGET="vendor/github.com/onsi/ginkgo/ginkgo" - if [ ! -d "$GINKGO_TARGET" ]; then - # If the directory doesn't exist, then we must be on Kubernetes >= 1.25 with Ginkgo V2. - # The "vendor" prefix is no longer needed. - GINKGO_TARGET="github.com/onsi/ginkgo/v2/ginkgo" - fi - # make sure we have e2e requirements - make all WHAT="cmd/kubectl test/e2e/e2e.test ${GINKGO_TARGET}" -} - -check_structured_log_support() { - case "${KUBE_VERSION}" in - v1.1[0-8].*) - echo "$1 is only supported on versions >= v1.19, got ${KUBE_VERSION}" - exit 1 - ;; - esac -} - -# up a cluster with kind -create_cluster() { - # Grab the version of the cluster we're about to start - KUBE_VERSION="$(docker run --rm --entrypoint=cat "kindest/node:latest" /kind/version)" - - # Default Log level for all components in test clusters - KIND_CLUSTER_LOG_LEVEL=${KIND_CLUSTER_LOG_LEVEL:-4} - - # potentially enable --logging-format - CLUSTER_LOG_FORMAT=${CLUSTER_LOG_FORMAT:-} - scheduler_extra_args=" \"v\": \"${KIND_CLUSTER_LOG_LEVEL}\"" - controllerManager_extra_args=" \"v\": \"${KIND_CLUSTER_LOG_LEVEL}\"" - apiServer_extra_args=" \"v\": \"${KIND_CLUSTER_LOG_LEVEL}\"" - if [ -n "$CLUSTER_LOG_FORMAT" ]; then - check_structured_log_support "CLUSTER_LOG_FORMAT" - scheduler_extra_args="${scheduler_extra_args} - \"logging-format\": \"${CLUSTER_LOG_FORMAT}\"" - controllerManager_extra_args="${controllerManager_extra_args} - \"logging-format\": \"${CLUSTER_LOG_FORMAT}\"" - apiServer_extra_args="${apiServer_extra_args} - \"logging-format\": \"${CLUSTER_LOG_FORMAT}\"" - fi - kubelet_extra_args=" \"v\": \"${KIND_CLUSTER_LOG_LEVEL}\"" - KUBELET_LOG_FORMAT=${KUBELET_LOG_FORMAT:-$CLUSTER_LOG_FORMAT} - if [ -n "$KUBELET_LOG_FORMAT" ]; then - check_structured_log_support "KUBECTL_LOG_FORMAT" - kubelet_extra_args="${kubelet_extra_args} - \"logging-format\": \"${KUBELET_LOG_FORMAT}\"" - fi - - # JSON map injected into featureGates config - feature_gates='{"NFTablesProxyMode": true}' - # --runtime-config argument value passed to the API server - runtime_config="{}" - - # create the config file - cat < "${ARTIFACTS}/kind-config.yaml" -# config for 1 control plane node and 2 workers (necessary for conformance) -kind: Cluster -apiVersion: kind.x-k8s.io/v1alpha4 -networking: - ipFamily: ${IP_FAMILY:-ipv4} -nodes: -- role: control-plane -- role: worker -- role: worker -featureGates: ${feature_gates} -runtimeConfig: ${runtime_config} -kubeadmConfigPatches: -- | - kind: ClusterConfiguration - metadata: - name: config - apiServer: - extraArgs: -${apiServer_extra_args} - controllerManager: - extraArgs: -${controllerManager_extra_args} - scheduler: - extraArgs: -${scheduler_extra_args} - --- - kind: InitConfiguration - nodeRegistration: - kubeletExtraArgs: -${kubelet_extra_args} - --- - kind: JoinConfiguration - nodeRegistration: - kubeletExtraArgs: -${kubelet_extra_args} - --- - kind: KubeProxyConfiguration - mode: "nftables" - conntrack: - tcpBeLiberal: true -EOF - # NOTE: must match the number of workers above - NUM_NODES=2 - # actually create the cluster - # TODO(BenTheElder): settle on verbosity for this script - KIND_CREATE_ATTEMPTED=true - kind create cluster \ - --image=kindest/node:latest \ - --retain \ - --wait=1m \ - -v=3 \ - "--config=${ARTIFACTS}/kind-config.yaml" - - # Patch kube-proxy to set the verbosity level - kubectl patch -n kube-system daemonset/kube-proxy \ - --type='json' -p='[{"op": "add", "path": "/spec/template/spec/containers/0/command/-", "value": "--v='"${KIND_CLUSTER_LOG_LEVEL}"'" }]' -} - -# run e2es with ginkgo-e2e.sh -run_tests() { - # IPv6 clusters need some CoreDNS changes in order to work in k8s CI: - # 1. k8s CI doesn´t offer IPv6 connectivity, so CoreDNS should be configured - # to work in an offline environment: - # https://github.com/coredns/coredns/issues/2494#issuecomment-457215452 - # 2. k8s CI adds following domains to resolv.conf search field: - # c.k8s-prow-builds.internal google.internal. - # CoreDNS should handle those domains and answer with NXDOMAIN instead of SERVFAIL - # otherwise pods stops trying to resolve the domain. - if [ "${IP_FAMILY:-ipv4}" = "ipv6" ]; then - # Get the current config - original_coredns=$(kubectl get -oyaml -n=kube-system configmap/coredns) - echo "Original CoreDNS config:" - echo "${original_coredns}" - # Patch it - fixed_coredns=$( - printf '%s' "${original_coredns}" | sed \ - -e 's/^.*kubernetes cluster\.local/& internal/' \ - -e '/^.*upstream$/d' \ - -e '/^.*fallthrough.*$/d' \ - -e '/^.*forward . \/etc\/resolv.conf$/d' \ - -e '/^.*loop$/d' \ - ) - echo "Patched CoreDNS config:" - echo "${fixed_coredns}" - printf '%s' "${fixed_coredns}" | kubectl apply -f - - fi - - # ginkgo regexes - SKIP="${SKIP:-}" - FOCUS="${FOCUS:-"\\[Conformance\\]"}" - # if we set PARALLEL=true, skip serial tests set --ginkgo-parallel - if [ "${PARALLEL:-false}" = "true" ]; then - export GINKGO_PARALLEL=y - if [ -z "${SKIP}" ]; then - SKIP="\\[Serial\\]" - else - SKIP="\\[Serial\\]|${SKIP}" - fi - fi - - # setting this env prevents ginkgo e2e from trying to run provider setup - export KUBERNETES_CONFORMANCE_TEST='y' - # setting these is required to make RuntimeClass tests work ... :/ - export KUBE_CONTAINER_RUNTIME=remote - export KUBE_CONTAINER_RUNTIME_ENDPOINT=unix:///run/containerd/containerd.sock - export KUBE_CONTAINER_RUNTIME_NAME=containerd - # ginkgo can take forever to exit, so we run it in the background and save the - # PID, bash will not run traps while waiting on a process, but it will while - # running a builtin like `wait`, saving the PID also allows us to forward the - # interrupt - ./hack/ginkgo-e2e.sh \ - '--provider=skeleton' "--num-nodes=${NUM_NODES}" \ - "--ginkgo.focus=${FOCUS}" "--ginkgo.skip=${SKIP}" \ - "--report-dir=${ARTIFACTS}" '--disable-log-dump=true' & - GINKGO_PID=$! - wait "$GINKGO_PID" -} - -main() { - # create temp dir and setup cleanup - TMP_DIR=$(mktemp -d) - - # ensure artifacts (results) directory exists when not in CI - export ARTIFACTS="${ARTIFACTS:-${PWD}/_artifacts}" - mkdir -p "${ARTIFACTS}" - - # export the KUBECONFIG to a unique path for testing - KUBECONFIG="${HOME}/.kube/kind-test-config" - export KUBECONFIG - echo "exported KUBECONFIG=${KUBECONFIG}" - - # debug kind version - kind version - - # build kubernetes - build - # in CI attempt to release some memory after building - if [ -n "${KUBETEST_IN_DOCKER:-}" ]; then - sync || true - echo 1 > /proc/sys/vm/drop_caches || true - fi - - # create the cluster and run tests - res=0 - create_cluster || res=$? - run_tests || res=$? - cleanup || res=$? - exit $res -} - -main From 6ed4a4943d91ff59047160d96e7e99b194e9d26d Mon Sep 17 00:00:00 2001 From: Antonio Ojea Date: Fri, 19 Apr 2024 17:42:03 +0000 Subject: [PATCH 2/4] fix regex for nftables presubmit --- config/jobs/kubernetes/sig-network/sig-network-kind.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/config/jobs/kubernetes/sig-network/sig-network-kind.yaml b/config/jobs/kubernetes/sig-network/sig-network-kind.yaml index e7d5bae3782f..9d28524b59b4 100644 --- a/config/jobs/kubernetes/sig-network/sig-network-kind.yaml +++ b/config/jobs/kubernetes/sig-network/sig-network-kind.yaml @@ -162,7 +162,7 @@ presubmits: optional: true always_run: false skip_report: false - run_if_changed: '^(pkg\/proxy\/nftables)' + run_if_changed: '^(test/e2e/network/|pkg/apis/networking|pkg/proxy/nftables/)' decorate: true labels: preset-dind-enabled: "true" From 10004e046ac38dfcdbac2d6a3479cf466120462b Mon Sep 17 00:00:00 2001 From: Antonio Ojea Date: Fri, 19 Apr 2024 17:43:15 +0000 Subject: [PATCH 3/4] run ipvs kind jobs every 24 hours --- config/jobs/kubernetes/sig-network/sig-network-kind.yaml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/config/jobs/kubernetes/sig-network/sig-network-kind.yaml b/config/jobs/kubernetes/sig-network/sig-network-kind.yaml index 9d28524b59b4..b719dd4b3550 100644 --- a/config/jobs/kubernetes/sig-network/sig-network-kind.yaml +++ b/config/jobs/kubernetes/sig-network/sig-network-kind.yaml @@ -416,7 +416,7 @@ periodics: testgrid-alert-email: antonio.ojea.garcia@gmail.com, kubernetes-sig-network-test-failures@googlegroups.com testgrid-num-columns-recent: '3' # network test against kubernetes master branch with `kind` -- interval: 6h +- interval: 24h name: ci-kubernetes-kind-network-ipvs cluster: k8s-infra-prow-build labels: @@ -466,7 +466,7 @@ periodics: testgrid-alert-email: antonio.ojea.garcia@gmail.com, kubernetes-sig-network-test-failures@googlegroups.com testgrid-num-columns-recent: '3' # network test against kubernetes master branch with `kind` ipv6 -- interval: 6h +- interval: 24h name: ci-kubernetes-kind-network-ipvs-ipv6 cluster: k8s-infra-prow-build labels: @@ -522,7 +522,7 @@ periodics: testgrid-alert-email: antonio.ojea.garcia@gmail.com, kubernetes-sig-network-test-failures@googlegroups.com testgrid-num-columns-recent: '3' # network test against kubernetes master branch with `kind` dual stack -- interval: 6h +- interval: 24h name: ci-kubernetes-kind-network-ipvs-dual cluster: k8s-infra-prow-build labels: From c2eb162df397527d2a72dc9f91ac923bfa163156 Mon Sep 17 00:00:00 2001 From: Antonio Ojea Date: Fri, 19 Apr 2024 17:45:13 +0000 Subject: [PATCH 4/4] add kind nftables jobs --- .../sig-network/sig-network-kind.yaml | 167 +++++++++++++++++- .../kubernetes/presubmits/config.yaml | 4 +- 2 files changed, 166 insertions(+), 5 deletions(-) diff --git a/config/jobs/kubernetes/sig-network/sig-network-kind.yaml b/config/jobs/kubernetes/sig-network/sig-network-kind.yaml index b719dd4b3550..8d4316717c6e 100644 --- a/config/jobs/kubernetes/sig-network/sig-network-kind.yaml +++ b/config/jobs/kubernetes/sig-network/sig-network-kind.yaml @@ -49,7 +49,7 @@ presubmits: testgrid-tab-name: pr-sig-network-kind, dual description: Runs tests against a Dual Stack Kubernetes in Docker cluster testgrid-alert-email: antonio.ojea.garcia@gmail.com - - name: pull-kubernetes-e2e-kind-ipvs-dual-canary + - name: pull-kubernetes-e2e-kind-nftables-dual-canary cluster: k8s-infra-prow-build optional: true always_run: false @@ -84,7 +84,7 @@ presubmits: - name: "IP_FAMILY" value: "dual" - name: KUBE_PROXY_MODE - value: "ipvs" + value: "nftables" # we need privileged mode in order to do docker in docker securityContext: privileged: true @@ -97,7 +97,7 @@ presubmits: memory: 9Gi annotations: testgrid-dashboards: sig-network-kind - testgrid-tab-name: pr-sig-network-kind, ipvs, dual + testgrid-tab-name: pr-sig-network-kind, nftables, dual description: Runs tests against a Dual Stack Kubernetes in Docker cluster testgrid-alert-email: antonio.ojea.garcia@gmail.com - name: pull-kubernetes-e2e-kind-cloud-provider-loadbalancer @@ -579,6 +579,167 @@ periodics: description: Runs network tests using KIND against latest kubernetes master with a DualStack kubernetes-in-docker cluster testgrid-alert-email: antonio.ojea.garcia@gmail.com, kubernetes-sig-network-test-failures@googlegroups.com testgrid-num-columns-recent: '3' +- interval: 24h + name: ci-kubernetes-kind-network-nftables + cluster: k8s-infra-prow-build + labels: + preset-service-account: "true" + preset-dind-enabled: "true" + preset-kind-volume-mounts: "true" + decorate: true + decoration_config: + timeout: 200m + extra_refs: + - org: kubernetes + repo: kubernetes + base_ref: master + path_alias: k8s.io/kubernetes + spec: + containers: + - image: gcr.io/k8s-staging-test-infra/krte:v20240405-14b8bc2f76-master + command: + - wrapper.sh + - bash + - -c + - curl -sSL https://kind.sigs.k8s.io/dl/latest/linux-amd64.tgz | tar xvfz - -C "${PATH%%:*}/" && e2e-k8s.sh + env: + # don't retry network tests + - name: GINKGO_TOLERATE_FLAKES + value: "n" + - name: KUBE_PROXY_MODE + value: "nftables" + - name: FOCUS + value: \[sig-network\]|\[Conformance\] + - name: SKIP + value: \[Feature:(Networking-IPv6|Example|Federation|PerformanceDNS|ServiceCIDRs)\]|LB.health.check|LoadBalancer|load.balancer|GCE|NetworkPolicy|DualStack + # we need privileged mode in order to do docker in docker + securityContext: + privileged: true + resources: + limits: + cpu: 4 + memory: 9Gi + requests: + cpu: 4 + memory: 9Gi + annotations: + testgrid-dashboards: sig-network-kind, sig-testing-kind + testgrid-tab-name: sig-network-kind, nftables, master + description: Runs network tests using KIND against latest kubernetes master with a kubernetes-in-docker cluster using kube-proxy nftables + testgrid-alert-email: antonio.ojea.garcia@gmail.com, kubernetes-sig-network-test-failures@googlegroups.com + testgrid-num-columns-recent: '3' +- interval: 24h + name: ci-kubernetes-kind-network-nftables-ipv6 + cluster: k8s-infra-prow-build + labels: + preset-service-account: "true" + preset-dind-enabled: "true" + preset-kind-volume-mounts: "true" + decorate: true + decoration_config: + timeout: 200m + extra_refs: + - org: kubernetes + repo: kubernetes + base_ref: master + path_alias: k8s.io/kubernetes + spec: + containers: + - image: gcr.io/k8s-staging-test-infra/krte:v20240405-14b8bc2f76-master + command: + - wrapper.sh + - bash + - -c + - curl -sSL https://kind.sigs.k8s.io/dl/latest/linux-amd64.tgz | tar xvfz - -C "${PATH%%:*}/" && e2e-k8s.sh + env: + # enable IPV6 in bootstrap image + - name: "DOCKER_IN_DOCKER_IPV6_ENABLED" + value: "true" + # tell kind CI script to use ipv6 + - name: "IP_FAMILY" + value: "ipv6" + # don't retry network tests + - name: GINKGO_TOLERATE_FLAKES + value: "n" + - name: KUBE_PROXY_MODE + value: "nftables" + - name: FOCUS + value: \[sig-network\]|\[Conformance\] + - name: SKIP + value: \[Feature:(Networking-IPv4|Example|Federation|PerformanceDNS|ServiceCIDRs)\]|Internet.connection|upstream.nameserver|LB.health.check|LoadBalancer|load.balancer|GCE|NetworkPolicy|DualStack + # we need privileged mode in order to do docker in docker + securityContext: + privileged: true + resources: + limits: + cpu: 4 + memory: 9Gi + requests: + cpu: 4 + memory: 9Gi + annotations: + testgrid-dashboards: sig-network-kind, sig-testing-kind + testgrid-tab-name: sig-network-kind, nftables, IPv6, master + description: Runs network tests using KIND against latest kubernetes master with an IPv6 kubernetes-in-docker cluster using kube-proxy nftables + testgrid-alert-email: antonio.ojea.garcia@gmail.com, kubernetes-sig-network-test-failures@googlegroups.com + testgrid-num-columns-recent: '3' +- interval: 24h + name: ci-kubernetes-kind-network-nftables-dual + cluster: k8s-infra-prow-build + labels: + preset-service-account: "true" + preset-dind-enabled: "true" + preset-kind-volume-mounts: "true" + decorate: true + decoration_config: + timeout: 200m + extra_refs: + - org: kubernetes + repo: kubernetes + base_ref: master + path_alias: k8s.io/kubernetes + spec: + containers: + - image: gcr.io/k8s-staging-test-infra/krte:v20240405-14b8bc2f76-master + command: + - wrapper.sh + - bash + - -c + - curl -sSL https://kind.sigs.k8s.io/dl/latest/linux-amd64.tgz | tar xvfz - -C "${PATH%%:*}/" && e2e-k8s.sh + env: + - name: BUILD_TYPE + value: docker + # enable IPV6 in bootstrap image + - name: "DOCKER_IN_DOCKER_IPV6_ENABLED" + value: "true" + # tell kind CI script to use ipv6 + - name: "IP_FAMILY" + value: "dual" + # don't retry network tests + - name: GINKGO_TOLERATE_FLAKES + value: "n" + - name: KUBE_PROXY_MODE + value: "nftables" + - name: FOCUS + value: \[sig-network\]|\[Conformance\] + - name: SKIP + value: \[Feature:(Networking-IPv4|PodHostIPs|Example|Federation|PerformanceDNS|ServiceCIDRs)\]|Internet.connection|upstream.nameserver|LB.health.check|LoadBalancer|load.balancer|GCE|NetworkPolicy + # we need privileged mode in order to do docker in docker + securityContext: + privileged: true + resources: + limits: + cpu: 4 + memory: 9Gi + requests: + cpu: 4 + memory: 9Gi + annotations: + testgrid-dashboards: sig-network-kind, sig-testing-kind + testgrid-tab-name: sig-network-kind, nftables, dual, master + description: Runs network tests using KIND against latest kubernetes master with a DualStack kubernetes-in-docker cluster using kube-proxy nftables + testgrid-alert-email: antonio.ojea.garcia@gmail.com, kubernetes-sig-network-test-failures@googlegroups.com + testgrid-num-columns-recent: '3' # network test against kubernetes master branch with `kind`, skipping # serial tests so it runs in ~20m - interval: 6h diff --git a/config/testgrids/kubernetes/presubmits/config.yaml b/config/testgrids/kubernetes/presubmits/config.yaml index 9d77cf9ff747..655c2d612345 100644 --- a/config/testgrids/kubernetes/presubmits/config.yaml +++ b/config/testgrids/kubernetes/presubmits/config.yaml @@ -107,8 +107,8 @@ dashboards: - name: pull-kubernetes-e2e-kind-dual-canary test_group_name: pull-kubernetes-e2e-kind-dual-canary base_options: width=10 - - name: pull-kubernetes-e2e-kind-ipvs-dual-canary - test_group_name: pull-kubernetes-e2e-kind-ipvs-dual-canary + - name: pull-kubernetes-e2e-kind-nftables-dual-canary + test_group_name: pull-kubernetes-e2e-kind-nftables-dual-canary base_options: width=10 - name: pull-kubernetes-e2e-kind-alpha-features test_group_name: pull-kubernetes-e2e-kind-alpha-features