1language: go
2
3os:
4  - linux
5  - osx
6  - windows
7
8arch:
9  - amd64
10  - arm64
11
12go:
13  - 1.12.x
14  - 1.13.x
15  - 1.14.x
16  - master
17
18script:
19  - go vet ./...
20  - go test -race ./...
21  - go test -tags=noasm ./...
22
23stages:
24  - gofmt
25  - test
26
27matrix:
28  allow_failures:
29    - go: 'master'
30  fast_finish: true
31  include:
32    - stage: gofmt
33      go: 1.14.x
34      os: linux
35      arch: amd64
36      script:
37        - diff <(gofmt -d .) <(printf "")
38        - diff <(gofmt -d ./private) <(printf "")
39        - go install github.com/klauspost/asmfmt/cmd/asmfmt
40        - diff <(asmfmt -d .) <(printf "")
41    - stage: i386
42      go: 1.14.x
43      os: linux
44      arch: amd64
45      script:
46        - GOOS=linux GOARCH=386 go test .
47