diff --git a/Formula/packetbeat.rb b/Formula/packetbeat.rb new file mode 100644 index 0000000000..9d15305183 --- /dev/null +++ b/Formula/packetbeat.rb @@ -0,0 +1,56 @@ +class Packetbeat < Formula + desc "Lightweight Shipper for Network Data" + homepage "https://www.elastic.co/products/beats/packetbeat" + url "https://github.com/elastic/beats/archive/v5.0.1.tar.gz" + sha256 "707bea8d8eb8cc358bddfcaffa5e90da2a09fab00f2fc53608cc013c79743117" + + head "https://github.com/elastic/beats.git" + + depends_on "go" => :build + + def install + gopath = buildpath/"gopath" + (gopath/"src/github.com/elastic/beats").install Dir["{*,.git,.gitignore}"] + + ENV["GOPATH"] = gopath + + cd gopath/"src/github.com/elastic/beats/packetbeat" do + system "make" + libexec.install "packetbeat" + + inreplace "packetbeat.yml", "packetbeat.interfaces.device: any", "packetbeat.interfaces.device: en0" + + (etc/"packetbeat").install("packetbeat.yml", "packetbeat.template.json", "packetbeat.template-es2x.json") + end + + (bin/"packetbeat").write <<-EOS.undent + #!/bin/sh + exec #{libexec}/packetbeat -path.config #{etc}/packetbeat \ + -path.home #{prefix} -path.logs #{var}/log/packetbeat \ + -path.data #{var}/packetbeat $@ + EOS + end + + plist_options :manual => "packetbeat" + + def plist; <<-EOS.undent + + + + + Label + #{plist_name} + Program + #{opt_bin}/packetbeat + RunAtLoad + + + + EOS + end + + test do + system "#{bin}/packetbeat", "--devices" + end +end