name: Build and test on: workflow_dispatch: push: branches: - master pull_request: branches: - master jobs: lint: name: Linters runs-on: ubuntu-latest steps: - name: Check out code into the Go module directory uses: actions/checkout@v3 - name: Set up Go uses: actions/setup-go@v4 with: go-version: 1.21.6 cache: false - name: Vet run: go vet ./... - name: Check for CRLF endings uses: erclu/check-crlf@v1 - name: Staticcheck uses: dominikh/staticcheck-action@v1.3.0 with: install-go: false version: "latest" test-nocache: strategy: matrix: go-version: [ 1.21.6 ] os: [ubuntu-latest, macos-latest, windows-latest] runs-on: ${{ matrix.os }} name: test needs: lint steps: - name: Check out code into the Go module directory uses: actions/checkout@v3 - name: Set up Go uses: actions/setup-go@v4 with: go-version: 1.21.6 cache: false - name: All tests run: go test -v ./...