migrate CI to GitHub Actions
use codecov.io to report on code coverage. fix a few issues raised by golangci-lint
This commit is contained in:
18
.github/workflows/linter.yaml
vendored
Normal file
18
.github/workflows/linter.yaml
vendored
Normal file
@@ -0,0 +1,18 @@
|
||||
on: [push, pull_request]
|
||||
name: linter
|
||||
|
||||
jobs:
|
||||
lint:
|
||||
strategy:
|
||||
matrix:
|
||||
go-version: [1.x]
|
||||
platform: [ubuntu-latest]
|
||||
runs-on: ${{ matrix.platform }}
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
|
||||
- name: golangci-lint
|
||||
uses: golangci/golangci-lint-action@v2
|
||||
with:
|
||||
version: v1.41
|
||||
46
.github/workflows/tests.yaml
vendored
Normal file
46
.github/workflows/tests.yaml
vendored
Normal file
@@ -0,0 +1,46 @@
|
||||
on: [push, pull_request]
|
||||
name: tests
|
||||
|
||||
jobs:
|
||||
test:
|
||||
strategy:
|
||||
matrix:
|
||||
go-version: [1.x, 1.15.x]
|
||||
platform: [ubuntu-latest]
|
||||
include:
|
||||
# only update test coverage stats with the most recent go version on linux
|
||||
- go-version: 1.x
|
||||
platform: ubuntu-latest
|
||||
update-coverage: true
|
||||
runs-on: ${{ matrix.platform }}
|
||||
|
||||
permissions:
|
||||
# styfle/cancel-workflow-action needs to be able to cancel existing action workflows
|
||||
actions: write
|
||||
|
||||
steps:
|
||||
- name: Cancel previous
|
||||
uses: styfle/cancel-workflow-action@89f242ee29e10c53a841bfe71cc0ce7b2f065abc #0.9.0
|
||||
with:
|
||||
access_token: ${{ github.token }}
|
||||
|
||||
- uses: actions/setup-go@v2
|
||||
with:
|
||||
go-version: ${{ matrix.go-version }}
|
||||
- uses: actions/checkout@v2
|
||||
|
||||
- name: Cache go modules
|
||||
uses: actions/cache@v2
|
||||
with:
|
||||
path: |
|
||||
~/.cache/go-build
|
||||
~/go/pkg/mod
|
||||
key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}
|
||||
restore-keys: ${{ runner.os }}-go-
|
||||
|
||||
- name: Run go test
|
||||
run: go test -v -race -coverprofile coverage.txt -covermode atomic ./...
|
||||
|
||||
- name: Upload coverage to Codecov
|
||||
if: ${{ matrix.update-coverage }}
|
||||
uses: codecov/codecov-action@v2
|
||||
Reference in New Issue
Block a user