1sudo: required
2# Ubuntu 18.04 "Bionic", https://docs.travis-ci.com/user/reference/bionic/
3# Kernel 5.0.0-1026-gcp
4dist: bionic
5
6language: go
7go_import_path: github.com/hanwen/go-fuse
8
9go:
10  - 1.10.x
11  - 1.11.x
12  - 1.12.x
13  - 1.13.x
14  - 1.14.x
15  - 1.15.x
16  - master
17
18env:
19  - GOMAXPROCS=1
20  # vvv = native `nproc`
21  - GOMAXPROCS=
22
23matrix:
24 fast_finish: true
25 allow_failures:
26   - go: master
27
28before_install:
29  - sudo apt-get install -qq pkg-config fuse
30  - sudo modprobe fuse
31  - sudo chmod 666 /dev/fuse
32  - sudo chown root:$USER /etc/fuse.conf
33
34install:
35  - go get -t ./...
36  - go get -t -race ./...
37
38# Travis CI has a no-output-timeout of 10 minutes.
39# Set "go test -timeout" lower so we get proper backtraces
40# on a hung test.
41# The tests sometimes hang in a way that "go test -timeout"
42# does not work anymore. Use the external "timeout" command
43# as backup, triggering 1 minute later.
44script:
45  - set -e # fail fast
46  - timeout -s QUIT -k 10s 90s go test -failfast -timeout 1m -p 1 -v ./fs
47  - timeout -s QUIT -k 10s 6m  go test -failfast -timeout 5m -p 1 -v ./...
48  - set +e # restore
49