[4.21] Remove DataSource storage class fallback from DV template helper#5228
[4.21] Remove DataSource storage class fallback from DV template helper#5228RoniKishner wants to merge 1 commit into
Conversation
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. 🗂️ Base branches to auto review (4)
Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: ASSERTIVE Plan: Pro Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
✨ 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 |
Qodo reviews are paused for this user.Troubleshooting steps vary by plan Learn more → On a Teams plan? Using GitHub Enterprise Server, GitLab Self-Managed, or Bitbucket Data Center? |
|
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
For more information, please refer to the project documentation or contact the maintainers. |
|
/verified |
|
/retest verify-bugs-are-open |
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 diff summary ==="
git diff HEAD~1 --stat
echo ""
echo "=== Modified files ==="
git diff HEAD~1 --name-only
echo ""
echo "=== Diff of changed files ==="
git diff HEAD~1 --unified=5Length of output: 4286 🏁 Script executed: #!/bin/bash
set -euo pipefail
echo "=== Modified function/method symbols ==="
git diff HEAD~1 --unified=0 | grep '^[+-]def '
echo ""
echo "=== Find data_volume_template_with_source_ref_dict callers in tests/ ==="
rg -rn 'data_volume_template_with_source_ref_dict' tests/ --include="*.py" -l
echo ""
echo "=== Find callers in conftest files ==="
rg -rn 'data_volume_template_with_source_ref_dict' --include="conftest.py" -l
echo ""
echo "=== Smoke marked files ==="
rg -l '`@pytest.mark.smoke`' tests/
echo ""
echo "=== Gating marked files ==="
rg -l '`@pytest.mark.gating`' tests/Length of output: 1529 🏁 Script executed: #!/bin/bash
set -euo pipefail
echo "=== All callers of data_volume_template_with_source_ref_dict ==="
rg -rn 'data_volume_template_with_source_ref_dict' --include="*.py" -C2
echo ""
echo "=== Same-file callers (find the modified file first) ==="
fd 'data_volume' --extension pyLength of output: 1029 🏁 Script executed: #!/bin/bash
set -euo pipefail
echo "=== All callers of data_volume_template_with_source_ref_dict ==="
rg -rn 'data_volume_template_with_source_ref_dict' -g '*.py' -C2
echo ""
echo "=== Smoke marked files ==="
rg -l '`@pytest.mark.smoke`' tests/
echo ""
echo "=== Gating marked files ==="
rg -l '`@pytest.mark.gating`' tests/
echo ""
echo "=== Check smoke/gating in golden_images test file ==="
rg -n 'smoke|gating|post_upgrade' tests/infrastructure/golden_images/test_common_templates_data_volumes.pyLength of output: 25006
Test Execution Plan Run smoke tests: True Run gating tests: True Affected tests to run
Real tests (cluster required) Error path (the fix — snapshot storage class set as default): Expected: VM created successfully using snapshot SC; no storage class mismatch error. Happy path (regression — normal storage class): Expected: VM created with the explicitly provided storage class; cluster default used when storage_class=None. |
|
/approve |
|
/approve |
Signed-off-by: rkishner <rkishner@redhat.com>
a4eb286 to
5010fc5
Compare
|
Clean rebase detected — no code changes compared to previous head ( |
|
/retest build-container |
What this PR does / why we need it:
When calling
data_volume_template_with_source_ref_dictwe should either use it with explicitstorage_classfield, or omit the field and use the default storage class.Relying on the storage class of the DataSources can cause miss interpretations, while also causing issues since it is not possible to match the storage class to the DataSource, if a snap shot storage class is used.
Which issue(s) this PR fixes:
Failing tests when snapshot storage classes are set.
Special notes for reviewer:
Cherry-pick from main branch, original PR:
#4985
jira-ticket:
https://redhat.atlassian.net/browse/CNV-88988