Stp cbt#30
Conversation
|
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:
📝 WalkthroughWalkthroughNew OpenShift Virtualization Changed Block Tracking (CBT) Software Test Plan added: metadata (VEP/Jira/QE owner/SIG/status), CBT terminology and push/pull modes, feature overview, QE and tech review checklists, prioritized test scenarios (P0–P2), environment assumptions, risks/limitations, traceability, and sign-off placeholders. Changes
Estimated code review effort🎯 1 (Trivial) | ⏱️ ~2 minutes 🚥 Pre-merge checks | ✅ 2 | ❌ 1❌ Failed checks (1 inconclusive)
✅ Passed checks (2 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ 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 |
|
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
Cherry-pick Operations
Label Management
✅ Merge RequirementsThis PR will be automatically approved when the following conditions are met:
📊 Review ProcessApprovers and ReviewersApprovers:
Reviewers:
Available Labels
💡 Tips
For more information, please refer to the project documentation or contact the maintainers. |
ema-aka-young
left a comment
There was a problem hiding this comment.
Leaving a couple of questions, mainly for understanding.
There was a problem hiding this comment.
Actionable comments posted: 3
♻️ Duplicate comments (1)
stps/sig-storage/cbt.md (1)
94-94:⚠️ Potential issue | 🟠 MajorPull-mode in scope but security coverage is fully excluded.
With pull-mode backup in scope (Line 172), marking security testing as
Nat Line 94 leaves an important gap. At minimum, include a negative authn/authz scenario for pull-mode tunnel establishment (unauthorized CONNECT/cert path).Also applies to: 172-172
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@stps/sig-storage/cbt.md` at line 94, The Security Testing entry currently marked "N" must be updated to reflect that pull-mode backups are in scope: change the Security Testing cell for "Pull-mode" to indicate partial/conditional coverage (e.g., "Y (pull-mode only)" or "Partial") and add at least one test case for pull-mode tunnel establishment verifying negative authn/authz behavior (unauthorized CONNECT attempts and invalid certificate path rejection). Specifically, update the "Security Testing" row referenced by the "Security Testing" header and add a short bullet or a test-case line under the pull-mode backup section that names the test (e.g., "pull-mode: reject unauthorized CONNECT / invalid cert path") and describes expected outcome (connection refused/403 or TLS handshake failure).
🧹 Nitpick comments (1)
stps/sig-storage/cbt.md (1)
124-126: Testing tools section is empty; add concrete framework/CI entries.This section is currently non-actionable for implementation handoff. Please specify at least the test framework and CI lane(s) that will carry the planned scenarios.
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@stps/sig-storage/cbt.md` around lines 124 - 126, The testing tools table under the "Test Framework", "CI/CD", and "Other Tools" rows is empty; update the table in cbt.md by specifying a concrete test framework (e.g., "Ginkgo/Gomega" or "pytest" with version), list the CI lanes that will run these scenarios (e.g., "presubmit: sig-storage-cbt", "periodic: sig-storage-cbt-nightly", or GitHub Actions workflow names), and add any other tooling required (e.g., "kubetest2", "kind", "kubernetes-e2e-operator", testgrid config). Ensure each cell contains a specific tool or workflow name so the implementation handoff is actionable.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Inline comments:
In `@stps/sig-storage/cbt.md`:
- Around line 184-188: Replace the placeholder entries under the "Approvers:"
section (the lines containing "[Name / `@github-username`]") with actual approver
names and GitHub handles, or if approvals are not yet complete, replace them
with an explicit "Pending — tracked in <task/issue reference>" note; update the
Approvers list in stps/sig-storage/cbt.md so the release artifact contains real
identities or a clear pending follow-up, and ensure any added names use the same
list markdown format already present.
- Around line 162-175: Replace the repeated "TBD" Requirement ID cells with the
repository's epic mapping format by putting the epic identifier (e.g.,
"CNV-61530 (epic)") in the first row of the related group and leaving the
subsequent Requirement ID cells blank for the remaining scenarios under that
same epic; update the table rows shown (the Requirement ID column entries
currently all "TBD") so each group of related test scenarios uses one epic ID in
its first row and empty Requirement ID cells for following rows to preserve
traceability and avoid repeating the epic.
- Around line 74-76: The testing goals "Verify backup with hotplugged disks",
"Verify incremental backup after migration", and "Verify overlay migration with
RWO and RWX backend PVCs (bitmap behavior, known libvirt RWO limitation)" are
not mapped 1:1 in the traceability table; update the traceability table to
include explicit rows for each of these goals (or merge them into existing rows
but rename and expand those rows to match the exact goal wording), ensuring each
goal has a corresponding scenario, acceptance criteria, and trace ID so the
table entries now cover both the goals near the top of the document and the
related entries later in the table (the block referenced in the review).
---
Duplicate comments:
In `@stps/sig-storage/cbt.md`:
- Line 94: The Security Testing entry currently marked "N" must be updated to
reflect that pull-mode backups are in scope: change the Security Testing cell
for "Pull-mode" to indicate partial/conditional coverage (e.g., "Y (pull-mode
only)" or "Partial") and add at least one test case for pull-mode tunnel
establishment verifying negative authn/authz behavior (unauthorized CONNECT
attempts and invalid certificate path rejection). Specifically, update the
"Security Testing" row referenced by the "Security Testing" header and add a
short bullet or a test-case line under the pull-mode backup section that names
the test (e.g., "pull-mode: reject unauthorized CONNECT / invalid cert path")
and describes expected outcome (connection refused/403 or TLS handshake
failure).
---
Nitpick comments:
In `@stps/sig-storage/cbt.md`:
- Around line 124-126: The testing tools table under the "Test Framework",
"CI/CD", and "Other Tools" rows is empty; update the table in cbt.md by
specifying a concrete test framework (e.g., "Ginkgo/Gomega" or "pytest" with
version), list the CI lanes that will run these scenarios (e.g., "presubmit:
sig-storage-cbt", "periodic: sig-storage-cbt-nightly", or GitHub Actions
workflow names), and add any other tooling required (e.g., "kubetest2", "kind",
"kubernetes-e2e-operator", testgrid config). Ensure each cell contains a
specific tool or workflow name so the implementation handoff is actionable.
🪄 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: Organization UI
Review profile: CHILL
Plan: Pro
Run ID: 0a29fb14-612c-4042-98f5-54d06ecd114c
📒 Files selected for processing (1)
stps/sig-storage/cbt.md
- Metadata & tracking (enhancement, Jira, QE owner, status) - Document conventions table (CBT, Push mode, Pull mode) - Feature overview and motivation - Section I/II placeholders to be filled Co-authored-by: Cursor <cursoragent@cursor.com> Signed-off-by: Dalia Frank <dafrank@dafrank-thinkpadp1gen4i.raanaii.csb>
- Motivation moved to Section I (Motivation and Requirements Review) - Section I checklists: Done [x] for all rows; Entry Criteria, Out of Scope, Risks Status [x] - Testing Goals: P0/P1/P2 goals (CBT, push/pull backup, Windows VM, OCP 4.21, ForceFullBackup, full PVC, etc.); sorted by priority - Out of Scope: restore as feature, offline, performance; removed pull-mode (now P2 goal) - Removed/replaced semicolons; simplified goal wording; removed VM restart goal, VM state PVC/hot-plug goal - Section II.2 Test Strategy: Applicable (Y/N/N/A) and Comments filled for all rows - Performance: no testing planned currently, may be in future - Dependencies: OpenShift and CNV; OCP 4.21 updated KubeVirt images - Compatibility: CBT storage-agnostic; OCP 4.21, Windows VM Co-authored-by: Cursor <cursoragent@cursor.com> Signed-off-by: Dalia Frank <dafrank@dafrank-thinkpadp1gen4i.raanaii.csb>
…Section III - Test Environment: uniform 'Standard' where applicable; OCP 4.21, Storage, Special Configurations (KubeVirt images for 4.21) - Entry Criteria: add IncrementalBackup feature gate - Risks: fill all rows (timeline, coverage, env, dependencies, T1 quarantined; start with push backup) - Known Limitations: testing can start with current scope; T1 quarantined; feature in progress, storage providers unblocked - Section III: note to fill from Jira (CNV-61530), single TBD row; Section IV sign-off left as placeholder Co-authored-by: Cursor <cursoragent@cursor.com> Signed-off-by: Dalia Frank <dafrank@dafrank-thinkpadp1gen4i.raanaii.csb>
Co-authored-by: Cursor <cursoragent@cursor.com> Signed-off-by: Dalia Frank <dafrank@dafrank-thinkpadp1gen4i.raanaii.csb>
- Add testing goals: hotplugged disks, incremental after migration, overlay RWO/RWX - RWO issues: incremental backup after migration (not pull mode) in Risks/Known Limits - Dependencies: add libvirt; Test Env: libvirt RPMs for 4.22 - Pull-mode: P1, merged for 4.22; Windows VM: P1 - Checkpoint redefinition: add after-migration RWO note (libvirt fix pending) - Jira Tracking: STP creation task CNV-61552 - Replace semicolons with commas in cbt.md Made-with: Cursor Signed-off-by: Dalia Frank <dafrank@dafrank-thinkpadp1gen4i.raanaii.csb>
…ment - Section III: CNV-61530 (epic) on first row, empty ID cells for following rows - Add traceability rows for hotplugged disks and incremental backup after migration - Reorder Testing Goals (P0 before P1) to match traceability table - Functional testing comment points to II.1 and III; Known Limitations cross-refs to III Made-with: Cursor Signed-off-by: Dalia Frank <dafrank@dafrank-thinkpadp1gen4i.raanaii.csb>
…lons - State HCO feature gate for CBT as enabled across goals, env, risks, traceability - Clarify RWO limitation is qcow2 overlay migration (not pull mode) in risks/limitations/scenarios - Replace semicolons in cbt.md for consistency with prior doc style Made-with: Cursor Signed-off-by: Dalia Frank <dafrank@dafrank-thinkpadp1gen4i.raanaii.csb>
- Out of scope: performance rationale as one formal sentence - Performance testing: replace fragment phrasing with two clear sentences - Automation testing: expected automation for CI/regression Made-with: Cursor Signed-off-by: Dalia Frank <dafrank@dafrank-thinkpadp1gen4i.raanaii.csb>
- Feature overview and Pull mode: VMExport API HTTP shim over NBD - Dependencies and cross integrations: VMExport for pull-mode endpoints - Pull-mode traceability: verify via VMExport API - Risks/limitations/scenarios: general CBT/backup wording for RWO overlay - T1 quarantine: CNV-78846 and kubevirt#17297 (KubeVirt disk source), separate from libvirt overlay issue - Remove misleading libvirt-as-primary flaky-backup bullet Made-with: Cursor Signed-off-by: Dalia Frank <dafrank@dafrank-thinkpadp1gen4i.raanaii.csb>
Remove VMExport/HTTP shim from Document Conventions; Feature Overview already describes KubeVirt pull-mode access (addresses review feedback). Made-with: Cursor Signed-off-by: Dalia Frank <dafrank@dafrank-thinkpadp1gen4i.raanaii.csb>
Add pull-mode backup internal tunnel security test (virt-exportserver to virt-launcher certificate requirement). Convert Known Limitations to table format with PM signoffs (Peter Lauterbach, May 7 2026). Remove qcow2 overlay migration RWO bitmap bug from limitations (now fixed in libvirt). Update Out of Scope with PM signoff. Add security test to Test Strategy and Scenarios (T1/P1). Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com> Signed-off-by: Dalia Frank <dafrank@dafrank-thinkpadp1gen4i.raanaii.csb>
|
Clean rebase detected — no code changes compared to previous head ( |
|
duyanyan can not be added as reviewer. Reviews may only be requested from collaborators. One or more of the users or teams you specified is not a collaborator of the RedHatQE/openshift-virtualization-tests-design-docs repository.: 422 {"message": "Reviews may only be requested from collaborators. One or more of the users or teams you specified is not a collaborator of the RedHatQE/openshift-virtualization-tests-design-docs repository.", "documentation_url": "https://docs.github.com/rest/pulls/review-requests#request-reviewers-for-a-pull-request", "status": "422"} |
…no, Ahmad Hafe) Signed-off-by: Dalia Frank <dafrank@dafrank-thinkpadp1gen4i.raanaii.csb>
|
duyanyan can not be added as reviewer. Reviews may only be requested from collaborators. One or more of the users or teams you specified is not a collaborator of the RedHatQE/openshift-virtualization-tests-design-docs repository.: 422 {"message": "Reviews may only be requested from collaborators. One or more of the users or teams you specified is not a collaborator of the RedHatQE/openshift-virtualization-tests-design-docs repository.", "documentation_url": "https://docs.github.com/rest/pulls/review-requests#request-reviewers-for-a-pull-request", "status": "422"} |
STP Metadata
VEP issue: https://github.com/kubevirt/enhancements/blob/main/veps/sig-storage/incremental-backup.md
What this PR does
Adds the CBT (Changed Block Tracking) STP for CNV-61530
Special notes for your reviewer
Summary by CodeRabbit