在某些构建中,AppVeyor 的工作服失败,但在其他构建中却没有

coveralls fails on AppVeyor in some builds but not in others

我正在尝试pytest publish coverage reports from AppVeyor. I've added the repository's encrypted token as explained here。这是 appveyor.yml 文件:

environment:
  COVERALLS_REPO_TOKEN:
    secure: 2NJ5Ct55cHJ9WEg3xbSqCuv0rdgzzb6pnzOIG5OkMbTndw3wOBrXntWFoQrXiMFi
    # this is pytest's token in coveralls.io, encrypted
    # using pytestbot account as detailed here:
    # https://www.appveyor.com/docs/build-configuration#secure-variables

install:
  - echo Installed Pythons
  - dir c:\Python*

  # install pypy using choco (redirect to a file and write to console in case
  # choco install returns non-zero, because choco install python.pypy is too
  # noisy)
  - choco install python.pypy > pypy-inst.log 2>&1 || (type pypy-inst.log & exit /b 1)
  - set PATH=C:\tools\pypy\pypy;%PATH% # so tox can find pypy
  - echo PyPy installed
  - pypy --version

  - C:\Python35\python -m pip install tox

build: false  # Not a C# project, build stuff at the test step instead.

test_script:
  # - C:\Python35\python -m tox  
  - C:\Python35\python -m tox -e coveralls  # coveralls is not in tox's envlist

奇怪的是,有些构建通过了另一些则没有。 PR 上持续集成的 GH 面板显示 continuous-integration/appveyor/branch 的构建按预期通过并发布了覆盖范围,但 continuous-integration/appveyor/pr 构建失败并显示以下消息:

You have to provide either repo_token in .coveralls.yml, or launch via Travis or CircleCI
ERROR: InvocationError: 'C:\projects\pytest\.tox\coveralls\Scripts\coveralls.EXE' 

有谁知道发生了什么事吗?

出于安全原因,在 PR 构建期间未设置安全变量。