language: go

matrix:
  include:
    - go: 1.4.3
      env: NOVET=true # No bundled vet.
    - go: 1.5.4
    - go: 1.6.4
    - go: 1.7.5
    - go: 1.8
    - go: tip
  allow_failures:
    - go: tip

before_install:
  - mkdir -p bin
  - curl -Lso bin/shellcheck https://github.com/caarlos0/shellcheck-docker/releases/download/v0.4.3/shellcheck
  - chmod +x bin/shellcheck
script:
  - PATH=$PATH:$PWD/bin go test -v ./...
  - go build
  - diff -u <(echo -n) <(gofmt -d -s .)
  - if [ -z $NOVET ]; then
      diff -u <(echo -n) <(go tool vet . 2>&1 | grep -vE 'ExampleCommand|bash_completions.*Fprint');
    fi
