使用 github-actions 中的 python-coveralls 返回“无法提交覆盖范围:422 客户端错误”

问题描述

Coveralls python 包装器 (python-coveralls) 最近收到一个重大更新 (2.2.0 -> 3.0.0),我的 github-actions 工作流不再运行。

这是我工作流程的相关部分:

  test:
    runs-on: ubuntu-latest
    steps:
    {... non-relevant steps...}
    - name: Run test suite
      run: tox -e $(echo py${{ matrix.python-version }}-mg${{ matrix.PYMONGO }} | tr -d . | sed -e 's/pypypy/pypy/') -- -a "--cov=my_project"
    - name: Send coverage to Coveralls
      env:
        GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
      run: coveralls

这曾经适用于以前版本的 python-coveralls,所以 tox 命令不是问题

这是我收到的错误:

Submitting coverage to coveralls.io...
Could not submit coverage: 422 Client Error: Unprocessable Entity for url: https://coveralls.io/api/v1/jobs
resubmitting with id None-158455276967659442
Traceback (most recent call last):
  File "/opt/hostedtoolcache/Python/3.7.9/x64/lib/python3.7/site-packages/coveralls/api.py",line 252,in wear
    response.raise_for_status()
  File "/opt/hostedtoolcache/Python/3.7.9/x64/lib/python3.7/site-packages/requests/models.py",line 943,in raise_for_status
    raise HTTPError(http_error_msg,response=self)
requests.exceptions.HTTPError: 422 Client Error: Unprocessable Entity for url: https://coveralls.io/api/v1/jobs

During handling of the above exception,another exception occurred:

Traceback (most recent call last):
  File "/opt/hostedtoolcache/Python/3.7.9/x64/lib/python3.7/site-packages/coveralls/cli.py",line 85,in main
    result = coverallz.wear()
  File "/opt/hostedtoolcache/Python/3.7.9/x64/lib/python3.7/site-packages/coveralls/api.py",line 255,in wear
    raise CoverallsException('Could not submit coverage: {}'.format(e))
coveralls.exception.CoverallsException: Could not submit coverage: 422 Client Error: Unprocessable Entity for url: https://coveralls.io/api/v1/jobs

解决方法

您可以尝试在发行说明中添加服务名称作为状态并在此处提及: https://github.com/coveralls-clients/coveralls-python/issues/251

run: coveralls --service=github

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...