0

我正在尝试在 Python 中为烧瓶应用程序进行代码覆盖并将其上传到codecov.io平台上。我试图通过 Gitlab CI 直接上传它,但它没有发生。它不断抛出以下错误:

HTTP 400
Provided token is not a UUID.

我创建了一个帐户codecov.io并将其连接到我的 gitlab 帐户并选择了一个要使用的存储库。我在 gitlab CI 中添加了令牌作为环境变量

在此处输入图像描述

我的 CI 文件是:

image: ubuntu:18.04

variables:
    CODECOV_TOKEN: $CODECOV_TOKEN

stages:
    - coverage
    - deploy

coverage:
    stage: coverage
    before_script:
        - apt-get -y update
        - apt-get -y install curl python3-pip python3.7 zip
        - python3.7 -m pip install --upgrade pip
        - python3.7 -V
        - pip3.7 install -r requirements.txt

    script:
        - coverage run -m pytest
        - coverage report -m

    after_script:
       - bash <(curl -s https://codecov.io/bash) -t $CODECOV_TOKEN

错误截图:

在此处输入图像描述

但是,当我bash <(curl -s https://codecov.io/bash) -t <token>从 linux 终端执行时,它已成功上传。

我在做什么错误?

4

1 回答 1

1

GitLab CI/CD 变量的屏幕截图显示该CODECOV_TOKEN变量是“受保护的”:GitLab 仅将变量导出到在受保护分支和标签上运行的管道。

在未受保护的分支上运行管道时,CODECOV_TOKEN未设置,并且 codecov 脚本失败。

要使变量可用于在所有分支上运行的管道,请编辑变量并取消选中“保护变量”。

于 2020-06-05T19:27:02.550 回答