language: go

go:
  - 1.8.3
  - tip

matrix:
  allow_failures:
    - go: tip
  fast_finish: true

env:
  - "PATH=/home/travis/gopath/bin:$PATH"

install:
  - go get ./...
  - go get github.com/mitchellh/gox
  # Install gometalinter and certain linters
  - go get github.com/alecthomas/gometalinter
  - go get github.com/client9/misspell/cmd/misspell
  - go get github.com/gordonklaus/ineffassign
  - go get golang.org/x/tools/cmd/goimports
  - go get github.com/tsenart/deadcode

script:
  - gometalinter --disable-all -E vet -E gofmt -E misspell -E ineffassign -E goimports -E deadcode --exclude="rice-box.go" --tests ./...
  - go test ./... -timeout 30s

before_deploy:
  - cd cmd/filemanager
  - mkdir dist
  - gox -output "dist/{{.OS}}-{{.Arch}}-{{.Dir}}"

deploy:
  provider: releases
  api_key: $GITHUB_TOKEN
  file_glob: true
  file: dist/*
  skip_cleanup: true
  on:
    tags: true