diff --git a/lib/travis/build/script/go.rb b/lib/travis/build/script/go.rb index efd6193489..766cad5717 100644 --- a/lib/travis/build/script/go.rb +++ b/lib/travis/build/script/go.rb @@ -67,7 +67,7 @@ def install sh.echo 'Using Go 1.5 Vendoring, not checking for Godeps' end sh.else do - sh .if '-f Godeps/Godeps.json' do + sh.if '-f Godeps/Godeps.json' do sh.export 'GOPATH', '${TRAVIS_BUILD_DIR}/Godeps/_workspace:$GOPATH', retry: false sh.export 'PATH', '${TRAVIS_BUILD_DIR}/Godeps/_workspace/bin:$PATH', retry: false @@ -78,6 +78,10 @@ def install end end end + sh.elif '-f Gopkg.toml' do + fetch_dep + sh.cmd 'dep ensure', retry: true, timing: true, assert: true, echo: true + end end sh.if uses_make do @@ -197,6 +201,21 @@ def update_gimme sh.cmd %Q'gimme #{DEFAULTS[:go]} &>/dev/null' end + def fetch_dep + dep = "$HOME/gopath/bin/dep" + + sh.mkdir "$HOME/gopath/bin", echo: false, recursive: true + + sh.if "$TRAVIS_OS_NAME = osx" do + sh.cmd "curl -sL -o #{dep} https://github.com/golang/dep/releases/download/v0.3.2/dep-darwin-amd64", echo: false + end + sh.elif "$TRAVIS_OS_NAME = linux" do + sh.cmd "curl -sL -o #{dep} https://github.com/golang/dep/releases/download/v0.3.2/dep-linux-amd64", echo: false + end + + sh.cmd "chmod +x #{dep}" + end + def fetch_godep godep = "${TRAVIS_HOME}/gopath/bin/godep"