Azure Pipelines中Python脚本执行失败:路径非文件错误求助
排查Azure Pipelines Python脚本路径报错问题
1. 核对路径的相对/绝对逻辑
- Azure Pipelines的
filePath默认以代理工作目录(通常对应变量$(System.DefaultWorkingDirectory))为基准,使用相对路径时,必须确保脚本文件确实在该目录的对应子路径下。 - 禁止使用本地机器的绝对路径(如
C:\local\script.py),代理服务器的目录结构与本地完全不同,必须用管道变量或相对路径。
2. 检查路径大小写匹配度
- Linux/macOS代理对路径大小写严格敏感,比如实际文件是
test_script.py,配置写Test_Script.py就会触发报错;Windows代理虽不敏感,但也建议保持一致避免意外问题。
3. 验证YAML配置语法正确性
- 确保
filePath的路径没有多余空格、引号错误,示例如下:
错误写法:
正确写法:- task: PythonScript@0 inputs: filePath: 'scripts/test.py' # 路径前的多余空格会导致识别异常- task: PythonScript@0 inputs: filePath: 'scripts/test.py'
4. 确认代理工作目录中存在目标文件
- 在Python脚本任务前添加命令行任务,打印目录结构验证文件位置:
- task: CmdLine@2 inputs: script: | # Windows代理执行此命令 dir $(System.DefaultWorkingDirectory) /s # Linux/macOS代理执行此命令 # ls -la $(System.DefaultWorkingDirectory)
5. 检查前置文件检出/生成任务
- 如果脚本来自代码仓库,确认
Checkout任务已正确检出对应文件(默认会自动检出,但自定义仓库配置后可能遗漏);如果脚本是前置任务生成的,确认前置任务已成功执行并将文件放到指定路径。
内容的提问来源于stack exchange,提问作者Varada Santosh
相关产品推荐
相关产品推荐

