У меня есть первый встроенный сценарий PowerShell, в котором я фильтрую каталог своего тестового проекта и устанавливаю его значение для переменной с именем testProjectPath
.
- task: PowerShell@2
displayName: "Get tests path"
inputs:
targetType: "inline"
script: |
$testpath = Get-ChildItem -Filter *Tests.csproj -Recurse | Select-Object Directory -First 1
Write-Host "##vso[task.setvariable variable=testProjectPath]$testpath"
И затем у меня есть второй сценарий, который пытается Set-Location
на основе пути, представленного в моей переменной testProjectPath
.
- task: PowerShell@2
displayName: "Run mutations"
inputs:
targetType: "inline"
script: |
Set-Location $env:testProjectPath
Но каждый раз, когда я пытаюсь запустить этот конвейер, я получаю следующее сообщение об ошибке:
@{Directory=D:\a\1\s\Wms.PickingCheck.Tests}
Set-Location : Cannot find drive. A drive with the name '@{Directory=D' does not exist.
At D:\a\_temp\752e8e31-b8ac-4f43-9ee0-248f6b12577c.ps1:4 char:1
+ Set-Location $env:testProjectPath
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : ObjectNotFound: (@{Directory=D:String) [Set-Location], DriveNotFoundException
+ FullyQualifiedErrorId : DriveNotFound,Microsoft.PowerShell.Commands.SetLocationCommand
Что такое Я здесь не так делаю?