diff --git a/config/jobs/kubernetes/sig-node/__init__.py b/config/jobs/kubernetes/sig-node/__init__.py new file mode 100644 index 0000000000000..e69de29bb2d1d diff --git a/config/jobs/kubernetes/sig-node/build_jobs.py b/config/jobs/kubernetes/sig-node/build_jobs.py new file mode 100644 index 0000000000000..f68994e3d22d8 --- /dev/null +++ b/config/jobs/kubernetes/sig-node/build_jobs.py @@ -0,0 +1,293 @@ +# Copyright 2023 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. + +import math +import json +import yaml +import re +import jinja2 # pylint: disable=import-error + + +from helpers import ( # pylint: disable=import-error, no-name-in-module + build_cron, +) + +# These are job tab names of unsupported grid combinations +skip_jobs = [] + +image = "gcr.io/k8s-staging-test-infra/kubekins-e2e:v20230616-e730b60769-master" + +loader = jinja2.FileSystemLoader(searchpath="./templates") + +############## +# Build Test # +############## + + +# Returns a string representing the periodic prow job and the number of job invocations per week +def build_test( + cloud="aws", + distro="u2204", + cri="containerd", + name_override=None, + feature_flags=(), + extra_dashboards=None, + test_parallelism=25, + test_timeout_minutes=60, + skip_regex="", + arch="", + test_type="node-e2e", + scenario_name=None, + focus_regex=None, + runs_per_day=0, + scenario=None, + env=None, +): + # pylint: disable=too-many-statements,too-many-branches,too-many-arguments + validation_wait = "20m" if distro in ("flatcar", "flatcararm64") else None + + suffix = "" + if cri: + suffix += cri + if cloud: + suffix += "-" + cloud + if distro: + suffix += "-" + distro + + tab = name_override or (f"{scenario_name}-{suffix}") + job_name = f"ci-kubernetes-{tab}" + + if tab in skip_jobs: + return None + + cron, runs_per_week = build_cron(tab, runs_per_day) + + # Scenario-specific parameters + if env is None: + env = {} + + tmpl_file = "periodic.yaml.jinja" + if skip_regex is not None: + env["SKIP"] = skip_regex + if focus_regex is not None: + env["FOCUS"] = focus_regex + + # arm64 config + if arch == "arm64": + env["USE_DOCKERIZED_BUILD"] = "true" + env["TARGET_BUILD_ARCH"] = "linux/arm64" + + tmpl = jinja2.Environment(loader=loader).get_template(tmpl_file) + job = tmpl.render( + job_name=job_name, + cloud=cloud, + cron=cron, + test_parallelism=str(test_parallelism), + job_timeout=str(test_timeout_minutes + 30) + "m", + test_timeout=str(test_timeout_minutes) + "m", + skip_regex=skip_regex, + kops_feature_flags=",".join(feature_flags), + terraform_version="", # DEL + focus_regex=focus_regex, + validation_wait=validation_wait, + image=image, + scenario=scenario, + env=env, + ) + + spec = { + "cloud": cloud, + "distro": distro, + "cri": cri, + "scenario": scenario_name, + } + jsonspec = json.dumps(spec, sort_keys=True) + + dashboards = [ + f"sig-node-{cri}", + f"sig-node-{distro.removesuffix('-arm64')}", + ] + if cloud == "aws": + dashboards.extend(["sig-node-aws"]) + if cloud == "gce": + dashboards.extend(["sig-node-gce"]) + + if extra_dashboards: + dashboards.extend(extra_dashboards) + + days_of_results = 90 + if runs_per_week * days_of_results > 2000: + # testgrid has a limit on number of test runs to show for a job + days_of_results = math.floor(2000 / runs_per_week) + annotations = { + "testgrid-dashboards": ", ".join(sorted(dashboards)), + "testgrid-days-of-results": str(days_of_results), + "testgrid-tab-name": tab, + } + for k, v in spec.items(): + annotations[f"node.k8s.io/{k}"] = v or "" + + extra = yaml.dump( + {"annotations": annotations}, width=9999, default_flow_style=False + ) + + output = f"\n# {jsonspec}\n{job.strip()}\n" + for line in extra.splitlines(): + output += f" {line}\n" + return output, runs_per_week + +#################### +# Grid Definitions # +#################### +clouds = [ + "aws", + "gce", +] + +cri_options = [ + "containerd", + # 'cri-o', +] + +gce_distro_options = [ + "cos", + # "ubuntu2204-gke", + # "ubuntu2204-gke-arm64", +] + +aws_distro_options = [ + "amazonlinux2", + "al2023", + "al2023-arm64", + "ubuntu2204", + "ubuntu2204-arm64", +] + +image_config_file = { + "amazonlinux2": "amazonlinux2.yaml", # config is stored in config folder of k-sigs/aws-provider-test-infra repo + "amazonlinux2-arm64": "amazonlinux2-arm64.yaml", # config is stored in config folder of k-sigs/aws-provider-test-infra repo + "ubuntu2204": "ubuntu2204.yaml", # config is stored in config folder of k-sigs/aws-provider-test-infra repo + "ubuntu2204-arm64": "ubuntu2204-arm64.yaml", # config is stored in config folder of k-sigs/aws-provider-test-infra repo + "al2023": "al2023.yaml", # config is stored in config folder of k-sigs/aws-provider-test-infra repo + "al2023-arm64": "al2023-arm64.yaml", # config is stored in config folder of k-sigs/aws-provider-test-infra repo + "cos": "../test-infra/jobs/e2e_node/containerd/image-config.yaml", + "ubuntu2204-gke": "../test-infra/jobs/e2e_node/containerd/image-config-ubuntu2204.yaml", + "ubuntu2204-gke-arm64": "../test-infra/jobs/e2e_node/containerd/image-config-ubuntu2204-gke-arm64.yaml", +} + +default_test_args = '--container-runtime-process-name=/usr/bin/containerd --container-runtime-pid-file= --kubelet-flags="--runtime-cgroups=/system.slice/containerd.service" --extra-log="{\"name\": \"containerd.log\", \"journalctl\": [\"-u\", \"containerd*\"]}"' + +test_scenarios = [ + { + "name": "node-e2e", + "skip_regex": r"\[Slow\]|\[Serial\]|\[Flaky\]", + "focus_regex": r"\[Conformance\]|\[NodeConformance\]", + "cloud": "all", + "test_args": default_test_args, + "release_blocking": ["cos-gce"] + }, + { + "name": "node-e2e-serial", + "skip_regex": r"\[Flaky\]|\[Benchmark\]|\[NodeSpecialFeature:.+\]|\[NodeSpecialFeature\]|\[NodeAlphaFeature:.+\]|\[NodeAlphaFeature\]|\[NodeFeature:Eviction\]", + "focus_regex": r"\[Serial\]", + "cloud": "all", + "test_args": default_test_args, + }, + { + "name": "node-e2e-features", + "skip_regex": r"\[Flaky\]|\[Serial\]", + "focus_regex": r"\[NodeFeature:.+\]|\[NodeFeature\]", + "cloud": "all", + "test_args": default_test_args, + }, +] + +# cri_versions = [ +# "containerd/main", +# "containerd/1.7", +# "containerd/1.6", +# ] + +############################ +# kops-periodics-grid.yaml # +############################ +def generate_grid(): + results = [] + # pylint: disable=too-many-nested-blocks + for cri in cri_options: + for test_scenario in test_scenarios: + for cloud in clouds: + if cloud != test_scenario["cloud"] and test_scenario["cloud"] != "all": + continue + for distro in eval(f"{cloud}_distro_options"): + distro_short = distro.replace('ubuntu', 'u').replace('debian', 'deb').replace('amazonlinux', 'amzn') # pylint: disable=line-too-long + arch = "" + if 'arm64' in distro: + arch = "arm64" + extra_dashboards = ["sig-node-grid"] + if "release_blocking" in test_scenario: + for v in test_scenario["release_blocking"]: + if re.match(fr"{distro}-{cloud}", v): + extra_dashboards.extend(['sig-release-master-blocking', 'sig-node-release-blocking']) + results.append( + build_test( + cloud=cloud, + distro=distro_short, + runs_per_day=3, + extra_dashboards=extra_dashboards, + scenario_name=test_scenario["name"], + cri=cri, + arch=arch, + skip_regex=test_scenario["skip_regex"], + focus_regex=test_scenario["focus_regex"], + env={ + "TEST_ARGS": test_scenario["test_args"], + "IMAGE_CONFIG_FILE": image_config_file[distro] + } + ) + ) + + return filter(None, results) + +######################## +# YAML File Generation # +######################## +periodics_files = { + "sig-node-grid.yaml": generate_grid, +} + + +def main(): + for filename, generate_func in periodics_files.items(): + print(f"Generating {filename}") + output = [] + runs_per_week = 0 + job_count = 0 + for res in generate_func(): + output.append(res[0]) + runs_per_week += res[1] + job_count += 1 + output.insert( + 0, "# Test jobs generated by build_jobs.py (do not manually edit)\n" + ) + output.insert( + 1, f"# {job_count} jobs, total of {runs_per_week} runs per week\n" + ) + output.insert(2, "periodics:\n") + with open(filename, "w") as fd: + fd.write("".join(output)) + + +if __name__ == "__main__": + main() diff --git a/config/jobs/kubernetes/sig-node/helpers.py b/config/jobs/kubernetes/sig-node/helpers.py new file mode 100644 index 0000000000000..d262679069407 --- /dev/null +++ b/config/jobs/kubernetes/sig-node/helpers.py @@ -0,0 +1,161 @@ +# Copyright 2020 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. + +import zlib + +import boto3 # pylint: disable=import-error + +# We support rapid focus on a few tests of high concern +# This should be used for temporary tests we are evaluating, +# and ideally linked to a bug, and removed once the bug is fixed +run_hourly = [ +] + +run_daily = [ +] + +def simple_hash(s): + # & 0xffffffff avoids python2/python3 compatibility + return zlib.crc32(s.encode()) & 0xffffffff + +def build_cron(key, runs_per_day): + runs_per_week = 0 + minute = simple_hash("minutes:" + key) % 60 + hour = simple_hash("hours:" + key) % 24 + day_of_week = simple_hash("day_of_week:" + key) % 7 + + if runs_per_day > 0: + hour_denominator = 24 / runs_per_day + hour_offset = simple_hash("hours:" + key) % hour_denominator + return "%d %d-23/%d * * *" % (minute, hour_offset, hour_denominator), (runs_per_day * 7) + + # run Ubuntu 20.04 (Focal) jobs more frequently + if "u2004" in key: + runs_per_week += 7 + return "%d %d * * *" % (minute, hour), runs_per_week + + # run hotlist jobs more frequently + if key in run_hourly: + runs_per_week += 24 * 7 + return "%d * * * *" % (minute), runs_per_week + + if key in run_daily: + runs_per_week += 7 + return "%d %d * * *" % (minute, hour), runs_per_week + + runs_per_week += 1 + return "%d %d * * %d" % (minute, hour, day_of_week), runs_per_week + +def replace_or_remove_line(s, pattern, new_str): + keep = [] + for line in s.split('\n'): + if pattern in line: + if new_str: + line = line.replace(pattern, new_str) + keep.append(line) + else: + keep.append(line) + return '\n'.join(keep) + +def should_skip_newer_k8s(k8s_version, kops_version): + if kops_version is None: + return False + if k8s_version is None: + return True + return float(k8s_version) > float(kops_version) + +def k8s_version_info(k8s_version): + test_package_bucket = '' + test_package_dir = '' + if k8s_version == 'latest': + marker = 'latest.txt' + k8s_deploy_url = "https://dl.k8s.io/release/latest.txt" + elif k8s_version == 'ci': + marker = 'latest.txt' + k8s_deploy_url = "https://storage.googleapis.com/k8s-release-dev/ci/latest.txt" + test_package_bucket = 'k8s-release-dev' + test_package_dir = 'ci' + elif k8s_version == 'stable': + marker = 'stable.txt' + k8s_deploy_url = "https://dl.k8s.io/release/stable.txt" + elif k8s_version: + marker = f"stable-{k8s_version}.txt" + k8s_deploy_url = f"https://dl.k8s.io/release/stable-{k8s_version}.txt" # pylint: disable=line-too-long + else: + raise Exception('missing required k8s_version') + return marker, k8s_deploy_url, test_package_bucket, test_package_dir + +def create_args(kops_channel, networking, extra_flags, kops_image): + args = f"--channel={kops_channel} --networking=" + networking + + image_overridden = False + if extra_flags: + for arg in extra_flags: + if "--image=" in arg: + image_overridden = True + args = args + " " + arg + if kops_image and not image_overridden: + args = f"--image='{kops_image}' {args}" + return args.strip() + +# def latest_aws_image(owner, name, arch='x86_64'): +# client = boto3.client('ec2', region_name='us-east-1') +# response = client.describe_images( +# Owners=[owner], +# Filters=[ +# { +# 'Name': 'name', +# 'Values': [ +# name, +# ], +# }, +# { +# 'Name': 'architecture', +# 'Values': [ +# arch +# ], +# }, +# ], +# ) +# images = [] +# for image in response['Images']: +# images.append(image['ImageLocation'].replace('amazon', owner)) +# images.sort(reverse=True) +# return images[0] + +# distro_images = { +# 'al2023': latest_aws_image('137112412989', 'al2023-ami-2*-kernel-6.1-x86_64'), +# 'amzn2': latest_aws_image('137112412989', 'amzn2-ami-kernel-5.10-hvm-*-x86_64-gp2'), +# 'deb10': latest_aws_image('136693071363', 'debian-10-amd64-*'), +# 'deb11': latest_aws_image('136693071363', 'debian-11-amd64-*'), +# 'deb12': latest_aws_image('136693071363', 'debian-12-amd64-*'), +# 'flatcar': latest_aws_image('075585003325', 'Flatcar-beta-*-hvm'), +# 'flatcararm64': latest_aws_image('075585003325', 'Flatcar-beta-*-hvm', 'arm64'), +# 'rhel8': latest_aws_image('309956199498', 'RHEL-8.*_HVM-*-x86_64-*'), +# 'rhel9': latest_aws_image('309956199498', 'RHEL-9.*_HVM-*-x86_64-*'), +# 'rocky8': latest_aws_image('792107900819', 'Rocky-8-ec2-8.*.x86_64'), +# 'u1804': latest_aws_image('099720109477', 'ubuntu/images/hvm-ssd/ubuntu-bionic-18.04-amd64-server-*'), # pylint: disable=line-too-long +# 'u2004': latest_aws_image('099720109477', 'ubuntu/images/hvm-ssd/ubuntu-focal-20.04-amd64-server-*'), # pylint: disable=line-too-long +# 'u2004arm64': latest_aws_image('099720109477', 'ubuntu/images/hvm-ssd/ubuntu-focal-20.04-arm64-server-*', 'arm64'), # pylint: disable=line-too-long +# 'u2204': latest_aws_image('099720109477', 'ubuntu/images/hvm-ssd/ubuntu-jammy-22.04-amd64-server-*'), # pylint: disable=line-too-long +# 'u2204arm64': latest_aws_image('099720109477', 'ubuntu/images/hvm-ssd/ubuntu-jammy-22.04-arm64-server-*', 'arm64'), # pylint: disable=line-too-long +# } + +distros_ssh_user = { + 'al2023': 'ec2-user', + 'u2204': 'ec2-user', + 'u2204-gke': 'ec2-user', + 'amzn2': 'ec2-user', + 'cos': 'prow', +} diff --git a/config/jobs/kubernetes/sig-node/sig-node-grid.yaml b/config/jobs/kubernetes/sig-node/sig-node-grid.yaml new file mode 100644 index 0000000000000..c67cb3e647862 --- /dev/null +++ b/config/jobs/kubernetes/sig-node/sig-node-grid.yaml @@ -0,0 +1,1311 @@ +# Test jobs generated by build_jobs.py (do not manually edit) +# 24 jobs, total of 336 runs per week +periodics: + +# {"cloud": "aws", "cri": "containerd", "distro": "amzn2", "scenario": "node-e2e"} +- name: ci-kubernetes-node-e2e-containerd-aws-amzn2 + cron: '10 2-23/12 * * *' + labels: + preset-e2e-containerd-ec2: "true" + decorate: true + cluster: eks-prow-build-cluster + extra_refs: + - org: kubernetes-sigs + repo: provider-aws-test-infra + base_ref: main + path_alias: sigs.k8s.io/provider-aws-test-infra + - org: kubernetes + repo: kubernetes + base_ref: master + path_alias: k8s.io/kubernetes + spec: + serviceAccountName: node-e2e-tests + containers: + - command: + - runner.sh + args: + - hack/make-rules/test-e2e-node.sh + env: + - name: TEST_ARGS + value: '--container-runtime-process-name=/usr/bin/containerd --container-runtime-pid-file= --kubelet-flags="--runtime-cgroups=/system.slice/containerd.service" --extra-log="{"name": "containerd.log", "journalctl": ["-u", "containerd*"]}"' + - name: IMAGE_CONFIG_FILE + value: 'amazonlinux2.yaml' + - name: SKIP + value: '\[Slow\]|\[Serial\]|\[Flaky\]' + - name: FOCUS + value: '\[Conformance\]|\[NodeConformance\]' + image: gcr.io/k8s-staging-test-infra/kubekins-e2e:v20230616-e730b60769-master + imagePullPolicy: Always + resources: + requests: + cpu: 4 + memory: 6Gi + limits: + cpu: 4 + memory: 6Gi + annotations: + node.k8s.io/cloud: aws + node.k8s.io/cri: containerd + node.k8s.io/distro: amzn2 + node.k8s.io/scenario: node-e2e + testgrid-dashboards: sig-node-amzn2, sig-node-aws, sig-node-containerd, sig-node-grid + testgrid-days-of-results: '90' + testgrid-tab-name: node-e2e-containerd-aws-amzn2 + +# {"cloud": "aws", "cri": "containerd", "distro": "al2023", "scenario": "node-e2e"} +- name: ci-kubernetes-node-e2e-containerd-aws-al2023 + cron: '16 1-23/12 * * *' + labels: + preset-e2e-containerd-ec2: "true" + decorate: true + cluster: eks-prow-build-cluster + extra_refs: + - org: kubernetes-sigs + repo: provider-aws-test-infra + base_ref: main + path_alias: sigs.k8s.io/provider-aws-test-infra + - org: kubernetes + repo: kubernetes + base_ref: master + path_alias: k8s.io/kubernetes + spec: + serviceAccountName: node-e2e-tests + containers: + - command: + - runner.sh + args: + - hack/make-rules/test-e2e-node.sh + env: + - name: TEST_ARGS + value: '--container-runtime-process-name=/usr/bin/containerd --container-runtime-pid-file= --kubelet-flags="--runtime-cgroups=/system.slice/containerd.service" --extra-log="{"name": "containerd.log", "journalctl": ["-u", "containerd*"]}"' + - name: IMAGE_CONFIG_FILE + value: 'al2023.yaml' + - name: SKIP + value: '\[Slow\]|\[Serial\]|\[Flaky\]' + - name: FOCUS + value: '\[Conformance\]|\[NodeConformance\]' + image: gcr.io/k8s-staging-test-infra/kubekins-e2e:v20230616-e730b60769-master + imagePullPolicy: Always + resources: + requests: + cpu: 4 + memory: 6Gi + limits: + cpu: 4 + memory: 6Gi + annotations: + node.k8s.io/cloud: aws + node.k8s.io/cri: containerd + node.k8s.io/distro: al2023 + node.k8s.io/scenario: node-e2e + testgrid-dashboards: sig-node-al2023, sig-node-aws, sig-node-containerd, sig-node-grid + testgrid-days-of-results: '90' + testgrid-tab-name: node-e2e-containerd-aws-al2023 + +# {"cloud": "aws", "cri": "containerd", "distro": "al2023-arm64", "scenario": "node-e2e"} +- name: ci-kubernetes-node-e2e-containerd-aws-al2023-arm64 + cron: '30 7-23/12 * * *' + labels: + preset-e2e-containerd-ec2: "true" + decorate: true + cluster: eks-prow-build-cluster + extra_refs: + - org: kubernetes-sigs + repo: provider-aws-test-infra + base_ref: main + path_alias: sigs.k8s.io/provider-aws-test-infra + - org: kubernetes + repo: kubernetes + base_ref: master + path_alias: k8s.io/kubernetes + spec: + serviceAccountName: node-e2e-tests + containers: + - command: + - runner.sh + args: + - hack/make-rules/test-e2e-node.sh + env: + - name: TEST_ARGS + value: '--container-runtime-process-name=/usr/bin/containerd --container-runtime-pid-file= --kubelet-flags="--runtime-cgroups=/system.slice/containerd.service" --extra-log="{"name": "containerd.log", "journalctl": ["-u", "containerd*"]}"' + - name: IMAGE_CONFIG_FILE + value: 'al2023-arm64.yaml' + - name: SKIP + value: '\[Slow\]|\[Serial\]|\[Flaky\]' + - name: FOCUS + value: '\[Conformance\]|\[NodeConformance\]' + - name: USE_DOCKERIZED_BUILD + value: 'true' + - name: TARGET_BUILD_ARCH + value: 'linux/arm64' + image: gcr.io/k8s-staging-test-infra/kubekins-e2e:v20230616-e730b60769-master + imagePullPolicy: Always + resources: + requests: + cpu: 4 + memory: 6Gi + limits: + cpu: 4 + memory: 6Gi + annotations: + node.k8s.io/cloud: aws + node.k8s.io/cri: containerd + node.k8s.io/distro: al2023-arm64 + node.k8s.io/scenario: node-e2e + testgrid-dashboards: sig-node-al2023-, sig-node-aws, sig-node-containerd, sig-node-grid + testgrid-days-of-results: '90' + testgrid-tab-name: node-e2e-containerd-aws-al2023-arm64 + +# {"cloud": "aws", "cri": "containerd", "distro": "u2204", "scenario": "node-e2e"} +- name: ci-kubernetes-node-e2e-containerd-aws-u2204 + cron: '51 7-23/12 * * *' + labels: + preset-e2e-containerd-ec2: "true" + decorate: true + cluster: eks-prow-build-cluster + extra_refs: + - org: kubernetes-sigs + repo: provider-aws-test-infra + base_ref: main + path_alias: sigs.k8s.io/provider-aws-test-infra + - org: kubernetes + repo: kubernetes + base_ref: master + path_alias: k8s.io/kubernetes + spec: + serviceAccountName: node-e2e-tests + containers: + - command: + - runner.sh + args: + - hack/make-rules/test-e2e-node.sh + env: + - name: TEST_ARGS + value: '--container-runtime-process-name=/usr/bin/containerd --container-runtime-pid-file= --kubelet-flags="--runtime-cgroups=/system.slice/containerd.service" --extra-log="{"name": "containerd.log", "journalctl": ["-u", "containerd*"]}"' + - name: IMAGE_CONFIG_FILE + value: 'ubuntu2204.yaml' + - name: SKIP + value: '\[Slow\]|\[Serial\]|\[Flaky\]' + - name: FOCUS + value: '\[Conformance\]|\[NodeConformance\]' + image: gcr.io/k8s-staging-test-infra/kubekins-e2e:v20230616-e730b60769-master + imagePullPolicy: Always + resources: + requests: + cpu: 4 + memory: 6Gi + limits: + cpu: 4 + memory: 6Gi + annotations: + node.k8s.io/cloud: aws + node.k8s.io/cri: containerd + node.k8s.io/distro: u2204 + node.k8s.io/scenario: node-e2e + testgrid-dashboards: sig-node-aws, sig-node-containerd, sig-node-grid, sig-node-u2204 + testgrid-days-of-results: '90' + testgrid-tab-name: node-e2e-containerd-aws-u2204 + +# {"cloud": "aws", "cri": "containerd", "distro": "u2204-arm64", "scenario": "node-e2e"} +- name: ci-kubernetes-node-e2e-containerd-aws-u2204-arm64 + cron: '19 9-23/12 * * *' + labels: + preset-e2e-containerd-ec2: "true" + decorate: true + cluster: eks-prow-build-cluster + extra_refs: + - org: kubernetes-sigs + repo: provider-aws-test-infra + base_ref: main + path_alias: sigs.k8s.io/provider-aws-test-infra + - org: kubernetes + repo: kubernetes + base_ref: master + path_alias: k8s.io/kubernetes + spec: + serviceAccountName: node-e2e-tests + containers: + - command: + - runner.sh + args: + - hack/make-rules/test-e2e-node.sh + env: + - name: TEST_ARGS + value: '--container-runtime-process-name=/usr/bin/containerd --container-runtime-pid-file= --kubelet-flags="--runtime-cgroups=/system.slice/containerd.service" --extra-log="{"name": "containerd.log", "journalctl": ["-u", "containerd*"]}"' + - name: IMAGE_CONFIG_FILE + value: 'ubuntu2204-arm64.yaml' + - name: SKIP + value: '\[Slow\]|\[Serial\]|\[Flaky\]' + - name: FOCUS + value: '\[Conformance\]|\[NodeConformance\]' + - name: USE_DOCKERIZED_BUILD + value: 'true' + - name: TARGET_BUILD_ARCH + value: 'linux/arm64' + image: gcr.io/k8s-staging-test-infra/kubekins-e2e:v20230616-e730b60769-master + imagePullPolicy: Always + resources: + requests: + cpu: 4 + memory: 6Gi + limits: + cpu: 4 + memory: 6Gi + annotations: + node.k8s.io/cloud: aws + node.k8s.io/cri: containerd + node.k8s.io/distro: u2204-arm64 + node.k8s.io/scenario: node-e2e + testgrid-dashboards: sig-node-aws, sig-node-containerd, sig-node-grid, sig-node-u2204- + testgrid-days-of-results: '90' + testgrid-tab-name: node-e2e-containerd-aws-u2204-arm64 + +# {"cloud": "gce", "cri": "containerd", "distro": "cos", "scenario": "node-e2e"} +- name: ci-kubernetes-node-e2e-containerd-gce-cos + cron: '45 3-23/12 * * *' + labels: + preset-service-account: "true" + preset-k8s-ssh: "true" + decorate: true + cluster: k8s-infra-prow-build + 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: + - command: + - runner.sh + args: + - kubetest2 + - noop + - --test=node + - --gcp-zone=us-west1-b + - --parallelism=8 + - --focus-regex=$FOCUS + - --skip-regex=$SKIP + - --test-args=$TEST_ARGS + - --image-config-file=$IMAGE_CONFIG_FILE + env: + - name: TEST_ARGS + value: '--container-runtime-process-name=/usr/bin/containerd --container-runtime-pid-file= --kubelet-flags="--runtime-cgroups=/system.slice/containerd.service" --extra-log="{"name": "containerd.log", "journalctl": ["-u", "containerd*"]}"' + - name: IMAGE_CONFIG_FILE + value: '../test-infra/jobs/e2e_node/containerd/image-config.yaml' + - name: SKIP + value: '\[Slow\]|\[Serial\]|\[Flaky\]' + - name: FOCUS + value: '\[Conformance\]|\[NodeConformance\]' + image: gcr.io/k8s-staging-test-infra/kubekins-e2e:v20230616-e730b60769-master + imagePullPolicy: Always + resources: + requests: + cpu: 4 + memory: 6Gi + limits: + cpu: 4 + memory: 6Gi + annotations: + node.k8s.io/cloud: gce + node.k8s.io/cri: containerd + node.k8s.io/distro: cos + node.k8s.io/scenario: node-e2e + testgrid-dashboards: sig-node-containerd, sig-node-cos, sig-node-gce, sig-node-grid, sig-node-release-blocking, sig-release-master-blocking + testgrid-days-of-results: '90' + testgrid-tab-name: node-e2e-containerd-gce-cos + +# {"cloud": "gce", "cri": "containerd", "distro": "u2204-gke", "scenario": "node-e2e"} +- name: ci-kubernetes-node-e2e-containerd-gce-u2204-gke + cron: '12 4-23/12 * * *' + labels: + preset-service-account: "true" + preset-k8s-ssh: "true" + decorate: true + cluster: k8s-infra-prow-build + 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: + - command: + - runner.sh + args: + - kubetest2 + - noop + - --test=node + - --gcp-zone=us-west1-b + - --parallelism=8 + - --focus-regex=$FOCUS + - --skip-regex=$SKIP + - --test-args=$TEST_ARGS + - --image-config-file=$IMAGE_CONFIG_FILE + env: + - name: TEST_ARGS + value: '--container-runtime-process-name=/usr/bin/containerd --container-runtime-pid-file= --kubelet-flags="--runtime-cgroups=/system.slice/containerd.service" --extra-log="{"name": "containerd.log", "journalctl": ["-u", "containerd*"]}"' + - name: IMAGE_CONFIG_FILE + value: '../test-infra/jobs/e2e_node/containerd/image-config-ubuntu2204.yaml' + - name: SKIP + value: '\[Slow\]|\[Serial\]|\[Flaky\]' + - name: FOCUS + value: '\[Conformance\]|\[NodeConformance\]' + image: gcr.io/k8s-staging-test-infra/kubekins-e2e:v20230616-e730b60769-master + imagePullPolicy: Always + resources: + requests: + cpu: 4 + memory: 6Gi + limits: + cpu: 4 + memory: 6Gi + annotations: + node.k8s.io/cloud: gce + node.k8s.io/cri: containerd + node.k8s.io/distro: u2204-gke + node.k8s.io/scenario: node-e2e + testgrid-dashboards: sig-node-containerd, sig-node-gce, sig-node-grid, sig-node-u2204-gke + testgrid-days-of-results: '90' + testgrid-tab-name: node-e2e-containerd-gce-u2204-gke + +# {"cloud": "gce", "cri": "containerd", "distro": "u2204-gke-arm64", "scenario": "node-e2e"} +- name: ci-kubernetes-node-e2e-containerd-gce-u2204-gke-arm64 + cron: '23 4-23/12 * * *' + labels: + preset-service-account: "true" + preset-k8s-ssh: "true" + decorate: true + cluster: k8s-infra-prow-build + 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: + - command: + - runner.sh + args: + - kubetest2 + - noop + - --test=node + - --gcp-zone=us-west1-b + - --parallelism=8 + - --focus-regex=$FOCUS + - --skip-regex=$SKIP + - --test-args=$TEST_ARGS + - --image-config-file=$IMAGE_CONFIG_FILE + env: + - name: TEST_ARGS + value: '--container-runtime-process-name=/usr/bin/containerd --container-runtime-pid-file= --kubelet-flags="--runtime-cgroups=/system.slice/containerd.service" --extra-log="{"name": "containerd.log", "journalctl": ["-u", "containerd*"]}"' + - name: IMAGE_CONFIG_FILE + value: '../test-infra/jobs/e2e_node/containerd/image-config-ubuntu2204-gke-arm64.yaml' + - name: SKIP + value: '\[Slow\]|\[Serial\]|\[Flaky\]' + - name: FOCUS + value: '\[Conformance\]|\[NodeConformance\]' + - name: USE_DOCKERIZED_BUILD + value: 'true' + - name: TARGET_BUILD_ARCH + value: 'linux/arm64' + image: gcr.io/k8s-staging-test-infra/kubekins-e2e:v20230616-e730b60769-master + imagePullPolicy: Always + resources: + requests: + cpu: 4 + memory: 6Gi + limits: + cpu: 4 + memory: 6Gi + annotations: + node.k8s.io/cloud: gce + node.k8s.io/cri: containerd + node.k8s.io/distro: u2204-gke-arm64 + node.k8s.io/scenario: node-e2e + testgrid-dashboards: sig-node-containerd, sig-node-gce, sig-node-grid, sig-node-u2204-gke- + testgrid-days-of-results: '90' + testgrid-tab-name: node-e2e-containerd-gce-u2204-gke-arm64 + +# {"cloud": "aws", "cri": "containerd", "distro": "amzn2", "scenario": "node-e2e-serial"} +- name: ci-kubernetes-node-e2e-serial-containerd-aws-amzn2 + cron: '47 10-23/12 * * *' + labels: + preset-e2e-containerd-ec2: "true" + decorate: true + cluster: eks-prow-build-cluster + extra_refs: + - org: kubernetes-sigs + repo: provider-aws-test-infra + base_ref: main + path_alias: sigs.k8s.io/provider-aws-test-infra + - org: kubernetes + repo: kubernetes + base_ref: master + path_alias: k8s.io/kubernetes + spec: + serviceAccountName: node-e2e-tests + containers: + - command: + - runner.sh + args: + - hack/make-rules/test-e2e-node.sh + env: + - name: TEST_ARGS + value: '--container-runtime-process-name=/usr/bin/containerd --container-runtime-pid-file= --kubelet-flags="--runtime-cgroups=/system.slice/containerd.service" --extra-log="{"name": "containerd.log", "journalctl": ["-u", "containerd*"]}"' + - name: IMAGE_CONFIG_FILE + value: 'amazonlinux2.yaml' + - name: SKIP + value: '\[Flaky\]|\[Benchmark\]|\[NodeSpecialFeature:.+\]|\[NodeSpecialFeature\]|\[NodeAlphaFeature:.+\]|\[NodeAlphaFeature\]|\[NodeFeature:Eviction\]' + - name: FOCUS + value: '\[Serial\]' + image: gcr.io/k8s-staging-test-infra/kubekins-e2e:v20230616-e730b60769-master + imagePullPolicy: Always + resources: + requests: + cpu: 4 + memory: 6Gi + limits: + cpu: 4 + memory: 6Gi + annotations: + node.k8s.io/cloud: aws + node.k8s.io/cri: containerd + node.k8s.io/distro: amzn2 + node.k8s.io/scenario: node-e2e-serial + testgrid-dashboards: sig-node-amzn2, sig-node-aws, sig-node-containerd, sig-node-grid + testgrid-days-of-results: '90' + testgrid-tab-name: node-e2e-serial-containerd-aws-amzn2 + +# {"cloud": "aws", "cri": "containerd", "distro": "al2023", "scenario": "node-e2e-serial"} +- name: ci-kubernetes-node-e2e-serial-containerd-aws-al2023 + cron: '44 4-23/12 * * *' + labels: + preset-e2e-containerd-ec2: "true" + decorate: true + cluster: eks-prow-build-cluster + extra_refs: + - org: kubernetes-sigs + repo: provider-aws-test-infra + base_ref: main + path_alias: sigs.k8s.io/provider-aws-test-infra + - org: kubernetes + repo: kubernetes + base_ref: master + path_alias: k8s.io/kubernetes + spec: + serviceAccountName: node-e2e-tests + containers: + - command: + - runner.sh + args: + - hack/make-rules/test-e2e-node.sh + env: + - name: TEST_ARGS + value: '--container-runtime-process-name=/usr/bin/containerd --container-runtime-pid-file= --kubelet-flags="--runtime-cgroups=/system.slice/containerd.service" --extra-log="{"name": "containerd.log", "journalctl": ["-u", "containerd*"]}"' + - name: IMAGE_CONFIG_FILE + value: 'al2023.yaml' + - name: SKIP + value: '\[Flaky\]|\[Benchmark\]|\[NodeSpecialFeature:.+\]|\[NodeSpecialFeature\]|\[NodeAlphaFeature:.+\]|\[NodeAlphaFeature\]|\[NodeFeature:Eviction\]' + - name: FOCUS + value: '\[Serial\]' + image: gcr.io/k8s-staging-test-infra/kubekins-e2e:v20230616-e730b60769-master + imagePullPolicy: Always + resources: + requests: + cpu: 4 + memory: 6Gi + limits: + cpu: 4 + memory: 6Gi + annotations: + node.k8s.io/cloud: aws + node.k8s.io/cri: containerd + node.k8s.io/distro: al2023 + node.k8s.io/scenario: node-e2e-serial + testgrid-dashboards: sig-node-al2023, sig-node-aws, sig-node-containerd, sig-node-grid + testgrid-days-of-results: '90' + testgrid-tab-name: node-e2e-serial-containerd-aws-al2023 + +# {"cloud": "aws", "cri": "containerd", "distro": "al2023-arm64", "scenario": "node-e2e-serial"} +- name: ci-kubernetes-node-e2e-serial-containerd-aws-al2023-arm64 + cron: '52 10-23/12 * * *' + labels: + preset-e2e-containerd-ec2: "true" + decorate: true + cluster: eks-prow-build-cluster + extra_refs: + - org: kubernetes-sigs + repo: provider-aws-test-infra + base_ref: main + path_alias: sigs.k8s.io/provider-aws-test-infra + - org: kubernetes + repo: kubernetes + base_ref: master + path_alias: k8s.io/kubernetes + spec: + serviceAccountName: node-e2e-tests + containers: + - command: + - runner.sh + args: + - hack/make-rules/test-e2e-node.sh + env: + - name: TEST_ARGS + value: '--container-runtime-process-name=/usr/bin/containerd --container-runtime-pid-file= --kubelet-flags="--runtime-cgroups=/system.slice/containerd.service" --extra-log="{"name": "containerd.log", "journalctl": ["-u", "containerd*"]}"' + - name: IMAGE_CONFIG_FILE + value: 'al2023-arm64.yaml' + - name: SKIP + value: '\[Flaky\]|\[Benchmark\]|\[NodeSpecialFeature:.+\]|\[NodeSpecialFeature\]|\[NodeAlphaFeature:.+\]|\[NodeAlphaFeature\]|\[NodeFeature:Eviction\]' + - name: FOCUS + value: '\[Serial\]' + - name: USE_DOCKERIZED_BUILD + value: 'true' + - name: TARGET_BUILD_ARCH + value: 'linux/arm64' + image: gcr.io/k8s-staging-test-infra/kubekins-e2e:v20230616-e730b60769-master + imagePullPolicy: Always + resources: + requests: + cpu: 4 + memory: 6Gi + limits: + cpu: 4 + memory: 6Gi + annotations: + node.k8s.io/cloud: aws + node.k8s.io/cri: containerd + node.k8s.io/distro: al2023-arm64 + node.k8s.io/scenario: node-e2e-serial + testgrid-dashboards: sig-node-al2023-, sig-node-aws, sig-node-containerd, sig-node-grid + testgrid-days-of-results: '90' + testgrid-tab-name: node-e2e-serial-containerd-aws-al2023-arm64 + +# {"cloud": "aws", "cri": "containerd", "distro": "u2204", "scenario": "node-e2e-serial"} +- name: ci-kubernetes-node-e2e-serial-containerd-aws-u2204 + cron: '18 11-23/12 * * *' + labels: + preset-e2e-containerd-ec2: "true" + decorate: true + cluster: eks-prow-build-cluster + extra_refs: + - org: kubernetes-sigs + repo: provider-aws-test-infra + base_ref: main + path_alias: sigs.k8s.io/provider-aws-test-infra + - org: kubernetes + repo: kubernetes + base_ref: master + path_alias: k8s.io/kubernetes + spec: + serviceAccountName: node-e2e-tests + containers: + - command: + - runner.sh + args: + - hack/make-rules/test-e2e-node.sh + env: + - name: TEST_ARGS + value: '--container-runtime-process-name=/usr/bin/containerd --container-runtime-pid-file= --kubelet-flags="--runtime-cgroups=/system.slice/containerd.service" --extra-log="{"name": "containerd.log", "journalctl": ["-u", "containerd*"]}"' + - name: IMAGE_CONFIG_FILE + value: 'ubuntu2204.yaml' + - name: SKIP + value: '\[Flaky\]|\[Benchmark\]|\[NodeSpecialFeature:.+\]|\[NodeSpecialFeature\]|\[NodeAlphaFeature:.+\]|\[NodeAlphaFeature\]|\[NodeFeature:Eviction\]' + - name: FOCUS + value: '\[Serial\]' + image: gcr.io/k8s-staging-test-infra/kubekins-e2e:v20230616-e730b60769-master + imagePullPolicy: Always + resources: + requests: + cpu: 4 + memory: 6Gi + limits: + cpu: 4 + memory: 6Gi + annotations: + node.k8s.io/cloud: aws + node.k8s.io/cri: containerd + node.k8s.io/distro: u2204 + node.k8s.io/scenario: node-e2e-serial + testgrid-dashboards: sig-node-aws, sig-node-containerd, sig-node-grid, sig-node-u2204 + testgrid-days-of-results: '90' + testgrid-tab-name: node-e2e-serial-containerd-aws-u2204 + +# {"cloud": "aws", "cri": "containerd", "distro": "u2204-arm64", "scenario": "node-e2e-serial"} +- name: ci-kubernetes-node-e2e-serial-containerd-aws-u2204-arm64 + cron: '12 10-23/12 * * *' + labels: + preset-e2e-containerd-ec2: "true" + decorate: true + cluster: eks-prow-build-cluster + extra_refs: + - org: kubernetes-sigs + repo: provider-aws-test-infra + base_ref: main + path_alias: sigs.k8s.io/provider-aws-test-infra + - org: kubernetes + repo: kubernetes + base_ref: master + path_alias: k8s.io/kubernetes + spec: + serviceAccountName: node-e2e-tests + containers: + - command: + - runner.sh + args: + - hack/make-rules/test-e2e-node.sh + env: + - name: TEST_ARGS + value: '--container-runtime-process-name=/usr/bin/containerd --container-runtime-pid-file= --kubelet-flags="--runtime-cgroups=/system.slice/containerd.service" --extra-log="{"name": "containerd.log", "journalctl": ["-u", "containerd*"]}"' + - name: IMAGE_CONFIG_FILE + value: 'ubuntu2204-arm64.yaml' + - name: SKIP + value: '\[Flaky\]|\[Benchmark\]|\[NodeSpecialFeature:.+\]|\[NodeSpecialFeature\]|\[NodeAlphaFeature:.+\]|\[NodeAlphaFeature\]|\[NodeFeature:Eviction\]' + - name: FOCUS + value: '\[Serial\]' + - name: USE_DOCKERIZED_BUILD + value: 'true' + - name: TARGET_BUILD_ARCH + value: 'linux/arm64' + image: gcr.io/k8s-staging-test-infra/kubekins-e2e:v20230616-e730b60769-master + imagePullPolicy: Always + resources: + requests: + cpu: 4 + memory: 6Gi + limits: + cpu: 4 + memory: 6Gi + annotations: + node.k8s.io/cloud: aws + node.k8s.io/cri: containerd + node.k8s.io/distro: u2204-arm64 + node.k8s.io/scenario: node-e2e-serial + testgrid-dashboards: sig-node-aws, sig-node-containerd, sig-node-grid, sig-node-u2204- + testgrid-days-of-results: '90' + testgrid-tab-name: node-e2e-serial-containerd-aws-u2204-arm64 + +# {"cloud": "gce", "cri": "containerd", "distro": "cos", "scenario": "node-e2e-serial"} +- name: ci-kubernetes-node-e2e-serial-containerd-gce-cos + cron: '2 1-23/12 * * *' + labels: + preset-service-account: "true" + preset-k8s-ssh: "true" + decorate: true + cluster: k8s-infra-prow-build + 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: + - command: + - runner.sh + args: + - kubetest2 + - noop + - --test=node + - --gcp-zone=us-west1-b + - --parallelism=8 + - --focus-regex=$FOCUS + - --skip-regex=$SKIP + - --test-args=$TEST_ARGS + - --image-config-file=$IMAGE_CONFIG_FILE + env: + - name: TEST_ARGS + value: '--container-runtime-process-name=/usr/bin/containerd --container-runtime-pid-file= --kubelet-flags="--runtime-cgroups=/system.slice/containerd.service" --extra-log="{"name": "containerd.log", "journalctl": ["-u", "containerd*"]}"' + - name: IMAGE_CONFIG_FILE + value: '../test-infra/jobs/e2e_node/containerd/image-config.yaml' + - name: SKIP + value: '\[Flaky\]|\[Benchmark\]|\[NodeSpecialFeature:.+\]|\[NodeSpecialFeature\]|\[NodeAlphaFeature:.+\]|\[NodeAlphaFeature\]|\[NodeFeature:Eviction\]' + - name: FOCUS + value: '\[Serial\]' + image: gcr.io/k8s-staging-test-infra/kubekins-e2e:v20230616-e730b60769-master + imagePullPolicy: Always + resources: + requests: + cpu: 4 + memory: 6Gi + limits: + cpu: 4 + memory: 6Gi + annotations: + node.k8s.io/cloud: gce + node.k8s.io/cri: containerd + node.k8s.io/distro: cos + node.k8s.io/scenario: node-e2e-serial + testgrid-dashboards: sig-node-containerd, sig-node-cos, sig-node-gce, sig-node-grid + testgrid-days-of-results: '90' + testgrid-tab-name: node-e2e-serial-containerd-gce-cos + +# {"cloud": "gce", "cri": "containerd", "distro": "u2204-gke", "scenario": "node-e2e-serial"} +- name: ci-kubernetes-node-e2e-serial-containerd-gce-u2204-gke + cron: '35 7-23/12 * * *' + labels: + preset-service-account: "true" + preset-k8s-ssh: "true" + decorate: true + cluster: k8s-infra-prow-build + 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: + - command: + - runner.sh + args: + - kubetest2 + - noop + - --test=node + - --gcp-zone=us-west1-b + - --parallelism=8 + - --focus-regex=$FOCUS + - --skip-regex=$SKIP + - --test-args=$TEST_ARGS + - --image-config-file=$IMAGE_CONFIG_FILE + env: + - name: TEST_ARGS + value: '--container-runtime-process-name=/usr/bin/containerd --container-runtime-pid-file= --kubelet-flags="--runtime-cgroups=/system.slice/containerd.service" --extra-log="{"name": "containerd.log", "journalctl": ["-u", "containerd*"]}"' + - name: IMAGE_CONFIG_FILE + value: '../test-infra/jobs/e2e_node/containerd/image-config-ubuntu2204.yaml' + - name: SKIP + value: '\[Flaky\]|\[Benchmark\]|\[NodeSpecialFeature:.+\]|\[NodeSpecialFeature\]|\[NodeAlphaFeature:.+\]|\[NodeAlphaFeature\]|\[NodeFeature:Eviction\]' + - name: FOCUS + value: '\[Serial\]' + image: gcr.io/k8s-staging-test-infra/kubekins-e2e:v20230616-e730b60769-master + imagePullPolicy: Always + resources: + requests: + cpu: 4 + memory: 6Gi + limits: + cpu: 4 + memory: 6Gi + annotations: + node.k8s.io/cloud: gce + node.k8s.io/cri: containerd + node.k8s.io/distro: u2204-gke + node.k8s.io/scenario: node-e2e-serial + testgrid-dashboards: sig-node-containerd, sig-node-gce, sig-node-grid, sig-node-u2204-gke + testgrid-days-of-results: '90' + testgrid-tab-name: node-e2e-serial-containerd-gce-u2204-gke + +# {"cloud": "gce", "cri": "containerd", "distro": "u2204-gke-arm64", "scenario": "node-e2e-serial"} +- name: ci-kubernetes-node-e2e-serial-containerd-gce-u2204-gke-arm64 + cron: '16 7-23/12 * * *' + labels: + preset-service-account: "true" + preset-k8s-ssh: "true" + decorate: true + cluster: k8s-infra-prow-build + 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: + - command: + - runner.sh + args: + - kubetest2 + - noop + - --test=node + - --gcp-zone=us-west1-b + - --parallelism=8 + - --focus-regex=$FOCUS + - --skip-regex=$SKIP + - --test-args=$TEST_ARGS + - --image-config-file=$IMAGE_CONFIG_FILE + env: + - name: TEST_ARGS + value: '--container-runtime-process-name=/usr/bin/containerd --container-runtime-pid-file= --kubelet-flags="--runtime-cgroups=/system.slice/containerd.service" --extra-log="{"name": "containerd.log", "journalctl": ["-u", "containerd*"]}"' + - name: IMAGE_CONFIG_FILE + value: '../test-infra/jobs/e2e_node/containerd/image-config-ubuntu2204-gke-arm64.yaml' + - name: SKIP + value: '\[Flaky\]|\[Benchmark\]|\[NodeSpecialFeature:.+\]|\[NodeSpecialFeature\]|\[NodeAlphaFeature:.+\]|\[NodeAlphaFeature\]|\[NodeFeature:Eviction\]' + - name: FOCUS + value: '\[Serial\]' + - name: USE_DOCKERIZED_BUILD + value: 'true' + - name: TARGET_BUILD_ARCH + value: 'linux/arm64' + image: gcr.io/k8s-staging-test-infra/kubekins-e2e:v20230616-e730b60769-master + imagePullPolicy: Always + resources: + requests: + cpu: 4 + memory: 6Gi + limits: + cpu: 4 + memory: 6Gi + annotations: + node.k8s.io/cloud: gce + node.k8s.io/cri: containerd + node.k8s.io/distro: u2204-gke-arm64 + node.k8s.io/scenario: node-e2e-serial + testgrid-dashboards: sig-node-containerd, sig-node-gce, sig-node-grid, sig-node-u2204-gke- + testgrid-days-of-results: '90' + testgrid-tab-name: node-e2e-serial-containerd-gce-u2204-gke-arm64 + +# {"cloud": "aws", "cri": "containerd", "distro": "amzn2", "scenario": "node-e2e-features"} +- name: ci-kubernetes-node-e2e-features-containerd-aws-amzn2 + cron: '49 2-23/12 * * *' + labels: + preset-e2e-containerd-ec2: "true" + decorate: true + cluster: eks-prow-build-cluster + extra_refs: + - org: kubernetes-sigs + repo: provider-aws-test-infra + base_ref: main + path_alias: sigs.k8s.io/provider-aws-test-infra + - org: kubernetes + repo: kubernetes + base_ref: master + path_alias: k8s.io/kubernetes + spec: + serviceAccountName: node-e2e-tests + containers: + - command: + - runner.sh + args: + - hack/make-rules/test-e2e-node.sh + env: + - name: TEST_ARGS + value: '--container-runtime-process-name=/usr/bin/containerd --container-runtime-pid-file= --kubelet-flags="--runtime-cgroups=/system.slice/containerd.service" --extra-log="{"name": "containerd.log", "journalctl": ["-u", "containerd*"]}"' + - name: IMAGE_CONFIG_FILE + value: 'amazonlinux2.yaml' + - name: SKIP + value: '\[Flaky\]|\[Serial\]' + - name: FOCUS + value: '\[NodeFeature:.+\]|\[NodeFeature\]' + image: gcr.io/k8s-staging-test-infra/kubekins-e2e:v20230616-e730b60769-master + imagePullPolicy: Always + resources: + requests: + cpu: 4 + memory: 6Gi + limits: + cpu: 4 + memory: 6Gi + annotations: + node.k8s.io/cloud: aws + node.k8s.io/cri: containerd + node.k8s.io/distro: amzn2 + node.k8s.io/scenario: node-e2e-features + testgrid-dashboards: sig-node-amzn2, sig-node-aws, sig-node-containerd, sig-node-grid + testgrid-days-of-results: '90' + testgrid-tab-name: node-e2e-features-containerd-aws-amzn2 + +# {"cloud": "aws", "cri": "containerd", "distro": "al2023", "scenario": "node-e2e-features"} +- name: ci-kubernetes-node-e2e-features-containerd-aws-al2023 + cron: '23 8-23/12 * * *' + labels: + preset-e2e-containerd-ec2: "true" + decorate: true + cluster: eks-prow-build-cluster + extra_refs: + - org: kubernetes-sigs + repo: provider-aws-test-infra + base_ref: main + path_alias: sigs.k8s.io/provider-aws-test-infra + - org: kubernetes + repo: kubernetes + base_ref: master + path_alias: k8s.io/kubernetes + spec: + serviceAccountName: node-e2e-tests + containers: + - command: + - runner.sh + args: + - hack/make-rules/test-e2e-node.sh + env: + - name: TEST_ARGS + value: '--container-runtime-process-name=/usr/bin/containerd --container-runtime-pid-file= --kubelet-flags="--runtime-cgroups=/system.slice/containerd.service" --extra-log="{"name": "containerd.log", "journalctl": ["-u", "containerd*"]}"' + - name: IMAGE_CONFIG_FILE + value: 'al2023.yaml' + - name: SKIP + value: '\[Flaky\]|\[Serial\]' + - name: FOCUS + value: '\[NodeFeature:.+\]|\[NodeFeature\]' + image: gcr.io/k8s-staging-test-infra/kubekins-e2e:v20230616-e730b60769-master + imagePullPolicy: Always + resources: + requests: + cpu: 4 + memory: 6Gi + limits: + cpu: 4 + memory: 6Gi + annotations: + node.k8s.io/cloud: aws + node.k8s.io/cri: containerd + node.k8s.io/distro: al2023 + node.k8s.io/scenario: node-e2e-features + testgrid-dashboards: sig-node-al2023, sig-node-aws, sig-node-containerd, sig-node-grid + testgrid-days-of-results: '90' + testgrid-tab-name: node-e2e-features-containerd-aws-al2023 + +# {"cloud": "aws", "cri": "containerd", "distro": "al2023-arm64", "scenario": "node-e2e-features"} +- name: ci-kubernetes-node-e2e-features-containerd-aws-al2023-arm64 + cron: '25 0-23/12 * * *' + labels: + preset-e2e-containerd-ec2: "true" + decorate: true + cluster: eks-prow-build-cluster + extra_refs: + - org: kubernetes-sigs + repo: provider-aws-test-infra + base_ref: main + path_alias: sigs.k8s.io/provider-aws-test-infra + - org: kubernetes + repo: kubernetes + base_ref: master + path_alias: k8s.io/kubernetes + spec: + serviceAccountName: node-e2e-tests + containers: + - command: + - runner.sh + args: + - hack/make-rules/test-e2e-node.sh + env: + - name: TEST_ARGS + value: '--container-runtime-process-name=/usr/bin/containerd --container-runtime-pid-file= --kubelet-flags="--runtime-cgroups=/system.slice/containerd.service" --extra-log="{"name": "containerd.log", "journalctl": ["-u", "containerd*"]}"' + - name: IMAGE_CONFIG_FILE + value: 'al2023-arm64.yaml' + - name: SKIP + value: '\[Flaky\]|\[Serial\]' + - name: FOCUS + value: '\[NodeFeature:.+\]|\[NodeFeature\]' + - name: USE_DOCKERIZED_BUILD + value: 'true' + - name: TARGET_BUILD_ARCH + value: 'linux/arm64' + image: gcr.io/k8s-staging-test-infra/kubekins-e2e:v20230616-e730b60769-master + imagePullPolicy: Always + resources: + requests: + cpu: 4 + memory: 6Gi + limits: + cpu: 4 + memory: 6Gi + annotations: + node.k8s.io/cloud: aws + node.k8s.io/cri: containerd + node.k8s.io/distro: al2023-arm64 + node.k8s.io/scenario: node-e2e-features + testgrid-dashboards: sig-node-al2023-, sig-node-aws, sig-node-containerd, sig-node-grid + testgrid-days-of-results: '90' + testgrid-tab-name: node-e2e-features-containerd-aws-al2023-arm64 + +# {"cloud": "aws", "cri": "containerd", "distro": "u2204", "scenario": "node-e2e-features"} +- name: ci-kubernetes-node-e2e-features-containerd-aws-u2204 + cron: '24 7-23/12 * * *' + labels: + preset-e2e-containerd-ec2: "true" + decorate: true + cluster: eks-prow-build-cluster + extra_refs: + - org: kubernetes-sigs + repo: provider-aws-test-infra + base_ref: main + path_alias: sigs.k8s.io/provider-aws-test-infra + - org: kubernetes + repo: kubernetes + base_ref: master + path_alias: k8s.io/kubernetes + spec: + serviceAccountName: node-e2e-tests + containers: + - command: + - runner.sh + args: + - hack/make-rules/test-e2e-node.sh + env: + - name: TEST_ARGS + value: '--container-runtime-process-name=/usr/bin/containerd --container-runtime-pid-file= --kubelet-flags="--runtime-cgroups=/system.slice/containerd.service" --extra-log="{"name": "containerd.log", "journalctl": ["-u", "containerd*"]}"' + - name: IMAGE_CONFIG_FILE + value: 'ubuntu2204.yaml' + - name: SKIP + value: '\[Flaky\]|\[Serial\]' + - name: FOCUS + value: '\[NodeFeature:.+\]|\[NodeFeature\]' + image: gcr.io/k8s-staging-test-infra/kubekins-e2e:v20230616-e730b60769-master + imagePullPolicy: Always + resources: + requests: + cpu: 4 + memory: 6Gi + limits: + cpu: 4 + memory: 6Gi + annotations: + node.k8s.io/cloud: aws + node.k8s.io/cri: containerd + node.k8s.io/distro: u2204 + node.k8s.io/scenario: node-e2e-features + testgrid-dashboards: sig-node-aws, sig-node-containerd, sig-node-grid, sig-node-u2204 + testgrid-days-of-results: '90' + testgrid-tab-name: node-e2e-features-containerd-aws-u2204 + +# {"cloud": "aws", "cri": "containerd", "distro": "u2204-arm64", "scenario": "node-e2e-features"} +- name: ci-kubernetes-node-e2e-features-containerd-aws-u2204-arm64 + cron: '24 1-23/12 * * *' + labels: + preset-e2e-containerd-ec2: "true" + decorate: true + cluster: eks-prow-build-cluster + extra_refs: + - org: kubernetes-sigs + repo: provider-aws-test-infra + base_ref: main + path_alias: sigs.k8s.io/provider-aws-test-infra + - org: kubernetes + repo: kubernetes + base_ref: master + path_alias: k8s.io/kubernetes + spec: + serviceAccountName: node-e2e-tests + containers: + - command: + - runner.sh + args: + - hack/make-rules/test-e2e-node.sh + env: + - name: TEST_ARGS + value: '--container-runtime-process-name=/usr/bin/containerd --container-runtime-pid-file= --kubelet-flags="--runtime-cgroups=/system.slice/containerd.service" --extra-log="{"name": "containerd.log", "journalctl": ["-u", "containerd*"]}"' + - name: IMAGE_CONFIG_FILE + value: 'ubuntu2204-arm64.yaml' + - name: SKIP + value: '\[Flaky\]|\[Serial\]' + - name: FOCUS + value: '\[NodeFeature:.+\]|\[NodeFeature\]' + - name: USE_DOCKERIZED_BUILD + value: 'true' + - name: TARGET_BUILD_ARCH + value: 'linux/arm64' + image: gcr.io/k8s-staging-test-infra/kubekins-e2e:v20230616-e730b60769-master + imagePullPolicy: Always + resources: + requests: + cpu: 4 + memory: 6Gi + limits: + cpu: 4 + memory: 6Gi + annotations: + node.k8s.io/cloud: aws + node.k8s.io/cri: containerd + node.k8s.io/distro: u2204-arm64 + node.k8s.io/scenario: node-e2e-features + testgrid-dashboards: sig-node-aws, sig-node-containerd, sig-node-grid, sig-node-u2204- + testgrid-days-of-results: '90' + testgrid-tab-name: node-e2e-features-containerd-aws-u2204-arm64 + +# {"cloud": "gce", "cri": "containerd", "distro": "cos", "scenario": "node-e2e-features"} +- name: ci-kubernetes-node-e2e-features-containerd-gce-cos + cron: '40 9-23/12 * * *' + labels: + preset-service-account: "true" + preset-k8s-ssh: "true" + decorate: true + cluster: k8s-infra-prow-build + 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: + - command: + - runner.sh + args: + - kubetest2 + - noop + - --test=node + - --gcp-zone=us-west1-b + - --parallelism=8 + - --focus-regex=$FOCUS + - --skip-regex=$SKIP + - --test-args=$TEST_ARGS + - --image-config-file=$IMAGE_CONFIG_FILE + env: + - name: TEST_ARGS + value: '--container-runtime-process-name=/usr/bin/containerd --container-runtime-pid-file= --kubelet-flags="--runtime-cgroups=/system.slice/containerd.service" --extra-log="{"name": "containerd.log", "journalctl": ["-u", "containerd*"]}"' + - name: IMAGE_CONFIG_FILE + value: '../test-infra/jobs/e2e_node/containerd/image-config.yaml' + - name: SKIP + value: '\[Flaky\]|\[Serial\]' + - name: FOCUS + value: '\[NodeFeature:.+\]|\[NodeFeature\]' + image: gcr.io/k8s-staging-test-infra/kubekins-e2e:v20230616-e730b60769-master + imagePullPolicy: Always + resources: + requests: + cpu: 4 + memory: 6Gi + limits: + cpu: 4 + memory: 6Gi + annotations: + node.k8s.io/cloud: gce + node.k8s.io/cri: containerd + node.k8s.io/distro: cos + node.k8s.io/scenario: node-e2e-features + testgrid-dashboards: sig-node-containerd, sig-node-cos, sig-node-gce, sig-node-grid + testgrid-days-of-results: '90' + testgrid-tab-name: node-e2e-features-containerd-gce-cos + +# {"cloud": "gce", "cri": "containerd", "distro": "u2204-gke", "scenario": "node-e2e-features"} +- name: ci-kubernetes-node-e2e-features-containerd-gce-u2204-gke + cron: '8 2-23/12 * * *' + labels: + preset-service-account: "true" + preset-k8s-ssh: "true" + decorate: true + cluster: k8s-infra-prow-build + 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: + - command: + - runner.sh + args: + - kubetest2 + - noop + - --test=node + - --gcp-zone=us-west1-b + - --parallelism=8 + - --focus-regex=$FOCUS + - --skip-regex=$SKIP + - --test-args=$TEST_ARGS + - --image-config-file=$IMAGE_CONFIG_FILE + env: + - name: TEST_ARGS + value: '--container-runtime-process-name=/usr/bin/containerd --container-runtime-pid-file= --kubelet-flags="--runtime-cgroups=/system.slice/containerd.service" --extra-log="{"name": "containerd.log", "journalctl": ["-u", "containerd*"]}"' + - name: IMAGE_CONFIG_FILE + value: '../test-infra/jobs/e2e_node/containerd/image-config-ubuntu2204.yaml' + - name: SKIP + value: '\[Flaky\]|\[Serial\]' + - name: FOCUS + value: '\[NodeFeature:.+\]|\[NodeFeature\]' + image: gcr.io/k8s-staging-test-infra/kubekins-e2e:v20230616-e730b60769-master + imagePullPolicy: Always + resources: + requests: + cpu: 4 + memory: 6Gi + limits: + cpu: 4 + memory: 6Gi + annotations: + node.k8s.io/cloud: gce + node.k8s.io/cri: containerd + node.k8s.io/distro: u2204-gke + node.k8s.io/scenario: node-e2e-features + testgrid-dashboards: sig-node-containerd, sig-node-gce, sig-node-grid, sig-node-u2204-gke + testgrid-days-of-results: '90' + testgrid-tab-name: node-e2e-features-containerd-gce-u2204-gke + +# {"cloud": "gce", "cri": "containerd", "distro": "u2204-gke-arm64", "scenario": "node-e2e-features"} +- name: ci-kubernetes-node-e2e-features-containerd-gce-u2204-gke-arm64 + cron: '54 9-23/12 * * *' + labels: + preset-service-account: "true" + preset-k8s-ssh: "true" + decorate: true + cluster: k8s-infra-prow-build + 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: + - command: + - runner.sh + args: + - kubetest2 + - noop + - --test=node + - --gcp-zone=us-west1-b + - --parallelism=8 + - --focus-regex=$FOCUS + - --skip-regex=$SKIP + - --test-args=$TEST_ARGS + - --image-config-file=$IMAGE_CONFIG_FILE + env: + - name: TEST_ARGS + value: '--container-runtime-process-name=/usr/bin/containerd --container-runtime-pid-file= --kubelet-flags="--runtime-cgroups=/system.slice/containerd.service" --extra-log="{"name": "containerd.log", "journalctl": ["-u", "containerd*"]}"' + - name: IMAGE_CONFIG_FILE + value: '../test-infra/jobs/e2e_node/containerd/image-config-ubuntu2204-gke-arm64.yaml' + - name: SKIP + value: '\[Flaky\]|\[Serial\]' + - name: FOCUS + value: '\[NodeFeature:.+\]|\[NodeFeature\]' + - name: USE_DOCKERIZED_BUILD + value: 'true' + - name: TARGET_BUILD_ARCH + value: 'linux/arm64' + image: gcr.io/k8s-staging-test-infra/kubekins-e2e:v20230616-e730b60769-master + imagePullPolicy: Always + resources: + requests: + cpu: 4 + memory: 6Gi + limits: + cpu: 4 + memory: 6Gi + annotations: + node.k8s.io/cloud: gce + node.k8s.io/cri: containerd + node.k8s.io/distro: u2204-gke-arm64 + node.k8s.io/scenario: node-e2e-features + testgrid-dashboards: sig-node-containerd, sig-node-gce, sig-node-grid, sig-node-u2204-gke- + testgrid-days-of-results: '90' + testgrid-tab-name: node-e2e-features-containerd-gce-u2204-gke-arm64 diff --git a/config/jobs/kubernetes/sig-node/templates/periodic.yaml.jinja b/config/jobs/kubernetes/sig-node/templates/periodic.yaml.jinja new file mode 100644 index 0000000000000..e556a26125e1f --- /dev/null +++ b/config/jobs/kubernetes/sig-node/templates/periodic.yaml.jinja @@ -0,0 +1,69 @@ + +- name: {{job_name}} + cron: '{{cron}}' + labels: + {%- if cloud == "aws" %} + preset-e2e-containerd-ec2: "true" + {%- else %} + preset-service-account: "true" + preset-k8s-ssh: "true" + {%- endif %} + decorate: true + {%- if cloud == "aws" %} + cluster: eks-prow-build-cluster + {%- elif cloud == "gce" %} + cluster: k8s-infra-prow-build + {%- endif %} + extra_refs: + {%- if cloud == "aws" %} + - org: kubernetes-sigs + repo: provider-aws-test-infra + base_ref: main + path_alias: sigs.k8s.io/provider-aws-test-infra + {%- endif %} + - org: kubernetes + repo: kubernetes + base_ref: master + path_alias: k8s.io/kubernetes + {%- if cloud == "gce" %} + - org: kubernetes + repo: test-infra + base_ref: master + path_alias: k8s.io/test-infra + {%- endif %} + spec: + {%- if cloud == "aws" %} + serviceAccountName: node-e2e-tests + {%- endif %} + containers: + - command: + - runner.sh + {%- if cloud == "aws" %} + args: + - hack/make-rules/test-e2e-node.sh + {%- elif cloud == "gce" %} + args: + - kubetest2 + - noop + - --test=node + - --gcp-zone=us-west1-b + - --parallelism=8 + - --focus-regex=$FOCUS + - --skip-regex=$SKIP + - --test-args=$TEST_ARGS + - --image-config-file=$IMAGE_CONFIG_FILE + {%- endif %} + env: + {%- for key, val in env.items() %} + - name: {{ key }} + value: '{{ val }}' + {%- endfor %} + image: {{image}} + imagePullPolicy: Always + resources: + requests: + cpu: 4 + memory: 6Gi + limits: + cpu: 4 + memory: 6Gi