go_import_path: github.com/minio/minio language: go addons: apt: packages: - shellcheck services: - docker # 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 dist: trusty sudo: required env: - ARCH=x86_64 - CGO_ENABLED=0 - GO111MODULE=on go: 1.13.x script: - make - diff -au <(gofmt -s -d cmd) <(printf "") - diff -au <(gofmt -s -d pkg) <(printf "") - for d in $(go list ./... | grep -v browser); do CGO_ENABLED=1 go test -v -race --timeout 15m "$d"; done - make verifiers - make crosscompile - make verify - cd browser && yarn && yarn test && cd .. - bash -c 'shopt -s globstar; shellcheck mint/**/*.sh' - os: windows env: - ARCH=x86_64 - CGO_ENABLED=0 - GO111MODULE=on go: 1.13.x script: - go build --ldflags="$(go run buildscripts/gen-ldflags.go)" -o %GOPATH%\bin\minio.exe - CGO_ENABLED=1 go test -v --timeout 20m ./... before_script: # Add an IPv6 config - see the corresponding Travis issue # https://github.com/travis-ci/travis-ci/issues/8361 - if [[ "${TRAVIS_OS_NAME}" == "linux" ]]; then sudo sh -c 'echo 0 > /proc/sys/net/ipv6/conf/all/disable_ipv6'; fi before_install: - if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then nvm install 11.10.1 ; fi