kubectl/bin/pre-commit.sh

26 lines
375 B
Bash
Executable File

#!/bin/bash
rc=0
go_dirs() {
go list -f '{{.Dir}}' ./... | tr '\n' '\0'
}
echo "Running go fmt"
go_dirs | xargs -0 gofmt -s -d -l
rc=$((rc || $?))
echo "Running goimports"
diff -u <(echo -n) <(go_dirs | xargs -0 goimports -l)
rc=$((rc || $?))
echo "Running go vet"
go vet -all ./...
rc=$((rc || $?))
echo "Running go test"
go test -v ./...
rc=$((rc || $?))
exit $rc