Quarantine: Upgrade snapshot restore tests (CNV-95012) - #5981
Conversation
Quarantine all four snapshot upgrade tests in TestUpgradeStorage due to flaky UEFI boot failure after DV clone on upgrade cluster c01-cnv4220-upg (fails 3/5 builds on test-upgrade-cnv-to-4.22.z). Root cause is under investigation — both VMs show ProvisioningFailed during clone. Quarantined tests: - test_vm_snapshot_restore_before_upgrade (directly affected) - test_vm_snapshot_created_before_upgrade (same DV clone issue) - test_vm_snapshot_restore_check_after_upgrade (depends on pre-upgrade) - test_vm_snapshot_restore_create_after_upgrade (depends on pre-upgrade) jira-ticket: CNV-95012 Signed-off-by: Harel Meir <hmeir@redhat.com> Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: ASSERTIVE Plan: Pro Plus Run ID: 📒 Files selected for processing (1)
🔗 Linked repositories identifiedCodeRabbit considers these linked repositories for cross-repo context during reviews:
💤 Files with no reviewable changes (1)
📝 WalkthroughWalkthroughThe storage upgrade test imports ChangesSnapshot upgrade test quarantine
Estimated code review effort: 1 (Trivial) | ~5 minutes Possibly related PRs
Suggested reviewers: 🚥 Pre-merge checks | ✅ 6✅ Passed checks (6 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 |
|
/cherry-pick cnv-4.22 |
|
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
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
📌 Additional InformationCustom Commands:
For more information, please refer to the project documentation or contact the maintainers. |
|
Cherry-pick requested for PR: |
Remove xfail from test_vm_snapshot_created_before_upgrade, test_vm_snapshot_restore_check_after_upgrade, and test_vm_snapshot_restore_create_after_upgrade — only test_vm_snapshot_restore_before_upgrade is directly affected. Signed-off-by: Harel Meir <hmeir@redhat.com> Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
|
/verified |
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
echo '--- PR metadata ---'
gh pr view 5981 --json headRefOid,baseRefName,files --jq '{headRefOid, baseRefName, files: [.files[] | {path, additions, deletions}]}'
echo '--- PR diff ---'
gh pr diff 5981 -- tests/storage/upgrade/test_upgrade_storage.py
echo '--- File outline ---'
ast-grep outline tests/storage/upgrade/test_upgrade_storage.py --items all --type function --match 'test_vm_snapshot_restore_before_upgrade|test_vm_snapshot' || true
echo '--- Exact test and marker context ---'
rg -n -C8 'test_vm_snapshot_restore_before_upgrade|`@pytest`\.mark\.(smoke|gating|xfail|quarantined)' tests/storage/upgrade/test_upgrade_storage.py
echo '--- Smoke and gating marker files ---'
rg -l '`@pytest`\.mark\.smoke' tests/ || true
rg -l '`@pytest`\.mark\.gating' tests/ || true
echo '--- Relevant marker definitions ---'
rg -n -C3 'QUARANTINED|quarantined|xfail' pytest.ini pyproject.toml setup.cfg tox.ini conftest.py tests 2>/dev/null | head -160 || trueLength of output: 1590 🏁 Script executed: #!/bin/bash
set -euo pipefail
echo '--- Changed file patch ---'
gh api 'repos/RedHatQE/openshift-virtualization-tests/pulls/5981/files?per_page=100' \
--jq '.[] | select(.filename == "tests/storage/upgrade/test_upgrade_storage.py") | .patch'
echo '--- Target test and decorator context ---'
rg -n -C10 'test_vm_snapshot_restore_before_upgrade|`@pytest`\.mark\.(smoke|gating|xfail|quarantined)' \
tests/storage/upgrade/test_upgrade_storage.py || true
echo '--- Snapshot-upgrade test declarations ---'
ast-grep outline tests/storage/upgrade/test_upgrade_storage.py \
--items all --type function --match 'test_vm_snapshot' || true
echo '--- Smoke marker files ---'
rg -l '`@pytest`\.mark\.smoke' tests/ || true
echo '--- Gating marker files ---'
rg -l '`@pytest`\.mark\.gating' tests/ || true
echo '--- QUARANTINED marker definition and usage ---'
rg -n -C3 '\bQUARANTINED\b' tests pytest.ini pyproject.toml setup.cfg tox.ini conftest.py 2>/dev/null || trueLength of output: 35335 🏁 Script executed: #!/bin/bash
set -euo pipefail
body=$(cat <<'EOF'
**Test Execution Plan**
- **Run smoke tests: False.** The changed file has no `smoke` marker. No shared fixture or utility code changed.
- **Run gating tests: False.** The changed file has no `gating` marker. No shared fixture or utility code changed.
**Affected tests to run**
- `tests/storage/upgrade/test_upgrade_storage.py::TestUpgradeStorage::test_vm_snapshot_restore_before_upgrade` (`quarantined`; `xfail(run=False)`)
- `tests/storage/upgrade/test_upgrade_storage.py::TestUpgradeStorage::test_vm_snapshot_restore_check_after_upgrade` (depends on the quarantined pre-upgrade restore test)
**Test commands**
- Quarantine classification: `pytest tests/storage/upgrade/test_upgrade_storage.py::TestUpgradeStorage::test_vm_snapshot_restore_before_upgrade --collect-only -m quarantined`
- Dependency behavior: `pytest tests/storage/upgrade/test_upgrade_storage.py::TestUpgradeStorage::test_vm_snapshot_restore_before_upgrade tests/storage/upgrade/test_upgrade_storage.py::TestUpgradeStorage::test_vm_snapshot_restore_check_after_upgrade`
EOF
)
gh api --method POST \
repos/RedHatQE/openshift-virtualization-tests/pulls/5981/comments \
-f body="$body" \
-f commit_id='788ae429f66b1423972a213fc51c8568b9b56e80' \
-f path='tests/storage/upgrade/test_upgrade_storage.py' \
-F line=23 \
-f side='RIGHT' \
--jq '{id, path, line, side}'Length of output: 1687 You are interacting with an AI system. |
What this PR does / why we need it:
Quarantine snapshot upgrade tests in
TestUpgradeStoragedue to flaky UEFI boot failure after DV clone on upgrade clusterc01-cnv4220-upg(fails 3/5 builds ontest-upgrade-cnv-to-4.22.z). Root cause is under investigation — both VMs showProvisioningFailedduring clone.Quarantined tests:
test_vm_snapshot_restore_before_upgrade— directly affected by UEFI boot failureWhich issue(s) this PR fixes:
https://redhat.atlassian.net/browse/CNV-95012
Special notes for reviewer:
Uses
@pytest.mark.xfailquarantine (not@pytest.mark.jira) because root cause is unidentified — could be infra or product bug, under investigation.jira-ticket:
https://redhat.atlassian.net/browse/CNV-95012
Summary by CodeRabbit