.github/workflows/test.yml
name: Test
on: [push, pull_request]
jobs:
go-code-lint:
name: lint using golangci
if: github.event_name == 'push'
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: golangci-lint
uses: golangci/golangci-lint-action@v2
with:
version: v1.38.0
proto-code-format:
name: format proto using clang-format
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: DoozyX/clang-format-lint-action@v0.11
with:
source: '.'
extensions: 'proto'
clangFormatVersion: 11
unit-test:
name: unit test and coverage
runs-on: ubuntu-latest
steps:
- name: Set up Go 1.x
uses: actions/setup-go@v2
with:
go-version: ^1.16.x
- name: Checkout code
uses: actions/checkout@v2
- run: go test -race ./... -coverprofile=coverage.out -covermode=atomic
- name: Codecov
uses: codecov/codecov-action@v1.0.13