Golang静态检查
golangci-lint安装及运行
1 2 3 4 5 6 7 8 9 |
go get -u github.com/golangci/golangci-lint pushd ${GOPATH}/pkg/mod/github.com/golangci/golangci-lint@v1.41.1/cmd/golangci-lint go build cp golangci-lint /usr/bin popd #运行 golangci-lint run |
code_check.sh
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
#!/usr/bin/env bash function Fail() { echo "Abort with FAILs." exit 1 } echo -e "Process go vet...\c" go vet $(go list ./... | grep -v /vendor/) || Fail echo "PASS" echo -e "Process ci-lint...\c" which golangci-lint 1>/dev/null || (echo "Installing golangci-lint" && go install github.com/golangci/golangci-lint/cmd/golangci-lint@v1.32.2) golangci-lint run --timeout 10m || Fail echo "PASS" echo -e "Process go test...\c" go test $(go list ./... | grep -v /vendor/) -timeout=10s || Fail echo "PASS" echo "All check passed." |