name: checks on: - push - pull_request env: GOPROXY: https://goproxy.io,direct GOPATH: $HOME/go/path GOCACHE: $HOME/go/cache jobs: lint: name: check and test runs-on: ubuntu-latest steps: - name: cache go path id: cache-go-path uses: https://github.com/actions/cache@v3 with: path: $HOME/go/path key: go_path-${{ github.repository }}-${{ github.ref_name }} restore-keys: | go_path-${{ github.repository }}- go_path- - name: cache go cache id: cache-go-cache uses: https://github.com/actions/cache@v3 with: path: $HOME/go/cache key: go_cache-${{ github.repository }}-${{ github.ref_name }} restore-keys: | go_cache-${{ github.repository }}- go_cache- - uses: actions/setup-go@v3 with: go-version: 1.20 - uses: actions/checkout@v3 - name: lint run: go install golang.org/x/lint/golint@latest && golint ./... - name: vet run: go vet - name: test run: go test -v -race -coverprofile=coverage.txt -covermode=atomic ./...