Archive
Posts Tagged ‘pwsh’
Azure DevOps | YAML | Could not load type ‘System.Management.Automation.PSSnapIn’
July 11, 2022
Leave a comment
I got the following exception while executing a PowerShell script in my Azure DevOps pipeline step.
Import-Module : Could not load type 'System.Management.Automation.PSSnapIn' from assembly 'System.Management.Automation, Version=7.2.5.500,
Reason:
- I used following ‘pwsh‘ task in my YAML file to execute the PowerShell script.
steps:
- pwsh: |
<My Script>
env:
SYSTEM_ACCESSTOKEN: $(System.AccessToken)
displayName: 'My Task'
condition: succeeded()
- For unversed,
pwsh
is the cross-platform edition of PowerShell built on .NET Core / .NET 5+; by contrast,powershell
is the executable name of the legacy Windows PowerShell edition (v5.1-), built on the Windows-only .NET Framework (v4.8-). - The issue is ”System.Management.Automation’ is built on .Net Framework and ‘pwsh‘ can’t be used in this case.
Fix:
- Replace pwsh task with powershell task in YAML file.
steps:
- powershell: |
<My Script>
env:
SYSTEM_ACCESSTOKEN: $(System.AccessToken)
displayName: 'My Task'
condition: succeeded()
🙂
Categories: DevOps
PowerShell, pwsh