Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(storage/linstor): Add provisioning type support and multi-disk enhancements for Linstor SR tests #270

Draft
wants to merge 2 commits into
base: master
Choose a base branch
from

Conversation

rushikeshjadhav
Copy link
Contributor

  • Introduced --provisioning pytest parameter to enable specifying provisioning type (thin or thick) for Linstor SR.
  • Enhanced sr_disks_for_all_hosts to support multiple disks, with validations for "auto" and specific disk configurations.
  • Modified lvm_disk to handle multiple devices, ensuring vgcreate and pvcreate commands are executed for all disks collectively.
  • Added provisioning_type and storage_pool_name pytest fixtures for dynamic SR configuration.
  • Updated Linstor SR test cases to use provisioning_type and storage_pool_name fixtures.
  • Improved disk validation and logging for multi-disk configurations.

…nhancements for Linstor SR tests

- Introduced `--provisioning` pytest parameter to enable specifying provisioning type (`thin` or `thick`) for Linstor SR.
- Enhanced `sr_disks_for_all_hosts` to support multiple disks, with validations for "auto" and specific disk configurations.
- Modified `lvm_disk` to handle multiple devices, ensuring `vgcreate` and `pvcreate` commands are executed for all disks collectively.
- Added `provisioning_type` and `storage_pool_name` pytest fixtures for dynamic SR configuration.
- Updated Linstor SR test cases to use `provisioning_type` and `storage_pool_name` fixtures.
- Improved disk validation and logging for multi-disk configurations.

Signed-off-by: Rushikesh Jadhav <[email protected]>
@stormi
Copy link
Member

stormi commented Feb 6, 2025

Adding a new CLI parameter such as --provisioning is a last resort change, because it moves the responsibility for defining it to the caller, when we probably want that our tests, by default, provide both testing for thick and thin provisioning, as their definition.

Couldn't we have test definitions that do both thick and thin, instead?

@rushikeshjadhav
Copy link
Contributor Author

Couldn't we have test definitions that do both thick and thin, instead?

We can do that. Since this is XOSTOR level, one full cycle (create-test-destroy) with thin and then another full cycle with thick can be added.

Can we retain the CLI option for those callers who want to selectively run in one of the mode?

@stormi
Copy link
Member

stormi commented Feb 10, 2025

Can we retain the CLI option for those callers who want to selectively run in one of the mode?

In theory pytest already offers enough selectors to execute a set of tests and not others.

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.

2 participants