language: go

addons:
  hosts:
    - quic.clemente.io

go:
  - 1.x
  - tip

matrix:
  allow_failures:
    - go: tip
  fast_finish: true

before_install:
  # Decrypts a script that installs an authenticated cookie
  # for git to use when cloning from googlesource.com.
  # Bypasses "bandwidth limit exceeded" errors.
  # See github.com/golang/go/issues/12933
 - if [ "$TRAVIS_PULL_REQUEST" = "false" ]; then openssl aes-256-cbc -K $encrypted_3df18f9af81d_key -iv $encrypted_3df18f9af81d_iv -in dist/gitcookie.sh.enc -out dist/gitcookie.sh -d; fi

install:
  - if [ "$TRAVIS_PULL_REQUEST" = "false" ]; then bash dist/gitcookie.sh; fi
  - go get -t ./...
  - go get golang.org/x/lint/golint
  - go get github.com/FiloSottile/vendorcheck
  - go get github.com/alecthomas/gometalinter

script:
  - gometalinter --install
  - gometalinter --disable-all -E vet -E gofmt -E misspell -E ineffassign -E goimports -E deadcode --tests --vendor ./...
  - vendorcheck ./...
  - go test -race ./...

after_script:
  - golint ./...
