language: go

# fuse on travis
sudo: required
dist: bionic # Ubuntu 18.04 "Bionic", https://docs.travis-ci.com/user/reference/bionic/

git:
  depth: 300

# Build with the lastest relevant Go versions
# Relevance is determined from:
# * https://golang.org/dl/
# * https://packages.debian.org/search?keywords=golang&searchon=names&exact=1&suite=all&section=all
# * https://packages.ubuntu.com/search?keywords=golang&searchon=names&exact=1&suite=all&section=all
go:
  - 1.11.x # Debian 10 "Buster"
  - 1.12.x # Ubuntu 19.10
  - 1.13.x # Debian 11 "Bullseye"
  - stable

before_install:
  - sudo apt-get install -qq fuse
  - sudo modprobe fuse
  - sudo chmod 666 /dev/fuse
  - sudo chown root:$USER /etc/fuse.conf

install:
  - go get -d -t -v ./...
  - wget https://github.com/golang/dep/releases/download/v0.5.0/dep-linux-amd64 -O dep
  - chmod +x dep

script:
  - openssl version
  - df -Th / /tmp
  - go build
  - ./build-without-openssl.bash
  - ./build.bash
  - ./gocryptfs -speed
  - ./test.bash
  - make root_test
  - ./crossbuild.bash
  - echo "rebuild with locked dependencies"
  - echo travis_fold:start:dep
  - ./dep ensure -v
  - echo travis_fold:end:dep
  - ./build.bash