Azure Devops Bash 说文件路径错误,但脚本"ls"显示它是正确的



Azure DevOps-我正在bash任务中为我的bash脚本获取##[error]Invalid file path '/home/vsts/work/1/s/docker-e2e'.

然而,- script: ls '$(System.DefaultWorkingDirectory)/docker-e2e'正确显示:

2021-06-21T17:03:29.2609773Z ls '/home/vsts/work/1/s/docker-e2e'
2021-06-21T17:03:29.2610385Z ========================== Starting Command Output ===========================
2021-06-21T17:03:29.2629573Z [command]/usr/bin/bash --noprofile --norc /home/vsts/work/_temp/f4f42ebe-2929-4239-8697-1e61770cf4df.sh
2021-06-21T17:03:29.2680715Z docker-compose-e2e.yml
2021-06-21T17:03:29.2682129Z wait-for-widgets-online.sh
2021-06-21T17:03:29.2891004Z ##[section]Finishing: CmdLine

我做错了什么?

stages:
- stage: e2e
displayName: run e2e tests
pool:
vmImage: "ubuntu-20.04"
jobs:
- job: runE2E
displayName: Run E2E
steps:
- script: ls $(System.DefaultWorkingDirectory)/docker-e2e
- task: Bash@3                                        
inputs:                                             
filePath: $(System.DefaultWorkingDirectory)/docker-e2e
script: wait-for-widgets-online.sh         

您可以通过filePath(应该是文件的路径,而不是目录(或script(应该是脚本的内容,而不是路径(将脚本内容传递给Bash任务。

在您的情况下,它应该只是:

- task: Bash@3                                        
inputs:                                             
filePath: $(System.DefaultWorkingDirectory)/docker-e2e/wait-for-widgets-online.sh

最新更新