12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667 |
- #!/bin/sh
- LATEST_STABLE_SUPPORTED_GO_VERSION="1.11"
- main() {
- if local_go_version_is_latest_stable
- then
- run_gofmt
- run_golint
- run_govet
- fi
- run_unit_tests
- }
- local_go_version_is_latest_stable() {
- go version | grep -q $LATEST_STABLE_SUPPORTED_GO_VERSION
- }
- log_error() {
- echo "$*" 1>&2
- }
- run_gofmt() {
- GOFMT_FILES=$(gofmt -l .)
- if [ -n "$GOFMT_FILES" ]
- then
- log_error "gofmt failed for the following files:
- $GOFMT_FILES
- please run 'gofmt -w .' on your changes before committing."
- exit 1
- fi
- }
- run_golint() {
- GOLINT_ERRORS=$(golint ./... | grep -v "Id should be")
- if [ -n "$GOLINT_ERRORS" ]
- then
- log_error "golint failed for the following reasons:
- $GOLINT_ERRORS
- please run 'golint ./...' on your changes before committing."
- exit 1
- fi
- }
- run_govet() {
- GOVET_ERRORS=$(go tool vet ./*.go 2>&1)
- if [ -n "$GOVET_ERRORS" ]
- then
- log_error "go vet failed for the following reasons:
- $GOVET_ERRORS
- please run 'go tool vet ./*.go' on your changes before committing."
- exit 1
- fi
- }
- run_unit_tests() {
- if [ -z "$NOTEST" ]
- then
- log_error 'Running short tests...'
- env AMQP_URL= go test -short
- fi
- }
- main
|