[Get-Content],ItemNotFoundException:VSTS PowerShell任务中的PathNotFound,Microsoft.PowerShell.Commands.GetContentCommand

时间:2018-04-20 14:46:20

标签: powershell azure-pipelines-release-pipeline arm-template

使用powershell命令行

进行ARM模板部署

$manifestDetails = Get-Content ./manifest.json | ConvertFrom-Json

将找到并运行.json文件。它在本地PC 中正常运行。但是,当我通过 VSTS PowerShell任务运行同一行时,则会收到以下问题:

  

在C:\ XX_work \ r7 \ a \ CIBuild \ drop \ XX \ XX \ Deployment \ Manif   estAzureDeployment.ps1:191 char:21   + $ manifestDetails = Get-Content ./manifest.json | ConvertFrom JSON的   + ~~~~~~~~~~~~~~~~~~~~~~~~~~~       + CategoryInfo:ObjectNotFound:(C:\ XX ... a \ manifest.json:String)[Get-Content],ItemNotFoundEx
  ception       + FullyQualifiedErrorId:PathNotFound,Microsoft.PowerShell.Commands.GetContentCommand

所以,请为此问题提供合适的建议

1 个答案:

答案 0 :(得分:1)

使用绝对路径来代替built-in release variable

例如,System.DefaultWorkingDirectory$(System.DefaultWorkingDirectory)):在部署版本期间将工件下载到的目录。如果需要将工件下载到代理,则在每次部署之前清除该目录。与Agent.ReleaseDirectorySystem.ArtifactsDirectory相同。