[net] Multi-arch tests with VMs with primary UDN interfaces#5417
Conversation
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: ASSERTIVE Plan: Pro Run ID: 📒 Files selected for processing (3)
🔗 Linked repositories identifiedCodeRabbit considers these linked repositories for cross-repo context during reviews:
📝 WalkthroughWalkthroughAdds ChangesMulti-arch UDN connectivity
Estimated code review effort: 2 (Simple) | ~10 minutes Possibly related PRs
Suggested labels: Suggested reviewers: 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
/verified |
|
Report bugs in Issues Welcome! 🎉This pull request will be automatically processed with the following features: 🔄 Automatic Actions
📋 Available CommandsPR Status Management
Review & Approval
Testing & Validation
Container Operations
Cherry-pick Operations
Branch Management
Custom Commands
Label Management
✅ Merge RequirementsThis PR will be automatically approved when the following conditions are met:
📊 Review ProcessApprovers and ReviewersApprovers:
Reviewers:
Available Labels
AI Features
Security Checks
💡 Tips
For more information, please refer to the project documentation or contact the maintainers. |
Test execution plan request detailsCRITICAL: You MUST post an inline review comment on the first changed line of the first file. As an expert software testing engineer, analyze all modified files in this PR and create a targeted test execution plan. Analysis Requirements:
Output rules: Your deliverable: Test Execution Plan
Use these formats:
Real test commands (MANDATORY when changes affect session/runtime code): When the affected code runs at session/collection time (conftest fixtures, pytest plugins,
Example output for a session-startup fix: Guidelines:
Hardware-Related Checks (SR-IOV, GPU, DPDK): When PR modifies fixtures for hardware-specific resources:
CRITICAL WORKFLOW COMPLETION RULES: When responding to this test execution plan request, you MUST follow these rules EXACTLY:
ABSOLUTE PROHIBITIONS (violating these creates empty/meaningless reviews):
Remember: The pull request review is visible to users. Additional comments are redundant noise. CRITICAL — Verification rules for smoke and gating decisions: |
|
Tip For best results, initiate chat on the files or code changes. 🧩 Analysis chain🏁 Script executed: #!/bin/bash
set -euo pipefail
repo="RedHatQE/openshift-virtualization-tests"
pr=5417
echo "== PR files =="
gh pr view "$pr" --repo "$repo" --json files,headRefName,baseRefName,title \
--jq '{title: .title, head: .headRefName, base: .baseRefName, files: [.files[].path]}'
echo
echo "== First changed file patch header =="
gh api "repos/$repo/pulls/$pr/files?per_page=100" \
--jq '.[0] | {filename, status, previous_filename, patch}'
echo
echo "== Unified diff names and hunks =="
gh pr diff "$pr" --repo "$repo" --name-only
echo
gh pr diff "$pr" --repo "$repo" | sed -n '1,260p'
echo
echo "== Repo status =="
git status --short
echo "HEAD: $(git rev-parse --short HEAD)"Length of output: 8878 🏁 Script executed: #!/bin/bash
set -euo pipefail
repo="RedHatQE/openshift-virtualization-tests"
pr=5417
echo "== Exact changed file metadata =="
gh api "repos/$repo/pulls/$pr/files?per_page=100" | jq -r '.[] | [.filename, .status, .additions, .deletions, .changes] | `@tsv`'
echo
echo "== First changed file and patch with line numbers context =="
nl -ba tests/network/libs/vm_factory.py | sed -n '1,120p'
echo
echo "== Outline: tests/network/libs/vm_factory.py =="
ast-grep outline tests/network/libs/vm_factory.py --view expanded || true
echo
echo "== Outline: tests/network/user_defined_network/conftest.py =="
ast-grep outline tests/network/user_defined_network/conftest.py --view expanded || true
echo
echo "== Outline: tests/network/user_defined_network/test_user_defined_network_multiarch.py =="
ast-grep outline tests/network/user_defined_network/test_user_defined_network_multiarch.py --view expanded || true
echo
echo "== Smoke-marked tests =="
rg -n --glob 'tests/**/*.py' '`@pytest`\.mark\.smoke' tests || true
echo
echo "== Gating-marked tests =="
rg -n --glob 'tests/**/*.py' '`@pytest`\.mark\.gating' tests || true
echo
echo "== Multiarch test file markers and surrounding context =="
sed -n '1,140p' tests/network/user_defined_network/test_user_defined_network_multiarch.py
echo
echo "== Conftest hierarchy under tests/network/user_defined_network =="
for f in tests/conftest.py tests/network/conftest.py tests/network/user_defined_network/conftest.py; do
if [[ -f "$f" ]]; then
echo "--- $f ---"
sed -n '1,220p' "$f"
fi
done
echo
echo "== Direct and transitive callers/usages of udn_vm in tests =="
rg -n '\budn_vm\s*\(' tests || true
echo
echo "== Direct usages of new fixtures =="
rg -n 'tcp_server_arm64|tcp_client_amd64|tcp_server_amd64|tcp_client_arm64|arm64_udn_vm|amd64_udn_vm' tests || true
echo
echo "== Existing user_defined_network tests =="
fd -t f . tests/network/user_defined_network | sort
echo
echo "== Existing tests in same directory with markers =="
rg -n '`@pytest`\.mark\.(smoke|gating|multiarch|single_nic|ipv4)' tests/network/user_defined_network || true
echo
echo "== PR files API with diff positions for first file if available =="
gh api "repos/$repo/pulls/$pr/files?per_page=100" --jq '.[0]'Length of output: 2882 🏁 Script executed: #!/bin/bash
set -u
repo="RedHatQE/openshift-virtualization-tests"
pr=5417
echo "== PR head SHA =="
gh pr view "$pr" --repo "$repo" --json headRefOid --jq '.headRefOid'
echo
echo "== tests/network/libs/vm_factory.py with line numbers =="
cat -n tests/network/libs/vm_factory.py | sed -n '1,120p'
echo
echo "== tests/network/user_defined_network/conftest.py with line numbers =="
cat -n tests/network/user_defined_network/conftest.py | sed -n '1,220p'
echo
echo "== tests/network/user_defined_network/test_user_defined_network_multiarch.py with line numbers =="
cat -n tests/network/user_defined_network/test_user_defined_network_multiarch.py | sed -n '1,140p'
echo
echo "== Smoke-marked test file paths =="
rg -l '`@pytest`\.mark\.smoke' tests || true
echo
echo "== Gating-marked test file paths =="
rg -l '`@pytest`\.mark\.gating' tests || true
echo
echo "== Marker context inside tests/network/user_defined_network =="
rg -n -C2 '`@pytest`\.mark\.(smoke|gating|multiarch|single_nic|ipv4|usefixtures)' tests/network/user_defined_network || true
echo
echo "== Parent conftest hierarchy content =="
for f in tests/conftest.py tests/network/conftest.py tests/network/user_defined_network/conftest.py; do
if [ -f "$f" ]; then
echo "--- $f ---"
cat -n "$f" | sed -n '1,240p'
fi
done
echo
echo "== Usages of tests.network.libs.vm_factory.udn_vm =="
rg -n '\budn_vm\s*\(' tests || true
echo
echo "== Usages of new multiarch fixtures =="
rg -n 'arm64_udn_vm|amd64_udn_vm|tcp_server_arm64|tcp_client_amd64|tcp_server_amd64|tcp_client_arm64' tests || true
echo
echo "== File list in tests/network/user_defined_network =="
fd -t f . tests/network/user_defined_network | sort
echo
echo "== Full first PR file JSON again =="
gh api "repos/$repo/pulls/$pr/files?per_page=100" --jq '.[0]'Length of output: 52536 🏁 Script executed: #!/bin/bash
set -euo pipefail
repo="RedHatQE/openshift-virtualization-tests"
pr=5417
echo "== test_user_defined_network.py relevant slices =="
cat -n tests/network/user_defined_network/test_user_defined_network.py | sed -n '1,220p'
echo
echo "== test_user_defined_network_passt.py relevant slices =="
cat -n tests/network/user_defined_network/test_user_defined_network_passt.py | sed -n '1,140p'
echo
echo "== ip_specification/conftest.py relevant slices =="
cat -n tests/network/user_defined_network/ip_specification/conftest.py | sed -n '1,120p'
echo
echo "== provider_migration/conftest.py udn_vm slice =="
cat -n tests/network/provider_migration/conftest.py | sed -n '280,330p'
echo
echo "== bgp conftest slices with udn_vm =="
cat -n tests/network/bgp/conftest.py | sed -n '200,240p'
echo
cat -n tests/network/bgp/evpn/conftest.py | sed -n '170,220p'Length of output: 20900 🏁 Script executed: #!/bin/bash
set -euo pipefail
echo "== Consumers of ip_specification conftest fixtures =="
rg -n 'vm_under_test|vm_for_connectivity_ref|client_server_tcp_connectivity_between_vms|ip_to_request' tests/network/user_defined_network/ip_specification || true
echo
echo "== Consumers of provider_migration local_cudn_vm fixture =="
rg -n 'local_cudn_vm|SOURCE_VM_NAME|cudn_namespace' tests/network/provider_migration || true
echo
echo "== Consumers of bgp fixtures =="
rg -n 'vm_cudn|tcp_server_cudn_vm|tcp_client_external_network' tests/network/bgp || true
echo
echo "== Consumers of bgp/evpn fixtures =="
rg -n 'vm_evpn_target|vm_evpn_reference' tests/network/bgp/evpn || true
echo
echo "== BGP and provider migration test file lists =="
fd -t f . tests/network/provider_migration tests/network/bgp tests/network/bgp/evpn | sort
echo
echo "== ip_specification test file =="
cat -n tests/network/user_defined_network/ip_specification/test_ip_specification.py | sed -n '1,220p'Length of output: 22739 🏁 Script executed: #!/bin/bash
set -euo pipefail
repo="RedHatQE/openshift-virtualization-tests"
pr=5417
commit_id="3d4b81591c99b405cd456554821410eca28ba121"
path="tests/network/libs/vm_factory.py"
line=18
body_file="$(mktemp)"
cat > "$body_file" <<'EOF'
**Test Execution Plan**
- **Run smoke tests: False** — no smoke-marked files intersect the affected set, and no parent `conftest.py` in the smoke suites imports or calls `tests/network/libs/vm_factory.py::udn_vm`.
- **Run gating tests: True** — `tests/network/user_defined_network/test_user_defined_network.py::TestPrimaryUdn::test_connectivity_is_preserved_during_client_live_migration` → fixtures `server` / `client` → fixtures `vmb_udn` / `vma_udn` → `tests/network/libs/vm_factory.py::udn_vm` (modified helper).
- **Affected tests to run**
- `tests/network/user_defined_network/test_user_defined_network_multiarch.py`
- `tests/network/user_defined_network/test_user_defined_network.py` `(includes gating)`
- `tests/network/user_defined_network/test_user_defined_network_passt.py`
- `tests/network/user_defined_network/ip_specification/test_ip_specification.py`
- `tests/network/provider_migration/test_ip_persistence.py`
- `tests/network/bgp/test_bgp_connectivity.py`
- `tests/network/bgp/evpn/test_evpn_connectivity.py`
**Real tests (cluster required)**
Error path (the fix):
`pytest tests/network/user_defined_network/test_user_defined_network_multiarch.py -k 'amd_client_to_arm_server or arm_client_to_amd_server' -m 'multiarch and single_nic and ipv4'`
Expected: both ARM64↔AMD64 TCP connectivity checks pass over the primary UDN.
Happy path (regression):
`pytest tests/network/user_defined_network/test_user_defined_network.py::TestPrimaryUdn::test_connectivity_is_preserved_during_client_live_migration -m gating`
Expected: existing UDN connectivity during live migration still passes for callers that do not set `architecture`.
EOF
post_inline() {
gh api \
--method POST \
-H "Accept: application/vnd.github+json" \
"repos/$repo/pulls/$pr/comments" \
-f body@"$body_file" \
-f commit_id="$commit_id" \
-f path="$path" \
-F line="$line" \
-f side="RIGHT" >/dev/null
}
if ! post_inline; then
sleep 2
if ! post_inline; then
gh pr comment "$pr" --repo "$repo" --body-file "$body_file" >/dev/null
fi
fiLength of output: 2759 🏁 Script executed: #!/bin/bash
set -euo pipefail
repo="RedHatQE/openshift-virtualization-tests"
pr=5417
commit_id="3d4b81591c99b405cd456554821410eca28ba121"
path="tests/network/libs/vm_factory.py"
line=18
body_file="$(mktemp)"
cat > "$body_file" <<'EOF'
**Test Execution Plan**
- **Run smoke tests: False** — no smoke-marked files intersect the affected set, and no parent `conftest.py` in the smoke suites imports or calls `tests/network/libs/vm_factory.py::udn_vm`.
- **Run gating tests: True** — `tests/network/user_defined_network/test_user_defined_network.py::TestPrimaryUdn::test_connectivity_is_preserved_during_client_live_migration` → fixtures `server` / `client` → fixtures `vmb_udn` / `vma_udn` → `tests/network/libs/vm_factory.py::udn_vm` (modified helper).
- **Affected tests to run**
- `tests/network/user_defined_network/test_user_defined_network_multiarch.py`
- `tests/network/user_defined_network/test_user_defined_network.py` `(includes gating)`
- `tests/network/user_defined_network/test_user_defined_network_passt.py`
- `tests/network/user_defined_network/ip_specification/test_ip_specification.py`
- `tests/network/provider_migration/test_ip_persistence.py`
- `tests/network/bgp/test_bgp_connectivity.py`
- `tests/network/bgp/evpn/test_evpn_connectivity.py`
**Real tests (cluster required)**
Error path (the fix):
`pytest tests/network/user_defined_network/test_user_defined_network_multiarch.py -k 'amd_client_to_arm_server or arm_client_to_amd_server' -m 'multiarch and single_nic and ipv4'`
Expected: both ARM64↔AMD64 TCP connectivity checks pass over the primary UDN.
Happy path (regression):
`pytest tests/network/user_defined_network/test_user_defined_network.py::TestPrimaryUdn::test_connectivity_is_preserved_during_client_live_migration -m gating`
Expected: existing UDN connectivity during live migration still passes for callers that do not set `architecture`.
EOF
body="$(cat "$body_file")"
payload_comment="$(mktemp)"
jq -n \
--arg body "$body" \
--arg commit_id "$commit_id" \
--arg path "$path" \
--argjson line "$line" \
'{body:$body, commit_id:$commit_id, path:$path, line:$line, side:"RIGHT"}' > "$payload_comment"
payload_review="$(mktemp)"
jq -n \
--arg body "$body" \
--arg commit_id "$commit_id" \
--arg path "$path" \
--argjson line "$line" \
'{event:"COMMENT", comments:[{path:$path, line:$line, side:"RIGHT", body:$body}], commit_id:$commit_id}' > "$payload_review"
echo "== Try direct inline review comment endpoint =="
if gh api \
--method POST \
-H "Accept: application/vnd.github+json" \
"repos/$repo/pulls/$pr/comments" \
--input "$payload_comment"
then
exit 0
fi
sleep 2
echo "== Try PR review COMMENT flow with one inline comment =="
gh api \
--method POST \
-H "Accept: application/vnd.github+json" \
"repos/$repo/pulls/$pr/reviews" \
--input "$payload_review"Length of output: 3723
CRITICAL: I could not complete the required inline review comment because GitHub rejected both supported write paths with HTTP 403 Why this blocks completion:
Exact comment prepared for posting on **Test Execution Plan**
- **Run smoke tests: False** — no smoke-marked files intersect the affected set, and no parent `conftest.py` in the smoke suites imports or calls `tests/network/libs/vm_factory.py::udn_vm`.
- **Run gating tests: True** — `tests/network/user_defined_network/test_user_defined_network.py::TestPrimaryUdn::test_connectivity_is_preserved_during_client_live_migration` → fixtures `server` / `client` → fixtures `vmb_udn` / `vma_udn` → `tests/network/libs/vm_factory.py::udn_vm` (modified helper).
- **Affected tests to run**
- `tests/network/user_defined_network/test_user_defined_network_multiarch.py`
- `tests/network/user_defined_network/test_user_defined_network.py` `(includes gating)`
- `tests/network/user_defined_network/test_user_defined_network_passt.py`
- `tests/network/user_defined_network/ip_specification/test_ip_specification.py`
- `tests/network/provider_migration/test_ip_persistence.py`
- `tests/network/bgp/test_bgp_connectivity.py`
- `tests/network/bgp/evpn/test_evpn_connectivity.py`
**Real tests (cluster required)**
Error path (the fix):
`pytest tests/network/user_defined_network/test_user_defined_network_multiarch.py -k 'amd_client_to_arm_server or arm_client_to_amd_server' -m 'multiarch and single_nic and ipv4'`
Expected: both ARM64↔AMD64 TCP connectivity checks pass over the primary UDN.
Happy path (regression):
`pytest tests/network/user_defined_network/test_user_defined_network.py::TestPrimaryUdn::test_connectivity_is_preserved_during_client_live_migration -m gating`
Expected: existing UDN connectivity during live migration still passes for callers that do not set `architecture`.If you want, I can also help diagnose which permission is missing on the integration token. |
There was a problem hiding this comment.
Actionable comments posted: 2
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (1)
tests/network/user_defined_network/test_user_defined_network_multiarch.py (1)
17-28: 📐 Maintainability & Code Quality | 🟠 Major | ⚡ Quick winHIGH: Change the module traceability label to
STP:. The file already has the URL, butSTP Reference:does not match the requiredSTP: <url>/RFE: <url>/Jira: <url>pattern, so the test coverage link can’t be picked up consistently.🤖 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 `@tests/network/user_defined_network/test_user_defined_network_multiarch.py` around lines 17 - 28, Update the test class docstring in TestMultiArchUdn so the traceability label uses the required STP format; replace the current “STP Reference:” wording with “STP:” followed by the existing URL, matching the repo’s accepted “STP: <url> / RFE: <url> / Jira: <url>” pattern.Source: Coding guidelines
🤖 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 `@tests/network/libs/vm_factory.py`:
- Around line 21-22: The architecture override in vm_factory should not rely on
truthiness, because `if architecture` treats an explicit empty value as a
default and can hide invalid caller input. Update the `create_vm_spec` path to
gate the assignment to `spec.template.spec.architecture` on `architecture is not
None` so explicit values are preserved and bad inputs fail upstream instead of
silently falling back.
In `@tests/network/user_defined_network/conftest.py`:
- Line 95: The fixture bring-up checks in conftest.py use bare asserts, so add
short descriptive failure messages to each startup assertion in the network
fixture setup. Update the assert around server.is_running() and the other
related startup checks in the same fixture so each message clearly identifies
whether the server or client failed and on which VM, using the existing
fixture/helper names to locate the assertions.
---
Outside diff comments:
In `@tests/network/user_defined_network/test_user_defined_network_multiarch.py`:
- Around line 17-28: Update the test class docstring in TestMultiArchUdn so the
traceability label uses the required STP format; replace the current “STP
Reference:” wording with “STP:” followed by the existing URL, matching the
repo’s accepted “STP: <url> / RFE: <url> / Jira: <url>” pattern.
🪄 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: Path: .coderabbit.yaml
Review profile: ASSERTIVE
Plan: Pro
Run ID: fb64e350-63b9-4fdb-a0d8-907df1d7c49d
📒 Files selected for processing (3)
tests/network/libs/vm_factory.pytests/network/user_defined_network/conftest.pytests/network/user_defined_network/test_user_defined_network_multiarch.py
Test execution plan request detailsCRITICAL: You MUST post an inline review comment on the first changed line of the first file. As an expert software testing engineer, analyze all modified files in this PR and create a targeted test execution plan. Analysis Requirements:
Output rules: Your deliverable: Test Execution Plan
Use these formats:
Real test commands (MANDATORY when changes affect session/runtime code): When the affected code runs at session/collection time (conftest fixtures, pytest plugins,
Example output for a session-startup fix: Guidelines:
Hardware-Related Checks (SR-IOV, GPU, DPDK): When PR modifies fixtures for hardware-specific resources:
CRITICAL WORKFLOW COMPLETION RULES: When responding to this test execution plan request, you MUST follow these rules EXACTLY:
ABSOLUTE PROHIBITIONS (violating these creates empty/meaningless reviews):
Remember: The pull request review is visible to users. Additional comments are redundant noise. CRITICAL — Verification rules for smoke and gating decisions: |
|
Tip For best results, initiate chat on the files or code changes.
CRITICAL: This is the fifth identical Why I'm not retrying (again):
These are App/token permission-scope errors (missing What's unchanged and still valid — the analysis stands because **Test Execution Plan**
- Run smoke tests: False — no smoke-marked files intersect the affected set.
- Run gating tests: True — test_user_defined_network.py::TestPrimaryUdn::test_connectivity_is_preserved_during_client_live_migration → fixtures server/client → fixtures vmb_udn/vma_udn → vm_factory.py::udn_vm (modified helper).
Affected tests:
- tests/network/user_defined_network/test_user_defined_network_multiarch.py
- tests/network/user_defined_network/test_user_defined_network.py (gating)
- tests/network/user_defined_network/test_user_defined_network_passt.py
- tests/network/user_defined_network/ip_specification/test_ip_specification.py
- tests/network/provider_migration/test_ip_persistence.py
- tests/network/bgp/test_bgp_connectivity.py
- tests/network/bgp/evpn/test_evpn_connectivity.pyHIGH: Since this automation keeps firing the same trigger without the underlying permission being fixed, I'd strongly recommend pausing the I won't keep re-issuing identical API calls on subsequent identical triggers unless something changes (new commits, permission fix confirmation, etc.) — happy to retry immediately once permissions are corrected. ( ̄_ ̄|||) still the same wall, still the same door key missing |
|
@coderabbitai Per your comment about verification test plan, I also executed the entire user_defined_tests on both multi-arch cluster (as a regression) and on an homogenous arch. All passed. |
|
Tip For best results, initiate chat on the files or code changes.
Running the full No further action needed from my side on the test-plan front — this is solid verification. ᕙ(⇀‸↼‶)ᕗ |
|
/verified Verified the same way of the previous verifications, see previous comments. |
Test execution plan request detailsCRITICAL: You MUST post an inline review comment on the first changed line of the first file. As an expert software testing engineer, analyze all modified files in this PR and create a targeted test execution plan. Analysis Requirements:
Output rules: Your deliverable: Test Execution Plan
Use these formats:
Real test commands (MANDATORY when changes affect session/runtime code): When the affected code runs at session/collection time (conftest fixtures, pytest plugins,
Example output for a session-startup fix: Guidelines:
Hardware-Related Checks (SR-IOV, GPU, DPDK): When PR modifies fixtures for hardware-specific resources:
CRITICAL WORKFLOW COMPLETION RULES: When responding to this test execution plan request, you MUST follow these rules EXACTLY:
ABSOLUTE PROHIBITIONS (violating these creates empty/meaningless reviews):
Remember: The pull request review is visible to users. Additional comments are redundant noise. CRITICAL — Verification rules for smoke and gating decisions: |
|
Tip For best results, initiate chat on the files or code changes.
CRITICAL: This is the sixth identical Unchanged analysis (valid since **Test Execution Plan**
- Run smoke tests: False — no smoke-marked files intersect the affected set.
- Run gating tests: True — test_user_defined_network.py::TestPrimaryUdn::test_connectivity_is_preserved_during_client_live_migration → fixtures server/client → fixtures vmb_udn/vma_udn → vm_factory.py::udn_vm (modified helper).
Affected tests:
- tests/network/user_defined_network/test_user_defined_network_multiarch.py
- tests/network/user_defined_network/test_user_defined_network.py (gating)
- tests/network/user_defined_network/test_user_defined_network_passt.py
- tests/network/user_defined_network/ip_specification/test_ip_specification.py
- tests/network/provider_migration/test_ip_persistence.py
- tests/network/bgp/test_bgp_connectivity.py
- tests/network/bgp/evpn/test_evpn_connectivity.pyHIGH: At this point, real-world verification has already superseded the need for this comment: Recommendation: Please pause or disable the automated (ノ﹏ヽ) same wall, same missing key — will retry the instant permissions change |
|
/verified For the recent push (changing the path from which constants were taken) running the dedicated tests was enough. |
Test execution plan request detailsCRITICAL: You MUST post an inline review comment on the first changed line of the first file. As an expert software testing engineer, analyze all modified files in this PR and create a targeted test execution plan. Analysis Requirements:
Output rules: Your deliverable: Test Execution Plan
Use these formats:
Real test commands (MANDATORY when changes affect session/runtime code): When the affected code runs at session/collection time (conftest fixtures, pytest plugins,
Example output for a session-startup fix: Guidelines:
Hardware-Related Checks (SR-IOV, GPU, DPDK): When PR modifies fixtures for hardware-specific resources:
CRITICAL WORKFLOW COMPLETION RULES: When responding to this test execution plan request, you MUST follow these rules EXACTLY:
ABSOLUTE PROHIBITIONS (violating these creates empty/meaningless reviews):
Remember: The pull request review is visible to users. Additional comments are redundant noise. CRITICAL — Verification rules for smoke and gating decisions: |
|
Tip For best results, initiate chat on the files or code changes.
Status unchanged:
Recommendation stands: an org/repo admin should grant the CodeRabbit GitHub App (-_-) zzz... same wall, same missing key |
Test that a VM with ARM64 archirecture can successfuly connect with an AMD64 VM over primary UDN interface. Signed-off-by: Yossi Segev <ysegev@redhat.com> Assisted-by: Claude Code <noreply@anthropic.com>
for more information, see https://pre-commit.ci
|
/verified Verified (after rebasing) by running the new tests, which both passed. |
Test execution plan request detailsCRITICAL: You MUST post an inline review comment on the first changed line of the first file. As an expert software testing engineer, analyze all modified files in this PR and create a targeted test execution plan. Analysis Requirements:
Output rules: Your deliverable: Test Execution Plan
Use these formats:
Real test commands (MANDATORY when changes affect session/runtime code): When the affected code runs at session/collection time (conftest fixtures, pytest plugins,
Example output for a session-startup fix: Guidelines:
Hardware-Related Checks (SR-IOV, GPU, DPDK): When PR modifies fixtures for hardware-specific resources:
CRITICAL WORKFLOW COMPLETION RULES: When responding to this test execution plan request, you MUST follow these rules EXACTLY:
ABSOLUTE PROHIBITIONS (violating these creates empty/meaningless reviews):
Remember: The pull request review is visible to users. Additional comments are redundant noise. CRITICAL — Verification rules for smoke and gating decisions: |
|
Tip For best results, initiate chat on the files or code changes.
Status unchanged:
Recommendation stands: an org/repo admin needs to grant the CodeRabbit GitHub App (-_-) zzz... ninth knock, same locked door |
|
/approve |
|
/retest tox |
|
/retest build-container |
|
/retest verify-bugs-are-open |
|
/retest security-suspicious-paths |
|
/cherry-pick cnv-4.22 |
|
Cherry-pick conflicts were resolved by AI Cherry-picked PR [net] Multi-arch tests with VMs with primary UDN interfaces into cnv-4.22: #5562 @yossisegev Manual verification is required — please review the changes and test before merging. |
Test that a VM with ARM64 archirecture can successfuly connect with an AMD64 VM over primary UDN interface.
Assisted-by: Claude Code noreply@anthropic.com
What this PR does / why we need it:
Multi-architecture cluster are now supported by Openshift Virtualization, and these tests verify the successful connectivity of VMs of 2 different architectures over primary UDN interfaces.
Which issue(s) this PR fixes:
Special notes for reviewer:
jira-ticket:
https://redhat.atlassian.net/browse/CNV-89417
Summary by CodeRabbit