Skip to content

Github action to convert go coverage files to lcov format

License

Notifications You must be signed in to change notification settings

jandelgado/gcov2lcov-action

Use this GitHub action with your project
Add this Action to an existing workflow or create a new one
View on Marketplace

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

22 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

gcov2lcov-action

Build Status

NOTE

The coverallsapp-action now supports the golang coverage format out of the box. You probably won't need this action anymore. Example:
      - name: Coveralls
        uses: coverallsapp/github-action@v2.3.0
        with:
          github-token: ${{ secrets.github_token }}
          file: coverage.out
          format: golang

What

Convert golang coverage files to lcov format. Works nicely with the coveralls github action and uses gcov2lcov under the hood.

Inputs

infile

Optional Name of the go coverage file. Default coverage.out.

outfile

Optional Name of the lcov file to write. Default coverage.lcov.

version

Optional Name of the specific gcov2lcov program version. Default latest.

working-directory

Optional Name of directory where gcov2lcov is run. Defaults to $GITHUB_WORKSPACE.

Outputs

No outputs.

Example usage

uses: jandelgado/gcov2lcov-action@v1
with:
  infile: coverage.out        # optional, default filename is `coverage.out`
  outfile: coverage.lcov      # optional, default filename is `coverage.lcov`
  version: v1.0.4             # optional, use specific `gcov2lcov` release version
  working-directory: testdata # optional, change working directory

Full example

coverage:
  runs-on: ubuntu-latest
  steps:
    - name: Install Go
      if: success()
      uses: actions/setup-go@v3
      with:
        go-version: 1.18
    - name: Checkout code
      uses: actions/checkout@v2
    - name: Calc coverage
      run: go test -v -covermode=count -coverprofile=coverage.out
    - name: Convert coverage to lcov
      uses: jandelgado/gcov2lcov-action@v1
    - name: Coveralls
      uses: coverallsapp/github-action@v1.1.2
      with:
        github-token: ${{ secrets.github_token }}
        path-to-lcov: coverage.lcov

See also example repository.

Author

Copyright © 2019 - 2022 Jan Delgado

License

MIT