|
|
@@ -0,0 +1,76 @@
|
|
|
+version: 2.0
|
|
|
+
|
|
|
+jobs:
|
|
|
+ # Base test configuration for Go library tests Each distinct version should
|
|
|
+ # inherit this base, and override (at least) the container image used.
|
|
|
+ "test": &test
|
|
|
+ docker:
|
|
|
+ - image: circleci/golang:latest
|
|
|
+ working_directory: /go/src/github.com/gorilla/websocket
|
|
|
+ steps: &steps
|
|
|
+ - checkout
|
|
|
+ - run: go version
|
|
|
+ - run: go get -t -v ./...
|
|
|
+ # Only run gofmt, vet & lint against the latest Go version
|
|
|
+ - run: >
|
|
|
+ if [[ "$LATEST" = true ]]; then
|
|
|
+ go get -u golang.org/x/lint/golint
|
|
|
+ golint ./...
|
|
|
+ fi
|
|
|
+ - run: >
|
|
|
+ if [[ "$LATEST" = true ]]; then
|
|
|
+ diff -u <(echo -n) <(gofmt -d .)
|
|
|
+ fi
|
|
|
+ - run: >
|
|
|
+ if [[ "$LATEST" = true ]]; then
|
|
|
+ go vet -v .
|
|
|
+ fi
|
|
|
+ - run: if [[ "$LATEST" = true ]]; then go vet -v .; fi
|
|
|
+ - run: go test -v -race ./...
|
|
|
+
|
|
|
+ "latest":
|
|
|
+ <<: *test
|
|
|
+ environment:
|
|
|
+ LATEST: true
|
|
|
+
|
|
|
+ "1.12":
|
|
|
+ <<: *test
|
|
|
+ docker:
|
|
|
+ - image: circleci/golang:1.12
|
|
|
+
|
|
|
+ "1.11":
|
|
|
+ <<: *test
|
|
|
+ docker:
|
|
|
+ - image: circleci/golang:1.11
|
|
|
+
|
|
|
+ "1.10":
|
|
|
+ <<: *test
|
|
|
+ docker:
|
|
|
+ - image: circleci/golang:1.10
|
|
|
+
|
|
|
+ "1.9":
|
|
|
+ <<: *test
|
|
|
+ docker:
|
|
|
+ - image: circleci/golang:1.9
|
|
|
+
|
|
|
+ "1.8":
|
|
|
+ <<: *test
|
|
|
+ docker:
|
|
|
+ - image: circleci/golang:1.8
|
|
|
+
|
|
|
+ "1.7":
|
|
|
+ <<: *test
|
|
|
+ docker:
|
|
|
+ - image: circleci/golang:1.7
|
|
|
+
|
|
|
+workflows:
|
|
|
+ version: 2
|
|
|
+ build:
|
|
|
+ jobs:
|
|
|
+ - "latest"
|
|
|
+ - "1.12"
|
|
|
+ - "1.11"
|
|
|
+ - "1.10"
|
|
|
+ - "1.9"
|
|
|
+ - "1.8"
|
|
|
+ - "1.7"
|