name: CI on: push: branches: [master] pull_request: jobs: test: name: Test runs-on: ubuntu-latest strategy: fail-fast: false matrix: go: ["1.12", "1.21", "1.22", "1.23"] steps: - name: Checkout repository uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - name: Set up Go uses: actions/setup-go@3041bf56c941b39c61721a86cd11f3bb1338122a # v5.2.0 with: go-version: ${{ matrix.go }} - name: Test # Cannot enable shuffle for now because some tests rely on global state and order # run: go test -race -v -shuffle=on ./... run: go test -race -v ./... lint: name: Lint runs-on: ubuntu-latest steps: - name: Checkout repository uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - name: Set up Go uses: actions/setup-go@3041bf56c941b39c61721a86cd11f3bb1338122a # v5.2.0 with: go-version: "1.23" - name: Lint uses: golangci/golangci-lint-action@971e284b6050e8a5849b72094c50ab08da042db8 # v6.1.1 with: version: v1.63.4