Skip to content

ci: codecov

ci: codecov #17

Workflow file for this run

name: build
# Trigger the workflow on push or pull request
on:
push:
branches: [ 'main' ]
pull_request:
branches: [ 'main' ]
workflow_dispatch:
inputs:
manual:
description: Manual run (bypass default conditions)
type: boolean
required: true
default: true
jobs:
build:
strategy:
matrix:
platform: [ubuntu-latest]
go-version: [ '1.22' ]
name: Build
runs-on: ${{ matrix.platform }}
steps:
- name: Setup Go
uses: actions/setup-go@v5
with:
go-version: ${{ matrix.go-version }}
cache: true
cache-dependency-path: |
**/go.sum
**/go.mod
- name: Checkout
uses: actions/checkout@v4
- name: Gather dependencies
run: make dep
- name: Run coverage
run: go test -race -coverprofile=coverage.txt -covermode=atomic ./...
- name: Upload coverage
uses: codecov/codecov-action@v4
with:
token: ${{ secrets.CODECOV_TOKEN }}
- name: Build
run: make build
lint:
strategy:
matrix:
platform: [ubuntu-latest]
go-version: [ '1.22' ]
name: Lint
runs-on: ${{ matrix.platform }}
steps:
- name: Setup Go
uses: actions/setup-go@v5
with:
go-version: ${{ matrix.go-version }}
cache: true
cache-dependency-path: |
**/go.sum
**/go.mod
- name: Checkout
uses: actions/checkout@v4
- name: golangci-lint
uses: golangci/golangci-lint-action@v6
with:
version: latest
args: >
--exclude-use-default=true
--exclude='Error return value of .(w\.Write). is not checked'
--exclude='Error return value of `io\.Copy` is not checked'