diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index d6599d5..0000000 --- a/.travis.yml +++ /dev/null @@ -1,29 +0,0 @@ -language: go - -services: - - docker - -sudo: false - -matrix: - include: - - go: "1.9.x" - - go: "1.10.x" - - go: "1.11.x" - env: - - GO111MODULE=off - - go: "1.11.x" - env: - - GO111MODULE=on - - go: "tip" - env: - - GO111MODULE=off - - go: "tip" - env: - - GO111MODULE=on - allow_failures: - - go: "tip" - -install: make deps - -script: make ci-test diff --git a/azure-pipelines.yml b/azure-pipelines.yml new file mode 100644 index 0000000..144c4a2 --- /dev/null +++ b/azure-pipelines.yml @@ -0,0 +1,59 @@ +variables: + GOBIN: "$(GOPATH)/bin" # Go binaries path + GOPATH: "$(system.defaultWorkingDirectory)/gopath" # Go workspace path + modulePath: "$(GOPATH)/src/github.com/$(build.repository.name)" # Path to the module"s code + +jobs: +- job: Windows + pool: + vmImage: "vs2017-win2016" + strategy: + matrix: + go 1.9: + go_version: "1.9" + go 1.10: + go_version: "1.10" + go 1.11 (on): + go_version: "1.11" + GO111MODULE: "on" + go 1.11 (off): + go_version: "1.11" + GO111MODULE: "off" + steps: + - template: azure-tests.yml + +- job: macOS + pool: + vmImage: "macOS-10.13" + strategy: + matrix: + go 1.9: + go_version: "1.9" + go 1.10: + go_version: "1.10" + go 1.11 (on): + go_version: "1.11" + GO111MODULE: "on" + go 1.11 (off): + go_version: "1.11" + GO111MODULE: "off" + steps: + - template: azure-tests.yml + +- job: Linux + pool: + vmImage: "ubuntu-16.04" + strategy: + matrix: + go 1.9: + go_version: "1.9" + go 1.10: + go_version: "1.10" + go 1.11 (on): + go_version: "1.11" + GO111MODULE: "on" + go 1.11 (off): + go_version: "1.11" + GO111MODULE: "off" + steps: + - template: azure-tests.yml diff --git a/azure-tests.yml b/azure-tests.yml new file mode 100644 index 0000000..eea5822 --- /dev/null +++ b/azure-tests.yml @@ -0,0 +1,19 @@ +steps: + - task: GoTool@0 + inputs: + version: $(go_version) + - task: Bash@3 + inputs: + targetType: inline + script: | + mkdir -p "$(GOBIN)" + mkdir -p "$(GOPATH)/pkg" + mkdir -p "$(modulePath)" + shopt -s extglob + mv !(gopath) "$(modulePath)" + displayName: "Setup Go Workspace" + - script: | + go get -t -v ./... + go test -race ./... + workingDirectory: "$(modulePath)" + displayName: "Tests"