diff --git a/.github/workflows/go.yml b/.github/workflows/go.yml index 9e08c2f..0a63a59 100644 --- a/.github/workflows/go.yml +++ b/.github/workflows/go.yml @@ -15,14 +15,39 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 - + - name: Set up Go uses: actions/setup-go@v4 with: go-version: '1.20' + - name: Go Format + run: gofmt -s -w . && git diff --exit-code + + - name: Go Vet + run: go vet ./... + + - name: Go Tidy + run: go mod tidy && git diff --exit-code + + - name: Go Mod + run: go mod download + + - name: Go Mod Verify + run: go mod verify + + - name: Go Generate + run: go generate ./... && git diff --exit-code + + - name: Go Build + run: go build -o /dev/null ./... + + - name: Go Test + if: ${{ !inputs.skipTests }} + run: go test -v -count=1 -race -shuffle=on -coverprofile=coverage.txt ./... + + - name: Go Benchmark + run: go test -v -shuffle=on -run=- -bench=. -benchtime=1x ./... + - name: Build run: go build -v ./... - - - name: Test - run: go test -v ./...