The controller imports mesh-host/validate through a replace onto the forge that holds it, and every build — the build agent's go build in a fresh toolchain container, the Dockerfile's go mod download — would have fetched it through the public proxy and checksum database at build time: a merge breaking main on the network, the class Phase 1 removes. vendor/ is committed; go builds from it with nothing fetched, and refuses to build when it and go.mod disagree, so a pin moved without go mod vendor fails at once. The Dockerfile copies vendor/ and builds with GOPROXY=off.
18 lines
314 B
YAML
18 lines
314 B
YAML
language: go
|
|
sudo: false
|
|
go:
|
|
- 1.9.x
|
|
- 1.10.x
|
|
|
|
install:
|
|
- go get -t ./...
|
|
- go get github.com/mattn/goveralls
|
|
|
|
script:
|
|
- go fmt ./...
|
|
- go vet ./...
|
|
- go test -v
|
|
- go test -v --race
|
|
- go test -v -covermode=count -coverprofile=coverage.out
|
|
- $HOME/gopath/bin/goveralls -coverprofile coverage.out -service travis-ci
|