Files
codecov-action/README.md
“ibrahim0814” 97fe500537 readme
2019-08-07 21:02:44 -07:00

2.2 KiB

Codecov GitHub Action

Easily upload coverage reports to Codecov from GitHub Actions

Usage

To integrate Codecov with your Actions pipeline, specify the name of this repository with a tag number as a step within your workflow.yml file. Optionally, you can choose to include up to four different inputs to customize the upload context.

Inside your .github/workflows/workflow.yml file:

steps:
- uses: actions/checkout@master
- uses: actions/codecov-action@v1
  with:
    token: ${{secrets.CODECOV_TOKEN}} #for private repos
    file: ./coverage.xml #optional
    flags: unittests #optional
    name: codecov-umbrella #optional

Note

: This assumes that you've set your Codecov token inside Settings > Secrets as CODECOV_TOKEN. If not, you can get an upload token for your specific repo on codecov.io. A token is not required for public repositories.

Arguments

Codecov's Action currently supports four inputs from the user: token, file, flags, and name. These inputs, along with their description and usage context are listed in the table below:

Input Description Usage
token Used to authorize coverage report uploads Required only for private repos
file Location of the coverage report Optional
flags Flag upload under a certain group Optional
name Custom defined name for the upload Optional

Example workflow.yml with Codecov Action

name: Example workflow for Codecov
on: [push]
jobs:
  run:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@master
    - name: Setup Python  
      uses: actions/setup-python@master
      with:
        version: 3.7
    - name: Generate coverage report
      run: |
        pip install pytest
        pip install pytest-cov
        pytest --cov=./ --cov-report=xml
    - name: Upload coverage to Codecov  
      uses: codecov/codecov-action@v1
      with:
        token: ${{secrets.CODECOV_TOKEN}}
        file: ./coverage.xml
        flags: unittests
        name: codecov-umbrella 

License

The code in this project is released under the MIT License.