From 84da2d6a2913c7bb00e952ae61195319cb7c8d6d Mon Sep 17 00:00:00 2001 From: Duco van Amstel Date: Sun, 2 Dec 2018 23:07:15 +0000 Subject: [PATCH] Clean-up TravisCI config and add test coverage (#633) --- .travis.yml | 33 +++++++++++++++++---------------- 1 file changed, 17 insertions(+), 16 deletions(-) diff --git a/.travis.yml b/.travis.yml index b8d9b9f5..8c889002 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,6 +1,7 @@ language: go go: - 1.11.x +go_import_path: github.com/42wim/matterbridge # we have everything vendored install: true @@ -9,9 +10,8 @@ git: depth: 200 env: + global: - GOOS=linux GOARCH=amd64 - # - GOOS=windows GOARCH=amd64 - #- GOOS=linux GOARCH=arm matrix: # It's ok if our code fails on unstable development versions of Go. @@ -25,25 +25,26 @@ notifications: email: false before_script: + # Get version info from tags. - MY_VERSION=$(git describe --tags) -# - GO_FILES=$(find . -iname '*.go' | grep -v /vendor/) # All the .go files, excluding vendor/ - - PKGS=$(go list ./... | grep -v /vendor/) # All the import paths, excluding vendor/ -# - go get github.com/golang/lint/golint # Linter -#- go get honnef.co/go/tools/cmd/megacheck # Badass static analyzer/linter + # Retrieve the golangci-lint linter binary. - curl -sfL https://install.goreleaser.com/github.com/golangci/golangci-lint.sh | bash -s -- -b $GOPATH/bin v1.12.2 + # Retrieve and prepare CodeClimate's test coverage reporter. + - curl -L https://codeclimate.com/downloads/test-reporter/test-reporter-latest-linux-amd64 > ./cc-test-reporter + - chmod +x ./cc-test-reporter + - ./cc-test-reporter before-build - -# Anything in before_script: that returns a nonzero exit code will -# flunk the build and immediately stop. It's sorta like having -# set -e enabled in bash. script: - #- test -z "$(go fmt ./...)" # Fail if a .go file hasn't been formatted with gofmt - - go test -v -race $PKGS # Run all the tests with the race detector enabled - #- go vet $PKGS # go vet is the official Go static analyzer + # Run the linter. - golangci-lint run --enable-all -D lll -D errcheck -D gosec -D maligned -D prealloc -D gocyclo -D gochecknoglobals - #- megacheck $PKGS # "go vet on steroids" + linter + # Run all the tests with the race detector and generate coverage. + - go test -v -race -coverprofile c.out ./... + # Run the build script to generate the necessary binaries and images. - /bin/bash ci/bintray.sh - #- golint -set_exit_status $PKGS # one last linter + +after_script: + # Upload test coverage to CodeClimate. + - ./cc-test-reporter after-build --exit-code ${TRAVIS_TEST_RESULT} deploy: provider: bintray @@ -52,4 +53,4 @@ deploy: file: ci/deploy.json user: 42wim key: - secure: "CeXXe6JOmt7HYR81MdWLua0ltQHhDdkIeRGBFbgd7hkb1wi8eF9DgpAcQrTso8NIlHNZmSAP46uhFgsRvkuezzX0ygalZ7DCJyAyn3sAMEh+UQSHV1WGThRehTtidqRGjetzsIGSwdrJOWil+XTfbO1Z8DGzfakhSuAZka8CM4BAoe3YeP9rYK8h+84x0GHfczvsLtXZ3mWLvQuwe4pK6+ItBCUg0ae7O7ZUpWHy0xQQkkWztY/6RAzXfaG7DuGjIw+20fhx3WOXRNpHCtZ6Bc3qERCpk0s1HhlQWlrN9wDaFTBWYwlvSnNgvxxMbNXJ6RrRJ0l0bA7FUswYwyroxhzrGLdzWDg8dHaQkypocngdalfhpsnoO9j3ApJhomUFJ3UoEq5nOGRUrKn8MPi+dP0zE4kNQ3e4VNa1ufNrvfpWolMg3xh8OXuhQdD5wIM5zFAbRJLqWSCVAjPq4DDPecmvXBOlIial7oa312lN5qnBnUjvAcxszZ+FUyDHT1Grxzna4tMwxY9obPzZUzm7359AOCCwIQFVB8GLqD2nwIstcXS0zGRz+fhviPipHuBa02q5bGUZwmkvrSNab0s8Jo7pCrel2Rz3nWPKaiCfq2WjbW1CLheSMkOQrjsdUd1hhbqNWFPUjJPInTc77NAKCfm5runv5uyowRLh4NNd0sI=" + secure: "CeXXe6JOmt7HYR81MdWLua0ltQHhDdkIeRGBFbgd7hkb1wi8eF9DgpAcQrTso8NIlHNZmSAP46uhFgsRvkuezzX0ygalZ7DCJyAyn3sAMEh+UQSHV1WGThRehTtidqRGjetzsIGSwdrJOWil+XTfbO1Z8DGzfakhSuAZka8CM4BAoe3YeP9rYK8h+84x0GHfczvsLtXZ3mWLvQuwe4pK6+ItBCUg0ae7O7ZUpWHy0xQQkkWztY/6RAzXfaG7DuGjIw+20fhx3WOXRNpHCtZ6Bc3qERCpk0s1HhlQWlrN9wDaFTBWYwlvSnNgvxxMbNXJ6RrRJ0l0bA7FUswYwyroxhzrGLdzWDg8dHaQkypocngdalfhpsnoO9j3ApJhomUFJ3UoEq5nOGRUrKn8MPi+dP0zE4kNQ3e4VNa1ufNrvfpWolMg3xh8OXuhQdD5wIM5zFAbRJLqWSCVAjPq4DDPecmvXBOlIial7oa312lN5qnBnUjvAcxszZ+FUyDHT1Grxzna4tMwxY9obPzZUzm7359AOCCwIQFVB8GLqD2nwIstcXS0zGRz+fhviPipHuBa02q5bGUZwmkvrSNab0s8Jo7pCrel2Rz3nWPKaiCfq2WjbW1CLheSMkOQrjsdUd1hhbqNWFPUjJPInTc77NAKCfm5runv5uyowRLh4NNd0sI=" \ No newline at end of file