PowerShell@1 is retired: replace it with PowerShell@2
The short answer
- Retirement date
- Removal date
- . Pipelines that still use it fail after removal.
- Replacement
PowerShell@2- Kind of migration
- manual migration
- Automatic rewrite
- No. This task needs a manual migration. trasloco modernize --check still finds the step.
- Recommended action
- Migrate this step manually to PowerShell@2, reviewing the documented behavior and input differences.
Official sources
Last verified:
Why does my pipeline show a retirement error for PowerShell@1?
On , Azure Pipelines shows a retirement error for PowerShell@1, but the run does not fail. On , pipelines that still use PowerShell@1 fail.
Find it in your pipelines
With trasloco:
trasloco modernize --check
Install trasloco from the latest release.
With plain grep, nothing to install:
grep -rniwF 'PowerShell@1' --include='*.yml' --include='*.yaml' .
How to migrate
Migrate this step manually to PowerShell@2, reviewing the documented behavior and input differences.
The task definition of the replacement is linked under official sources above.
PowerShell@1 retirement FAQ
Is PowerShell@1 deprecated?
Yes. PowerShell@1 is retired on 2026-10-15. Azure Pipelines shows a retirement error, but the run does not fail until removal.
When does PowerShell@1 stop working?
PowerShell@1 is removed on 2027-03-15. Pipelines that still use it fail after removal.
What should I use instead of PowerShell@1?
Replace PowerShell@1 with PowerShell@2.
Related retired tasks
- AndroidBuild@1 — manual migration
- AndroidSigning@1 — manual migration
- AndroidSigning@2 — manual migration
- AzureCLI@0 — manual migration
- AzureMonitor@0 — manual migration