无法在Azure Pipelines中运行PythonScript任务

时间:2020-07-16 21:08:54

标签: python azure azure-devops yaml azure-pipelines

我有一个正在Azure管道中测试的Python脚本,如果将yaml文件编辑为以下代码,则该脚本可以正常工作:
- script: python Directory/test_script.py
我想使用PythonScript任务运行它,因为我需要将参数传递到脚本中,而似乎仅使用 - script方法就不支持。
我的yaml文件包含:

  inputs:
    scriptSource: 'filePath' 
    scriptPath: python Directory/test_script.py 
    arguments: --hello world

管道执行时显示以下错误:
##[error]ENOENT: no such file or directory, stat '/home/vsts/work/1/s/python
如何使脚本正确执行,以便输入参数?我还尝试过更改workingDirectory参数。

1 个答案:

答案 0 :(得分:1)

如果您要运行python脚本,则可以使用实例Python Script任务:

steps:
- task: PythonScript@0
  inputs:
    scriptSource: 'filePath' # Options: filePath, inline
    scriptPath: $(Build.SourcesDirectory)/stackoverflow/45/script.py # Required when scriptSource == filePath
    #script: # Required when scriptSource == inline
    #arguments: # Optional
    #pythonInterpreter: # Optional
    #workingDirectory: # Optional
    #failOnStderr: false # Optional
- bash: python $(Build.SourcesDirectory)/stackoverflow/45/script.py
- script: python $(Build.SourcesDirectory)/stackoverflow/45/script.py

您的错误是将python放在scriptPath: python Directory/test_script.py中。这应该只有脚本路径,但您也要在此处放置python,因此代理程序会尝试找到python文件夹。