57 lines
1.9 KiB
Ruby
57 lines
1.9 KiB
Ruby
class Dep < Formula
|
|
desc "Go dependency management tool"
|
|
homepage "https://github.com/golang/dep"
|
|
url "https://github.com/golang/dep.git",
|
|
:tag => "v0.5.3",
|
|
:revision => "192eb4499a075a59ab6c191a9ba9dac9445625e4"
|
|
head "https://github.com/golang/dep.git"
|
|
|
|
bottle do
|
|
cellar :any_skip_relocation
|
|
sha256 "4708bad2967b388d3f828d555f43692ba767c45ee388263f5451317b98a6d7e6" => :mojave
|
|
sha256 "939b4de062495a176b8b9fa16a415140f1c152c28cfa375ee6b09bc46fcc6b26" => :high_sierra
|
|
sha256 "ef957bf4f72b37a5ce0355895781e50797cba663b200b02d18cd7b2c749b6712" => :sierra
|
|
end
|
|
|
|
depends_on "go"
|
|
|
|
conflicts_with "deployer", :because => "both install `dep` binaries"
|
|
|
|
def install
|
|
ENV["GOPATH"] = buildpath
|
|
(buildpath/"src/github.com/golang/dep").install buildpath.children
|
|
cd "src/github.com/golang/dep" do
|
|
ENV["DEP_BUILD_PLATFORMS"] = "darwin"
|
|
ENV["DEP_BUILD_ARCHS"] = "amd64"
|
|
system "hack/build-all.bash"
|
|
bin.install "release/dep-darwin-amd64" => "dep"
|
|
prefix.install_metafiles
|
|
end
|
|
end
|
|
|
|
test do
|
|
# Default HOMEBREW_TEMP is /tmp, which is actually a symlink to /private/tmp.
|
|
# `dep` bails without `.realpath` as it expects $GOPATH to be a "real" path.
|
|
ENV["GOPATH"] = testpath.realpath
|
|
project = testpath/"src/github.com/project/testing"
|
|
(project/"hello.go").write <<~EOS
|
|
package main
|
|
|
|
import "fmt"
|
|
import "github.com/Masterminds/vcs"
|
|
|
|
func main() {
|
|
fmt.Println("Hello World")
|
|
}
|
|
EOS
|
|
cd project do
|
|
system bin/"dep", "init"
|
|
assert_predicate project/"vendor", :exist?, "Failed to init!"
|
|
inreplace "Gopkg.toml", /(version = ).*/, "\\1\"=1.11.0\""
|
|
system bin/"dep", "ensure"
|
|
assert_match "795e20f90", (project/"Gopkg.lock").read
|
|
output = shell_output("#{bin}/dep status")
|
|
assert_match %r{github.com/Masterminds/vcs\s+1.11.0\s}, output
|
|
end
|
|
end
|
|
end
|