Add Azure Files Provisioned v2 (PV2) Billing Model Support for XFStests #4174
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Summary
This PR updates the Azure file share deployment for XFStests to use the Provisioned v2 (PV2) billing model by default, with an optional fallback to PV1 for regional compatibility.
Motivation
The PV2 billing model offers significant cost savings for testing workloads:
This change reduces file share costs by 65-75% for XFStests workloads.
Changes
lisa/sut_orchestrator/azure/common.pyprovisioned_iopsandprovisioned_bandwidth_mibpsoptional parameters toget_or_create_file_share()lisa/sut_orchestrator/azure/features.pyprovisioned_iopsandprovisioned_bandwidth_mibpsparameters tocreate_file_share()methodget_or_create_file_share()lisa/microsoft/testsuites/xfstests/xfstesting.pystorage_account_skufrom"Premium_LRS"to"PremiumV2_LRS"file_share_quota_in_gbfrom100to32provisioned_iops,provisioned_bandwidth_mibps, anduse_pv1_modelparametersuse_pv1_model=TrueUsage
This PR requires
azure-storage-file-shareSDK version >= 12.20.0This has been updated in the 'pyproject.toml'
The PV2 parameters (
provisioned_iops,provisioned_bandwidth_mibps) were added in SDK version 12.20.0 (released 2024-11-13). Ensure your existing environment is updated:pip install "azure-storage-file-share>=12.20.0"Testing
use_pv1_model=TrueReferences