# Pulled from https://gist.github.com/y0ssar1an/df2dab474520c4086926f672c52db139

# Use the latest Ubuntu environment (18.04 LTS) available on Travis
dist: xenial

language: go

# Force-enable Go modules. This will be unnecessary when Go 1.13 lands.
env:
  - GO111MODULE=on

# You don't need to test on very old versions of the Go compiler. It's the user's
# responsibility to keep their compiler up to date.
go:
  - 1.12.x

# Only clone the most recent commit.
git:
  depth: 1

# Skip the install step. Don't `go get` dependencies. Only build with the code
# in vendor/
install: true

# Don't email me the results of the test runs.
notifications:
  email: false

# Anything in before_script that returns a nonzero exit code will flunk the
# build and immediately stop. It's sorta like having set -e enabled in bash.
# Make sure golangci-lint is vendored.
before_script:
  - go install github.com/golangci/golangci-lint/cmd/golangci-lint

# Script always runs to completion (set +e). If we have linter issues AND a
# failing test, we want to see both. Configure golangci-lint with a
# .golangci.yml file at the top level of your repo.
script:
  - golangci-lint run       # Run a bunch of code checkers/linters in parallel
