DNM/TEST: Test udn 10x serial#31227
Conversation
UDN tests are known to be heavy and these tests will fail on the first dropped connection which seems to happen randomly, albeit rarely. test: allow single timeout in UDN KAPI reachability check Hardens e2e test against transient networking blips while preserving strict failure detection for real regressions. Signed-off-by: Jamo Luhrsen <jluhrsen@gmail.com>
This is a data collection PR to measure failure rates on RHCOS10+Azure. Wraps the 6 UDN isolation test flavors (3 API types × 2 topologies) in a 10-iteration loop and assigns them to a custom test suite. Total tests: 6 flavors × 10 iterations = 60 test cases Expected runtime: ~90-120 minutes (running serially) Custom suite tag: [Suite:openshift/udn-test] This prevents these tests from being included in the default openshift/conformance/parallel or openshift/conformance/serial suites. To run ONLY these 60 tests: openshift-tests run openshift/udn-test NOT FOR MERGE - data collection only
When [Iteration:] tests are detected in the test suite, this change: 1. Filters to ONLY run tests containing [Iteration:] tag 2. Clears all other test buckets (kube, openshift, network, etc.) 3. Runs the iteration tests with parallelism=1 (serially) This allows the 60 UDN isolation iteration tests to run alone without interference from other tests, and ensures they run one at a time for accurate failure rate data collection on RHCOS10+Azure. Based on the pattern from commit 3854d32 which set parallelism=2 for Netpol tests. NOT FOR MERGE - data collection only
|
Pipeline controller notification For optional jobs, comment This repository is configured in: automatic mode |
|
/hold |
|
Note Reviews pausedIt looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the Use the following commands to manage reviews:
Use the checkboxes below for quick actions:
WalkthroughAdds an iteration-only test mode to the runner and executes only iteration-tagged tests; converts the network isolation DescribeTable to 10 serial iterations and replaces the single KAPI check with a 30s deadline-bounded curl probe loop plus a curl-timeout helper. ChangesIteration Test Framework and Network Isolation Verification
🎯 4 (Complex) | ⏱️ ~45 minutes 🚥 Pre-merge checks | ✅ 4 | ❌ 11❌ Failed checks (11 inconclusive)
✅ Passed checks (4 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
|
[APPROVALNOTIFIER] This PR is NOT APPROVED This pull-request has been approved by: jluhrsen The full list of commands accepted by this bot can be found here. DetailsNeeds approval from an approver in each of these files:Approvers can indicate their approval by writing |
|
/payload-job periodic-ci-openshift-release-main-nightly-4.22-e2e-azure-ovn-rhcos10-techpreview |
|
@jluhrsen: trigger 1 job(s) for the /payload-(with-prs|job|aggregate|job-with-prs|aggregate-with-prs) command
See details on https://pr-payload-tests.ci.openshift.org/runs/ci/d2296340-5a4f-11f1-92e4-8fbd9a6a204f-0 |
There was a problem hiding this comment.
Actionable comments posted: 1
🧹 Nitpick comments (1)
test/extended/networking/network_segmentation.go (1)
450-453: 💤 Low valueRedundant
consecutiveFailurescheck.Given
maxTimeouts = 1, thetimeoutCountassertion at line 450-451 will always fail beforeconsecutiveFailurescan exceed 1. The consecutive failures check cannot independently trigger since any second timeout would fail thetimeoutCount <= maxTimeoutscheck first.Consider removing the redundant assertion or increasing
maxTimeoutsif the intent is to allow multiple non-consecutive timeouts while failing on consecutive ones.🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@test/extended/networking/network_segmentation.go` around lines 450 - 453, The test contains a redundant assertion: with maxTimeouts set to 1 the Expect(timeoutCount).To(BeNumerically("<=", maxTimeouts)) check will already prevent consecutiveFailures from exceeding 1, so remove the duplicate Expect(consecutiveFailures)... assertion (the Expect referencing consecutiveFailures) in network_segmentation.go, leaving only the timeoutCount assertion; alternatively, if you intended to allow multiple non-consecutive timeouts while failing on consecutive KAPI failures, increase maxTimeouts accordingly and keep the consecutiveFailures check.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@test/extended/networking/network_segmentation.go`:
- Around line 1325-1328: The current isCurlExitCode28(err error) implementation
incorrectly searches for the literal string "rc: 28" in err.Error(); instead
change it to perform a typed exit-code check by using errors.As (or errors.Is)
to cast err to the exec exit-error type (e.g., uexec.CodeExitError or the type
that wraps the exit code returned by RunKubectl) and then check the exit code
(Code or ExitStatus() == 28) so it reliably detects curl timeouts produced by
RunKubectl; update isCurlExitCode28 to use errors.As on err and compare the exit
code numerically rather than using strings.Contains.
---
Nitpick comments:
In `@test/extended/networking/network_segmentation.go`:
- Around line 450-453: The test contains a redundant assertion: with maxTimeouts
set to 1 the Expect(timeoutCount).To(BeNumerically("<=", maxTimeouts)) check
will already prevent consecutiveFailures from exceeding 1, so remove the
duplicate Expect(consecutiveFailures)... assertion (the Expect referencing
consecutiveFailures) in network_segmentation.go, leaving only the timeoutCount
assertion; alternatively, if you intended to allow multiple non-consecutive
timeouts while failing on consecutive KAPI failures, increase maxTimeouts
accordingly and keep the consecutiveFailures check.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Repository YAML (base), Central YAML (inherited)
Review profile: CHILL
Plan: Enterprise
Run ID: 35b21bc3-9ec5-4b28-9e49-d5d49ed28fc0
📒 Files selected for processing (2)
pkg/test/ginkgo/cmd_runsuite.gotest/extended/networking/network_segmentation.go
| // isCurlExitCode28 checks if the error from RunKubectl indicates a curl timeout (exit code 28). | ||
| func isCurlExitCode28(err error) bool { | ||
| return err != nil && strings.Contains(err.Error(), "rc: 28") | ||
| } |
There was a problem hiding this comment.
🧩 Analysis chain
🌐 Web query:
kubectl exec command exit code error message format
💡 Result:
When using kubectl exec to run a command inside a container, the exit code behavior is as follows: Exit Code Passing: Modern versions of kubectl pass the exit code of the command executed inside the container directly to the kubectl process itself. If the command inside the container succeeds, kubectl exits with 0. If the command fails, kubectl exits with the same non-zero exit code returned by that command [1]. Error Message Format: If the execution fails due to infrastructure-level issues (such as the container not being found, the pod not being in a running state, or communication failures with the Kubelet), kubectl will output an error message to stderr. These messages generally follow the format: error: [descriptive message about the failure] Examples of common infrastructure errors include: - error: unable to upgrade connection: container not found - error: cannot exec into a container in a pod; current phase is Succeeded/Failed [2] - error: error executing remote command:... [1] If you encounter issues where the exit code is not behaving as expected (e.g., getting a generic 1 instead of the specific command code), ensure you are using a recent version of kubectl, as this behavior was improved in earlier versions to better propagate codes [1]. If the container command fails for environmental reasons (e.g., shell built-in misuse, command not found), the container process itself will return the standard shell exit codes (e.g., 127 for command not found, 126 for permission denied) [3].
Citations:
- 1: kubectl exec doesn't return command exit code kubernetes/kubernetes#26424
- 2: https://github.com/kubernetes/kubectl/blob/master/pkg/cmd/exec/exec.go
- 3: https://medium.com/@muppedaanvesh/a-hands-on-guide-to-kubernetes-exit-codes-simulate-and-fix-%EF%B8%8F-f2ad57d3cdca
🏁 Script executed:
#!/bin/bash
set -euo pipefail
# Show the helper and its immediate context
sed -n '1280,1360p' test/extended/networking/network_segmentation.go
# Locate RunKubectl / kubectl execution helper(s)
rg -n "RunKubectl|kubectl exec|exec into|error executing|rc: 28|curl.*28" test/extended/networking/network_segmentation.go test/extended/networking -S || true
# Search the wider repo for RunKubectl implementation
rg -n "func RunKubectl|RunKubectl\\(" -S . || trueRepository: openshift/origin
Length of output: 22481
🏁 Script executed:
#!/bin/bash
set -euo pipefail
# Inspect kubectl exec helper error formatting (look for "rc: ")
sed -n '140,260p' vendor/k8s.io/kubernetes/test/e2e/framework/kubectl/builder.go
rg -n "rc: " vendor/k8s.io/kubernetes/test/e2e/framework/kubectl/builder.go vendor/k8s.io/kubernetes/test/e2e/framework/kubectl -S
# Specifically locate RunKubectl() implementation and how it wraps command exit codes
rg -n "func RunKubectl\\(" -n vendor/k8s.io/kubernetes/test/e2e/framework/kubectl/builder.go
sed -n '160,230p' vendor/k8s.io/kubernetes/test/e2e/framework/kubectl/builder.go
# Also check RunKubectlWithFullOutput if it exists in this file for error composition
rg -n "func RunKubectlWithFullOutput\\(" vendor/k8s.io/kubernetes/test/e2e/framework/kubectl/builder.go
sed -n '230,330p' vendor/k8s.io/kubernetes/test/e2e/framework/kubectl/builder.goRepository: openshift/origin
Length of output: 4949
🏁 Script executed:
#!/bin/bash
set -euo pipefail
# Find CodeExitError definition
rg -n "type CodeExitError|CodeExitError" vendor/k8s.io/kubernetes/test/e2e/framework -S
# Also search the whole vendor tree if not found
rg -n "type CodeExitError|CodeExitError" vendor -S
# Print the definition file section
# (Use `fd` to locate the file, then `sed` around matches)
file="$(rg -l "type CodeExitError" vendor | head -n 1 || true)"
echo "FOUND_FILE=$file"
if [ -n "${file}" ]; then
sed -n '1,220p' "$file"
fiRepository: openshift/origin
Length of output: 4109
🏁 Script executed:
#!/bin/bash
set -euo pipefail
# 1) Show where isCurlExitCode28 is referenced/used
rg -n "isCurlExitCode28\\(" test/extended/networking/network_segmentation.go
rg -n "curl.*28|rc: 28|exit code 28" test/extended/networking/network_segmentation.go
# 2) Inspect helper/curl execution path around connectToServer usage (likely where rc is printed)
rg -n "connectToServer\\(" test/extended/networking/network_segmentation.go
# Print a window around connectToServer definition and its curl command
# (find the definition line number first)
conn_line="$(rg -n "func connectToServer\\(" test/extended/networking/network_segmentation.go | cut -d: -f1 | head -n1 || true)"
if [ -n "$conn_line" ]; then
start=$((conn_line-80)); end=$((conn_line+140));
sed -n "${start},${end}p" test/extended/networking/network_segmentation.go
fi
# 3) Inspect network_segmentation.go around the helper itself
sed -n '1288,1345p' test/extended/networking/network_segmentation.go
# 4) Inspect kubectl builder Exec() around rc logging + returned error formatting to see what err.Error() contains
sed -n '90,190p' vendor/k8s.io/kubernetes/test/e2e/framework/kubectl/builder.go
# 5) Inspect exec.ExitError/Error() behavior indirectly by dumping its Error() string construction location (os/exec)
# can't read stdlib here, but we can at least confirm what kubectl builder includes in returned error
sed -n '220,290p' vendor/k8s.io/utils/exec/exec.goRepository: openshift/origin
Length of output: 14747
🏁 Script executed:
#!/bin/bash
set -euo pipefail
# View call site around line 444
sed -n '410,470p' test/extended/networking/network_segmentation.go
# See if isCurlExitCode28 is only used here
rg -n "isCurlExitCode28\\(" -S .
# Search for other helpers checking for "rc: 28" or "rc:" patterns
rg -n "rc: [0-9]+" test/extended/networking -S
rg -n "strings\\.Contains\\(.*rc:" -S test/extended/networking vendor/k8s.io/kubernetes/test/e2e/framework || true
# Search for guidance: usage of uexec.CodeExitError / ExitStatus() elsewhere
rg -n "ExitStatus\\(\\)|CodeExitError" test/extended/networking -SRepository: openshift/origin
Length of output: 2582
🏁 Script executed:
#!/bin/bash
set -euo pipefail
# Search for other uses of the literal "rc: " substring across the repo
rg -n "\"rc: \"|rc: [0-9]+|strings\\.Contains\\(.*rc:" -S .
# Inspect kube/k8s exec error helpers in vendor/k8s.io/utils/exec/exec.go (the uexec.CodeExitError used by kubectl builder)
sed -n '200,320p' vendor/k8s.io/utils/exec/exec.go
# Inspect the client-go exec error wrapper too (in case it differs)
sed -n '1,120p' vendor/k8s.io/client-go/util/exec/exec.goRepository: openshift/origin
Length of output: 2924
🏁 Script executed:
#!/bin/bash
set -euo pipefail
rg -n "\"exit status\"|exit status [0-9]+|strings\\.Contains\\(.*exit status" -S .Repository: openshift/origin
Length of output: 1275
🏁 Script executed:
#!/bin/bash
set -euo pipefail
rg -n "strings\\.Contains\\(.*rc:|rc: [0-9]+\"\\)|\"rc: [0-9]+\"|rc: [0-9]+" -S .
rg -n "strings\\.Contains\\(.*exit status|exit status [0-9]+" -S test vendor . || true
rg -n "framework\\.Logf\\(\"rc: %d\"|rc: %d" -S vendor test .Repository: openshift/origin
Length of output: 2067
Fix curl timeout detection in isCurlExitCode28 (stop parsing "rc: 28" from err.Error()).
isCurlExitCode28 relies on strings.Contains(err.Error(), "rc: 28"), but RunKubectl computes rc and logs it (framework.Logf("rc: %d", rc)) while the returned error’s Error() string is built from *exec.ExitError (via uexec.CodeExitError{Err: fmt.Errorf(... error:\n%v ...), Code: rc}), so the literal rc: 28 may not appear in err.Error(). Use a typed exit-code check instead (e.g., errors.As to uexec.CodeExitError/ExitStatus() == 28).
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@test/extended/networking/network_segmentation.go` around lines 1325 - 1328,
The current isCurlExitCode28(err error) implementation incorrectly searches for
the literal string "rc: 28" in err.Error(); instead change it to perform a typed
exit-code check by using errors.As (or errors.Is) to cast err to the exec
exit-error type (e.g., uexec.CodeExitError or the type that wraps the exit code
returned by RunKubectl) and then check the exit code (Code or ExitStatus() ==
28) so it reliably detects curl timeouts produced by RunKubectl; update
isCurlExitCode28 to use errors.As on err and compare the exit code numerically
rather than using strings.Contains.
fb6b363 to
90daa51
Compare
|
Actionable comments posted: 0 |
|
/payload-job periodic-ci-openshift-release-main-nightly-4.22-e2e-azure-ovn-rhcos10-techpreview |
|
@jluhrsen: trigger 1 job(s) for the /payload-(with-prs|job|aggregate|job-with-prs|aggregate-with-prs) command
See details on https://pr-payload-tests.ci.openshift.org/runs/ci/fab417c0-5ad0-11f1-98a0-950b722fd77b-0 |
|
/payload-job periodic-ci-openshift-release-main-nightly-4.22-e2e-azure-ovn-rhcos10-techpreview |
|
@jluhrsen: trigger 1 job(s) for the /payload-(with-prs|job|aggregate|job-with-prs|aggregate-with-prs) command
See details on https://pr-payload-tests.ci.openshift.org/runs/ci/97168810-5b7a-11f1-913f-4d86d3968c84-0 |
|
/payload-job periodic-ci-openshift-release-main-nightly-4.22-e2e-azure-ovn-rhcos10-techpreview |
|
@jluhrsen: trigger 1 job(s) for the /payload-(with-prs|job|aggregate|job-with-prs|aggregate-with-prs) command
See details on https://pr-payload-tests.ci.openshift.org/runs/ci/7dbf7e10-5b7c-11f1-8421-6ee34404d132-0 |
|
/payload-job periodic-ci-openshift-release-main-nightly-4.22-e2e-azure-ovn-rhcos10-techpreview |
|
@jluhrsen: trigger 1 job(s) for the /payload-(with-prs|job|aggregate|job-with-prs|aggregate-with-prs) command
See details on https://pr-payload-tests.ci.openshift.org/runs/ci/2ad5fd30-5b7e-11f1-9071-a63a6ef2038f-0 |
|
/payload-job periodic-ci-openshift-release-main-nightly-4.22-e2e-azure-ovn-rhcos10-techpreview |
|
@jluhrsen: trigger 1 job(s) for the /payload-(with-prs|job|aggregate|job-with-prs|aggregate-with-prs) command
See details on https://pr-payload-tests.ci.openshift.org/runs/ci/d7d4fcb0-5b7f-11f1-84cc-fdf947056b04-0 |
|
/payload-job periodic-ci-openshift-release-main-nightly-4.22-e2e-azure-ovn-rhcos10-techpreview |
|
@jluhrsen: trigger 1 job(s) for the /payload-(with-prs|job|aggregate|job-with-prs|aggregate-with-prs) command
See details on https://pr-payload-tests.ci.openshift.org/runs/ci/8b6ad820-5b81-11f1-949a-8689df14f022-0 |
90daa51 to
002fdeb
Compare
|
Scheduling required tests: |
|
/payload-job periodic-ci-openshift-release-main-nightly-4.22-e2e-azure-ovn-rhcos10-techpreview |
|
@jluhrsen: trigger 1 job(s) for the /payload-(with-prs|job|aggregate|job-with-prs|aggregate-with-prs) command
See details on https://pr-payload-tests.ci.openshift.org/runs/ci/371e3940-5b8d-11f1-9cff-5332343906cb-0 |
|
/payload-aggregate periodic-ci-openshift-release-main-nightly-4.22-e2e-azure-ovn-rhcos10-techpreview 10 |
002fdeb to
ad27e78
Compare
|
@jluhrsen: trigger 1 job(s) for the /payload-(with-prs|job|aggregate|job-with-prs|aggregate-with-prs) command
See details on https://pr-payload-tests.ci.openshift.org/runs/ci/16f9ef20-5b91-11f1-9476-e7c07e6819af-0 |
|
Scheduling required tests: |
|
/payload-aggregate periodic-ci-openshift-release-main-nightly-4.22-e2e-azure-ovn-rhcos10-techpreview 10 |
|
@jluhrsen: trigger 1 job(s) for the /payload-(with-prs|job|aggregate|job-with-prs|aggregate-with-prs) command
See details on https://pr-payload-tests.ci.openshift.org/runs/ci/44e4a450-5bb1-11f1-939e-4bd67f8dde2d-0 |
|
/payload-aggregate periodic-ci-openshift-release-main-nightly-4.22-e2e-azure-ovn-rhcos10-techpreview 10 |
ad27e78 to
d4b5b3c
Compare
|
@jluhrsen: trigger 1 job(s) for the /payload-(with-prs|job|aggregate|job-with-prs|aggregate-with-prs) command
See details on https://pr-payload-tests.ci.openshift.org/runs/ci/c5185040-5bb1-11f1-9f8e-80c7044c1556-0 |
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@pkg/test/ginkgo/cmd_runsuite.go`:
- Around line 688-693: The UDN iteration bucket is being executed with
parallelism=15 (q.Execute called with 15) which makes iteration tests run
concurrently; change the call to execute serially by passing parallelism=1
(invoke q.Execute(testCtx, udnIterationTestsCopy, 1, testOutputConfig, abortFn))
so udnIterationTests/udnIterationTestsCopy run one-at-a-time and preserve the
intended isolation for [Iteration:*] cases.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Repository YAML (base), Central YAML (inherited)
Review profile: CHILL
Plan: Enterprise
Run ID: f27d1f99-04f3-4c28-85e3-3eb5708822dd
📒 Files selected for processing (2)
pkg/test/ginkgo/cmd_runsuite.gotest/extended/networking/network_segmentation.go
| // TEST PR: If we're in UDN iteration test mode, run ONLY those with parallelism=15 | ||
| if len(udnIterationTests) > 0 { | ||
| udnIterationTestsCopy := copyTests(udnIterationTests) | ||
| udnIterationIntervalID, udnIterationStartTime := recordTestBucketInterval(monitorEventRecorder, "UDNIteration") | ||
| logrus.Infof("TEST PR: Running %d UDN iteration tests with parallelism=15", len(udnIterationTestsCopy)) | ||
| q.Execute(testCtx, udnIterationTestsCopy, 15, testOutputConfig, abortFn) // parallelism=15 for data collection |
There was a problem hiding this comment.
Run the iteration bucket serially.
Line 693 forces 15-way concurrency, so the [Iteration:*] cases no longer execute serially. That changes the failure profile this PR is trying to measure and lets iterations interfere with each other on the same cluster.
♻️ Minimal fix
- logrus.Infof("TEST PR: Running %d UDN iteration tests with parallelism=15", len(udnIterationTestsCopy))
- q.Execute(testCtx, udnIterationTestsCopy, 15, testOutputConfig, abortFn) // parallelism=15 for data collection
+ logrus.Infof("TEST PR: Running %d UDN iteration tests serially", len(udnIterationTestsCopy))
+ q.Execute(testCtx, udnIterationTestsCopy, 1, testOutputConfig, abortFn)📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| // TEST PR: If we're in UDN iteration test mode, run ONLY those with parallelism=15 | |
| if len(udnIterationTests) > 0 { | |
| udnIterationTestsCopy := copyTests(udnIterationTests) | |
| udnIterationIntervalID, udnIterationStartTime := recordTestBucketInterval(monitorEventRecorder, "UDNIteration") | |
| logrus.Infof("TEST PR: Running %d UDN iteration tests with parallelism=15", len(udnIterationTestsCopy)) | |
| q.Execute(testCtx, udnIterationTestsCopy, 15, testOutputConfig, abortFn) // parallelism=15 for data collection | |
| // TEST PR: If we're in UDN iteration test mode, run ONLY those with parallelism=15 | |
| if len(udnIterationTests) > 0 { | |
| udnIterationTestsCopy := copyTests(udnIterationTests) | |
| udnIterationIntervalID, udnIterationStartTime := recordTestBucketInterval(monitorEventRecorder, "UDNIteration") | |
| logrus.Infof("TEST PR: Running %d UDN iteration tests serially", len(udnIterationTestsCopy)) | |
| q.Execute(testCtx, udnIterationTestsCopy, 1, testOutputConfig, abortFn) |
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@pkg/test/ginkgo/cmd_runsuite.go` around lines 688 - 693, The UDN iteration
bucket is being executed with parallelism=15 (q.Execute called with 15) which
makes iteration tests run concurrently; change the call to execute serially by
passing parallelism=1 (invoke q.Execute(testCtx, udnIterationTestsCopy, 1,
testOutputConfig, abortFn)) so udnIterationTests/udnIterationTestsCopy run
one-at-a-time and preserve the intended isolation for [Iteration:*] cases.
- Remove unused primaryTests assignment (not used in execution flow) - Remove non-idiomatic closing brace comment - Add clarifying comment about primaryTests not being needed
d4b5b3c to
6cd0c1a
Compare
|
/payload-aggregate periodic-ci-openshift-release-main-nightly-4.22-e2e-azure-ovn-rhcos10-techpreview 10 |
|
@jluhrsen: trigger 1 job(s) for the /payload-(with-prs|job|aggregate|job-with-prs|aggregate-with-prs) command
See details on https://pr-payload-tests.ci.openshift.org/runs/ci/8e3fde60-5bb3-11f1-9d7a-454c85301911-0 |
|
Scheduling required tests: |
|
@jluhrsen: The following test failed, say
Full PR test history. Your PR dashboard. DetailsInstructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here. |
|
Job Failure Risk Analysis for sha: 6cd0c1a
|
|
Job Failure Risk Analysis for sha: 6cd0c1a
Risk analysis has seen new tests most likely introduced by this PR. New Test Risks for sha: 6cd0c1a
New tests seen in this PR at sha: 6cd0c1a
|
2 similar comments
|
Job Failure Risk Analysis for sha: 6cd0c1a
Risk analysis has seen new tests most likely introduced by this PR. New Test Risks for sha: 6cd0c1a
New tests seen in this PR at sha: 6cd0c1a
|
|
Job Failure Risk Analysis for sha: 6cd0c1a
Risk analysis has seen new tests most likely introduced by this PR. New Test Risks for sha: 6cd0c1a
New tests seen in this PR at sha: 6cd0c1a
|
|
/payload-job periodic-ci-openshift-release-main-nightly-4.22-e2e-azure-ovn-rhcos10-techpreview |
|
@jluhrsen: trigger 1 job(s) for the /payload-(with-prs|job|aggregate|job-with-prs|aggregate-with-prs) command
See details on https://pr-payload-tests.ci.openshift.org/runs/ci/a80185b0-5be0-11f1-8a5d-0838e73385bb-0 |
Summary by CodeRabbit
New Features
Improvements