Add go mod tidy -diff to CI to ensure go modules files remain tidy
#972
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: CI Build + Unit Test | |
| on: | |
| push: | |
| branches: ["main"] | |
| pull_request: | |
| merge_group: | |
| jobs: | |
| build: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 | |
| - name: Set up Go | |
| uses: actions/setup-go@0aaccfd150d50ccaeb58ebd88d36e91967a5f35b # v5.4.0 | |
| with: | |
| go-version-file: go.mod | |
| - name: Build | |
| run: go version && go build -v ./... | |
| - name: Test | |
| # -count=2 ensures that test fixtures cleanup after themselves | |
| # because any leftover state will generally cause the second run to fail. | |
| run: go test -shuffle=on -count=2 -race -cover -timeout=5m ./... | |
| lint: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 | |
| - name: Set up Go | |
| uses: actions/setup-go@0aaccfd150d50ccaeb58ebd88d36e91967a5f35b # v5.4.0 | |
| with: | |
| go-version-file: go.mod | |
| - run: go mod tidy -diff | |
| - run: go vet ./... | |
| - name: Check gofmt passes | |
| run: | | |
| if [ -n "$(gofmt -l .)" ]; then | |
| echo "gofmt failed, please run gofmt -w ." | |
| exit 1 | |
| fi |