Codecov官方的actions使用了docker技术,这意味着我们需要生成Repository Upload Token
,这样Github Actions运行的时候,才可以上传覆盖率报告。
-
生成
Repository Upload Token
首先在codecov对应项目的设置里添加token,如下图所示:
-
在Github项目的设置中增加secrets
名称可以随意,我这里设置为CODECOV_TOKEN
,如下图所示:
-
编辑或新增Github Actions配置文件
在项目根目录新建以下文件:.github/workflows/***.yml
内容设置为:
name: Main workflow
on: [push]
jobs:
build:
runs-on: ubuntu-latest
strategy:
matrix:
java: [1.8]
fail-fast: false
services:
redis:
image: redis
ports:
- 6379:6379
steps:
- uses: actions/checkout@v1
- name: Set up JDK ${{matrix.java}}
uses: actions/setup-java@v1
with:
java-version: ${{matrix.java}}
- name: Run test
run: mvn test
- name: Build with Maven
run: mvn package -Dmaven.test.skip=true
- name: Upload coverage to Codecov
uses: codecov/codecov-[email protected]
with:
token: ${{secrets.CODECOV_TOKEN}}
file: ./zhuzhu-project/target/site/jacoco/jacoco.xml
最关键的内容为:
- name: Upload coverage to Codecov
uses: codecov/codecov-[email protected]
with:
token: ${{secrets.CODECOV_TOKEN}}
file: ./zhuzhu-project/target/site/jacoco/jacoco.xml
通过uses指定codecov action。
通过token参数指定token,这里的名称要和第二步在secrets中指定的名称一致。
通过file参数指定报告的准确位置。