我希望能够提取我的Pylint评分并设置阈值。举个例子,如果分数低于5分,我想退出1;如果我的代码评分高于5分,我想退出0并继续我的Jenkins程序。
--fail-under
,它可以解决这个问题,而无需使用外部工具或脚本。pylint --fail-under=8 python_code.py
pylint --fail-under=9 $(git ls-files '*.py')
。 - Bilal--fail-under=10
参数时不会明显失败吗? - El Dudeimport sys
from pylint import lint
THRESHOLD = 5
if len(sys.argv) < 2:
raise ArgumentError("Module to evaluate needs to be the first argument")
run = lint.Run([sys.argv[1]], do_exit=False)
score = run.linter.stats['global_note']
if score < THRESHOLD:
sys.exit(1)
安装
> pip install pylint-fail-under
您可以按如下方式检查阈值
pylint-fail-under --fail_under=6.0 test_pylint_code.py (or path)
错误: 得分5.3999999999999995小于6.0的失败下限值
否则,它将返回退出代码0。if score_value >= linter.config.fail_under:
sys.exit(0)
else:
# We need to make sure we return a failing exit code in this case.
# So we use self.linter.msg_status if that is non-zero, otherwise we just return 1.
raise RuntimeError(f"ERROR: score {score_value} is less than fail-under value {linter.config.fail_under}")
#sys.exit(8)