name: build on: [push, pull_request] jobs: build: strategy: matrix: os: [ubuntu-latest] go-version: [1.13.x, 1.14.x, 1.15.x, 1.16.x] runs-on: ${{ matrix.os }} services: redis: image: redis ports: - 6379:6379 steps: - uses: actions/checkout@v2 - name: Set up Go uses: actions/setup-go@v2 with: go-version: ${{ matrix.go-version }} - name: Build run: go build -v ./... - name: Test run: go test -race -v -coverprofile=coverage.txt -covermode=atomic ./... - name: Benchmark Test run: go test -run=^$ -bench=. -loglevel=debug ./... - name: Upload coverage to Codecov uses: codecov/codecov-action@v1