Repository navigation
Conversation
🔴 Test Coverage Grade:
|
| Metric | Value |
|---|---|
| Line coverage | 24.74% |
| Branch coverage | 18.87% |
Grade Scale
| Grade | Line Coverage | Meaning |
|---|---|---|
| 🟢 A | ≥ 80% | Excellent - this code sleeps well at night 😴 |
| 🟡 B | 60-79% | Good - almost there, don't stop now 😉 |
| 🟠 C | 40-59% | Acceptable - your code is wearing a seatbelt, but no airbags 😬 |
| 🔴 D | 20-39% | Marginal - boldly shipping where no test has gone before 🖖 |
| ⛔ F | < 20% | Failing - tests? what tests? 🔥 |
Branch coverage is shown as a secondary signal. Grade is determined by line coverage.
View full Actions run
🔴 Test Coverage Grade:
|
| Metric | Value |
|---|---|
| Line coverage | 24.74% |
| Branch coverage | 18.87% |
Grade Scale
| Grade | Line Coverage | Meaning |
|---|---|---|
| 🟢 A | ≥ 80% | Excellent - this code sleeps well at night 😴 |
| 🟡 B | 60-79% | Good - almost there, don't stop now 😉 |
| 🟠 C | 40-59% | Acceptable - your code is wearing a seatbelt, but no airbags 😬 |
| 🔴 D | 20-39% | Marginal - boldly shipping where no test has gone before 🖖 |
| ⛔ F | < 20% | Failing - tests? what tests? 🔥 |
Branch coverage is shown as a secondary signal. Grade is determined by line coverage.
View full Actions run
ca893c1 to
07916ec
Compare
🔴 Test Coverage Grade:
|
| Metric | Value |
|---|---|
| Line coverage | 24.74% |
| Branch coverage | 18.87% |
Grade Scale
| Grade | Line Coverage | Meaning |
|---|---|---|
| 🟢 A | ≥ 80% | Excellent - this code sleeps well at night 😴 |
| 🟡 B | 60-79% | Good - almost there, don't stop now 😉 |
| 🟠 C | 40-59% | Acceptable - your code is wearing a seatbelt, but no airbags 😬 |
| 🔴 D | 20-39% | Marginal - boldly shipping where no test has gone before 🖖 |
| ⛔ F | < 20% | Failing - tests? what tests? 🔥 |
Branch coverage is shown as a secondary signal. Grade is determined by line coverage.
View full Actions run
🔴 Test Coverage Grade:
|
| Metric | Value |
|---|---|
| Line coverage | 24.74% |
| Branch coverage | 18.87% |
Grade Scale
| Grade | Line Coverage | Meaning |
|---|---|---|
| 🟢 A | ≥ 80% | Excellent - this code sleeps well at night 😴 |
| 🟡 B | 60-79% | Good - almost there, don't stop now 😉 |
| 🟠 C | 40-59% | Acceptable - your code is wearing a seatbelt, but no airbags 😬 |
| 🔴 D | 20-39% | Marginal - boldly shipping where no test has gone before 🖖 |
| ⛔ F | < 20% | Failing - tests? what tests? 🔥 |
Branch coverage is shown as a secondary signal. Grade is determined by line coverage.
View full Actions run
🔴 Test Coverage Grade:
|
| Metric | Value |
|---|---|
| Line coverage | 24.74% |
| Branch coverage | 18.87% |
Grade Scale
| Grade | Line Coverage | Meaning |
|---|---|---|
| 🟢 A | ≥ 80% | Excellent - this code sleeps well at night 😴 |
| 🟡 B | 60-79% | Good - almost there, don't stop now 😉 |
| 🟠 C | 40-59% | Acceptable - your code is wearing a seatbelt, but no airbags 😬 |
| 🔴 D | 20-39% | Marginal - boldly shipping where no test has gone before 🖖 |
| ⛔ F | < 20% | Failing - tests? what tests? 🔥 |
Branch coverage is shown as a secondary signal. Grade is determined by line coverage.
View full Actions run
🔴 Test Coverage Grade:
|
| Metric | Value |
|---|---|
| Line coverage | 24.74% |
| Branch coverage | 18.87% |
Grade Scale
| Grade | Line Coverage | Meaning |
|---|---|---|
| 🟢 A | ≥ 80% | Excellent - this code sleeps well at night 😴 |
| 🟡 B | 60-79% | Good - almost there, don't stop now 😉 |
| 🟠 C | 40-59% | Acceptable - your code is wearing a seatbelt, but no airbags 😬 |
| 🔴 D | 20-39% | Marginal - boldly shipping where no test has gone before 🖖 |
| ⛔ F | < 20% | Failing - tests? what tests? 🔥 |
Branch coverage is shown as a secondary signal. Grade is determined by line coverage.
View full Actions run
sandeeplocharla
left a comment
There was a problem hiding this comment.
Do add host level checks to confirm resize seen from the host side also.
|
This pull request has merge conflicts. Dear author, please fix the conflicts and sync your branch with the base branch. |
1b68a98 to
1ce7ad9
Compare
🔴 Test Coverage Grade:
|
| Metric | Value |
|---|---|
| Line coverage | 24.73% |
| Branch coverage | 18.86% |
Grade Scale
| Grade | Line Coverage | Meaning |
|---|---|---|
| 🟢 A | ≥ 80% | Excellent - this code sleeps well at night 😴 |
| 🟡 B | 60-79% | Good - almost there, don't stop now 😉 |
| 🟠 C | 40-59% | Acceptable - your code is wearing a seatbelt, but no airbags 😬 |
| 🔴 D | 20-39% | Marginal - boldly shipping where no test has gone before 🖖 |
| ⛔ F | < 20% | Failing - tests? what tests? 🔥 |
Branch coverage is shown as a secondary signal. Grade is determined by line coverage.
View full Actions run
| 07 Create a new pool and allocate a CloudStack data volume (LUN created) | ||
| 08 Delete the volume (LUN removed), enter maintenance, force-delete pool | ||
| 02 Increase storage pool capacity to the maximum supported size | ||
| 03 Reject a grow beyond the maximum supported size |
There was a problem hiding this comment.
Grow and shrink a zone-scoped pool, on both protocols.
There was a problem hiding this comment.
The behaviour of storage pool resize is the same for zone and cluster scoped pool. Should I still add grow and shrink of pool in zone scoped pool if needed?
|
This pull request has merge conflicts. Dear author, please fix the conflicts and sync your branch with the base branch. |
…ive VMs are present, when pool is in maintenance.
Pool lifecycle (both NFS3 and iSCSI), now 15 tests:
- test_03 rejects a grow past the 300 TiB ONTAP FlexVol maximum,
asserting ONTAP's autosize-maximum error.
- test_12 deploys a VM and attaches the volume.
- test_14 grows and shrinks the pool while the VM holds the volume,
checking the VM stays running and keeps the volume
Zone-scoped pool (both protocols), now 6 tests:
- test_02 and test_03 grow and safely shrink the pool, verifying the
export policy (NFS3) and igroups (iSCSI) are present after resize.
1ce7ad9 to
9e27bfc
Compare
🔴 Test Coverage Grade:
|
| Metric | Value |
|---|---|
| Line coverage | 25.77% |
| Branch coverage | 20.05% |
Grade Scale
| Grade | Line Coverage | Meaning |
|---|---|---|
| 🟢 A | ≥ 80% | Excellent - this code sleeps well at night 😴 |
| 🟡 B | 60-79% | Good - almost there, don't stop now 😉 |
| 🟠 C | 40-59% | Acceptable - your code is wearing a seatbelt, but no airbags 😬 |
| 🔴 D | 20-39% | Marginal - boldly shipping where no test has gone before 🖖 |
| ⛔ F | < 20% | Failing - tests? what tests? 🔥 |
Branch coverage is shown as a secondary signal. Grade is determined by line coverage.
View full Actions run
|
This pull request has merge conflicts. Dear author, please fix the conflicts and sync your branch with the base branch. |
Description
This PR...
Automation test coverage for ONTAP primary storage pool resize on both NFS3 and iSCSI, covering grow, safe shrink, and reject-when-used-space-would-be-exceeded.
1.test_02_grow_storage_pool — grow the empty pool by ONTAP_MIN_VOLUME_SIZE, then poll until CloudStack capacitybytes and ONTAP FlexVol space.size match the request and the pool stays Up (NFS export policy / iSCSI igroups unchanged).
2.test_03_shrink_storage_pool — shrink back to the original size and assert the same CloudStack + ONTAP convergence.
3.test_10_reject_shrink_below_used_capacity — after a new pool + volume, attempt a shrink below ONTAP used space (target kept above the 20 MiB FlexVol minimum). Expect CloudstackAPIException; volume, pool capacity, and protocol objects stay unchanged.
Types of changes
Feature/Enhancement Scale or Bug Severity
Feature/Enhancement Scale
Bug Severity
Screenshots (if appropriate):
How Has This Been Tested?
What was verified:
Pool lifecycle — NFS3 and iSCSI
1.test_02_grow_storage_pool
Grow pool to the 300 TiB ONTAP limit.
Verify CloudStack and FlexVol capacities match.
2.test_03_reject_grow_above_max_size
Reject growth to 300 TiB + 1 GiB.
Verify capacity and protocol resources remain unchanged.
3.test_04_shrink_storage_pool
Safely shrink the pool to its original size.
4.test_08_resize_storage_pool_in_maintenance
Resize while the pool is in maintenance mode.
5.test_13_reject_shrink_below_used_capacity
Reject shrinking below actual used space without affecting existing resources.
6.test_14_resize_pool_with_vm_attached
Resize while a volume is attached to a running VM.
Verify attachment, export policy/LUN, and pool state remain intact.
Zone-scoped pool — NFS3 and iSCSI
1.test_02_grow_zone_scoped_pool
Grow a zone-scoped pool.
Verify CloudStack capacity and ONTAP FlexVol size increase.
Confirm the pool remains Up and protocol resources are preserved.
2.test_03_shrink_zone_scoped_pool
Shrink the zone-scoped pool to its original size.
Verify CloudStack and ONTAP capacities match.
Confirm the pool remains Up and protocol resources are preserved.
Environment:
CloudStack management server with the NetApp ONTAP plugin deployed (integration API on port 8096)
KVM cluster from test/integration/plugins/ontap/ontap.cfg
ONTAP SVM with NFS3 and iSCSI enabled, at least one data LIF per protocol
Tests executed from the repo root using the ONTAP Marvin venv (setup_env.sh)
How did you try to break this feature and the system with this change?