首页 > 解决方案 > Azure DevOps 工件目录问题

问题描述

当我尝试使用 Azure DevOps 管道运行 Powershell 脚本时,出现错误“ENOENT: no such file or directory, stat '/azp/agent/_work/1/a/repo1/folder1/Powershell-newscript.ps1

日志文件建议该文件位于:/azp/agent/_work/1/ s /repo1/folder1/Powershell-newscript.ps1

如何将此文件从“s”移动到“a”?/azp/agent/_work/1/ s到 /azp/agent/_work/1/ a

   - checkout: self
   - checkout: IAC

      - task: CopyFiles@2
        inputs:
          targetFolder: '$(Build.ArtifactStagingDirectory)'

      - task: PublishBuildArtifacts@1
        displayName: 'Building Artifact now'
        inputs:
          pathToPublish: '$(Build.ArtifactStagingDirectory)'
          artifactName: 'drop-self'

   steps:
      - task: DownloadBuildArtifacts@0
        inputs:
          artifactName: 'drop-self'
          downloadPath: '$(System.ArtifactsDirectory)'
     

      - task: AzurePowerShell@5
        inputs:
          azureSubscription: ${{parameters.subName}}
          ScriptType: 'FilePath'
          ScriptPath: '$(System.ArtifactsDirectory)/repo1/folder1/Powershell-newscript.ps1'
          azurePowerShellVersion: 'LatestVersion'

能否请你帮忙?谢谢!

标签: azureazure-devops

解决方案


如果您想使用来自特定构建的 Artifacts,您需要引用发布管道中的文件路径,如下所示:'$(Pipeline.Workspace)/{DefinedNameofCIPipelineInReleaseFile}/{NameOfArtifacts}/{URL}*.ps1'

resources:
 pipelines:
  - pipeline: CI
    source: 'build-pipeline-CI'

steps:
 - task: AzurePowerShell@5
   inputs:
     azureSubscription: ${{parameters.subName}}
     ScriptType: 'FilePath'
     ScriptPath: '$(Pipeline.Workspace)/CI/drop-self/folder1/Powershellnewscript.ps1'
     azurePowerShellVersion: 'LatestVersion'

推荐阅读