Support Hyper-V on CLM PowerShell hosts #13776
Draft
+225
−42
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.
This addresses #13775.
On Windows hosts where PowerShell Constrained Language Mode (CLM) is
enforced, Vagrant Hyper-V provider malfunctions as essential checks
fail to run, lacking the necessary capabilities under CLM.
The Constrained Language Mode is highly restricted, as described in:
https://devblogs.microsoft.com/powershell/powershell-constrained-language-mode/
Among them, here are some noteworthy limitations
This commit addressed such limitation by providing alternative logic
specifically for hosts running under CLM. By replacing unsanctioned
New-Object calls, method invocations, and reflaction with native tools
(like
net sessionandwhoami) and compliant cmdlets, the VargrantHyper-V provider now functions in CLM environments.