go_import_path: github.com/minio/minio
sudo: required

services:
 - docker

dist: trusty

language: go

# this ensures PRs based on a local branch are not built twice
# the downside is that a PR targeting a different branch is not built
# but as a workaround you can add the branch to this list
branches:
  only:
    - master

matrix:
  include:
    - os: linux
      env:
        - ARCH=x86_64
      go: 1.10.3
      script:
        - make
        - diff -au <(gofmt -s -d cmd) <(printf "")
        - diff -au <(gofmt -s -d pkg) <(printf "")
        - make test GOFLAGS="-timeout 15m -race -v"
        - make verify
        - make coverage
        - cd browser && yarn && yarn test && cd ..

before_install:
- nvm install stable

after_success:
- bash <(curl -s https://codecov.io/bash)