name: Build on: - pull_request permissions: contents: read concurrency: group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} cancel-in-progress: true jobs: test: strategy: matrix: go: ["stable"] os: [ubuntu-latest, macos-latest, windows-latest] runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v5 - name: Set up Go uses: actions/setup-go@v6 with: go-version: ${{ matrix.go }} - name: Build run: go build -v ./... - name: Test run: go test -v ./... lint: strategy: matrix: go: ["stable"] os: [ubuntu-latest] name: lint runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v5 - name: Set up Go uses: actions/setup-go@v6 with: go-version: ${{ matrix.go }} cache: false - name: golangci-lint uses: golangci/golangci-lint-action@v7 with: # Required: the version of golangci-lint is required and must be specified without patch version: we always use the latest patch version. version: v2.0