Skip to content

e2e: add blockdevice regression scenarios#235

Merged
viktor-karpochev merged 2 commits intomainfrom
e2e/vkarpochev-blockdevice-tests-only
Apr 20, 2026
Merged

e2e: add blockdevice regression scenarios#235
viktor-karpochev merged 2 commits intomainfrom
e2e/vkarpochev-blockdevice-tests-only

Conversation

@viktor-karpochev
Copy link
Copy Markdown
Contributor

Summary

  • add an e2e scenario that verifies a BlockDevice is removed after its backing disk disappears
  • add an e2e scenario that verifies LVMVolumeGroup degrades after replacing the backing block device with a smaller one
  • add e2e scenarios for rejecting or reverting manual BlockDevice creation and status mutations, and document them in e2e/README.md

Test plan

  • cd e2e && go test ./tests -run TestDoesNotExist -count=0
  • Run the full e2e smoke suite in CI

Made with Cursor

@github-actions
Copy link
Copy Markdown
Contributor

E2E Smoke Tests Results ✅

Module: sds-node-configurator
Framework: storage-e2e
Namespace: e2e-sds-node-configurator-pr235-24455027049
Status: Tests passed

View Details

Tests were executed via storage-e2e (TestSdsNodeConfigurator: Common Scheduler Extender, then Sds Node Configurator).

Artifacts: Test logs are available in workflow artifacts.

Copy link
Copy Markdown

@szhem szhem left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review Summary

Severity Count
Critical 0
High 0
Medium 4
Low 1
Nit 1

Positive Observations

  • Tests are well-structured with clear step-by-step By() annotations and informative assertion messages
  • Graceful handling of webhook protection in the manual BD creation test (IsForbidden/IsInvalid → graceful skip/verify)
  • restartSDSNodeConfiguratorAgentOnNode is a clean, reusable helper covering the full pod lifecycle (delete → gone → replacement running+ready)
  • AfterEach cleanup in the Size Reduction test correctly strips finalizers before LVG deletion
  • README documentation accurately describes each scenario and its assertions
  • Eventually timeouts are appropriate for e2e (5-10 min with 10-15s polling)

Comment thread e2e/tests/sds_node_configurator_test.go Outdated
Comment thread e2e/tests/sds_node_configurator_test.go
Comment thread e2e/tests/sds_node_configurator_test.go
Comment thread e2e/tests/sds_node_configurator_test.go
Comment thread e2e/tests/sds_node_configurator_test.go Outdated
Comment thread e2e/tests/sds_node_configurator_test.go Outdated
kkozoriz
kkozoriz previously approved these changes Apr 17, 2026
Comment thread e2e/tests/sds_node_configurator_test.go Outdated
Add the blockdevice disappearance, shrink, and manual mutation coverage on top of the latest main branch changes while keeping the cleanup hardening and failure-only shrink diagnostics from review follow-ups.

Signed-off-by: Viktor Karpochev <viktor.karpochev@flant.com>
Made-with: Cursor
@viktor-karpochev viktor-karpochev force-pushed the e2e/vkarpochev-blockdevice-tests-only branch from 3691328 to 1d99da8 Compare April 20, 2026 09:14
Use strconv.Itoa instead of fmt.Sprintf for the random suffix in the manual BlockDevice test to address the remaining style nit without changing behavior.

Signed-off-by: Viktor Karpochev <viktor.karpochev@flant.com>
Made-with: Cursor
@viktor-karpochev viktor-karpochev merged commit 980119e into main Apr 20, 2026
14 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants