运行pylint时,Azure DevOps管道失败

问题描述 投票:0回答:1

作为我的Azure DevOps管道的第一步,我希望通过运行pylint来验证我的Python文件。这导致管道失败。我的项目可以通过以下地址公开获得:

https://dev.azure.com/gcr84/dark-matter-attractor

其中所有代码在存储库中都可见,并且管道运行历史记录可用。我想了解为什么pylinting会导致管道失败,并且我尝试添加以下命令:

"|| pylint-exit $?"

(请参阅https://pypi.org/project/pylint-exit/),

以及

failOnStderr: false

(请参阅https://docs.microsoft.com/en-us/azure/devops/pipelines/tasks/utility/bash?view=azure-devops

下面是我的bash命令:

- bash: find -name '*.py' | xargs pylint || pylint-exit $?
  displayName: 'Run pylint'
  failOnStderr: false
bash azure-devops pylint
1个回答
0
投票

检查日志后,这似乎是与Azure DevOps无关的预期行为。

  - fatal message issued

  - error message issued

  - refactor message issued

  - convention message issued

  - usage error

Fatal messages detected.  Failing...

这引发了错误退出代码1,最后使bash任务失败。

配置为failOnStderr=false时,只有在将任何错误写入stderr时,此任务才会阻止失败。并非所有错误都被忽略。

如果您不想处理诸如python-pylint 'C0103:Invalid constant name之类的错误,解决方法应添加continueOnError: true

- bash: find -name '*.py' | xargs pylint || pylint-exit $?
  displayName: 'Run pylint'
  failOnStderr: false
  continueOnError: true

这将强制您的构建继续运行。此外,您还可以尝试使用一些第三方扩展来运行pylink,例如-[PyLint Checker

© www.soinside.com 2019 - 2024. All rights reserved.