1language: go
2
3sudo: false
4
5matrix:
6  fast_finish: true
7  allow_failures:
8    - go: tip
9
10go:
11- '1.11.x'
12- '1.12.x'
13- tip
14
15go_import_path: gopkg.in/square/go-jose.v2
16
17before_script:
18- export PATH=$HOME/.local/bin:$PATH
19
20before_install:
21# Install encrypted gitcookies to get around bandwidth-limits
22# that is causing Travis-CI builds to fail. For more info, see
23# https://github.com/golang/go/issues/12933
24- openssl aes-256-cbc -K $encrypted_1528c3c2cafd_key -iv $encrypted_1528c3c2cafd_iv -in .gitcookies.sh.enc -out .gitcookies.sh -d || true
25- bash .gitcookies.sh || true
26- go get github.com/wadey/gocovmerge
27- go get github.com/mattn/goveralls
28- go get github.com/stretchr/testify/assert
29- go get github.com/stretchr/testify/require
30- go get github.com/google/go-cmp/cmp
31- go get golang.org/x/tools/cmd/cover || true
32- go get code.google.com/p/go.tools/cmd/cover || true
33- pip install cram --user
34
35script:
36- go test . -v -covermode=count -coverprofile=profile.cov
37- go test ./cipher -v -covermode=count -coverprofile=cipher/profile.cov
38- go test ./jwt -v -covermode=count -coverprofile=jwt/profile.cov
39- go test ./json -v # no coverage for forked encoding/json package
40- cd jose-util && go build && PATH=$PWD:$PATH cram -v jose-util.t # cram tests jose-util
41- cd ..
42
43after_success:
44- gocovmerge *.cov */*.cov > merged.coverprofile
45- $HOME/gopath/bin/goveralls -coverprofile merged.coverprofile -service=travis-ci
46