From b0318351487a4f171abe6bad10fcf4e0a9335e1d Mon Sep 17 00:00:00 2001 From: Tom Wilkie Date: Fri, 5 Jun 2015 12:11:18 +0000 Subject: [PATCH] Fixup experimental, add a makefile and add it to circle to stop experimental getting broken again. --- .gitignore | 1 + circle.yml | 1 + experimental/Makefile | 16 ++++++++++++++++ experimental/bridge/main.go | 12 +++++++----- experimental/graphviz/handle.go | 6 ++++-- experimental/graphviz/main.go | 4 +++- experimental/oneshot/main.go | 4 +++- 7 files changed, 35 insertions(+), 9 deletions(-) create mode 100644 experimental/Makefile diff --git a/.gitignore b/.gitignore index 15cbc6452..d9e1c3de5 100644 --- a/.gitignore +++ b/.gitignore @@ -43,6 +43,7 @@ experimental/fixprobe/fixprobe experimental/genreport/genreport experimental/graphviz/graphviz experimental/oneshot/oneshot +experimental/_integration/_integration experimental/example/qotd/qotd experimental/example/goapp/app *sublime-project diff --git a/circle.yml b/circle.yml index b70d62941..35744c76c 100644 --- a/circle.yml +++ b/circle.yml @@ -38,6 +38,7 @@ test: - cd $SRCDIR; make - cd $SRCDIR; ./bin/test - cd $SRCDIR; make client-test + - cd $SRCDIR/experimental; make post: - goveralls -repotoken $COVERALLS_REPO_TOKEN -coverprofile=$SRCDIR/profile.cov -service=circleci || true - cd $SRCDIR; cp coverage.html $CIRCLE_ARTIFACTS diff --git a/experimental/Makefile b/experimental/Makefile new file mode 100644 index 000000000..1c5363686 --- /dev/null +++ b/experimental/Makefile @@ -0,0 +1,16 @@ +.PHONY: all test clean + +DIRS=$(shell find . -maxdepth 2 -name *.go -printf "%h\n" | uniq) +TARGETS=$(join $(patsubst %,%/,$(DIRS)),$(DIRS)) + +all: $(TARGETS) + +$(TARGETS): + go get -tags netgo ./$(@D) + go build -ldflags "-extldflags \"-static\"" -tags netgo -o $@ ./$(@D) + +test: + go test ./... + +clean: + go clean ./... diff --git a/experimental/bridge/main.go b/experimental/bridge/main.go index 93277fb94..5d6856bb2 100644 --- a/experimental/bridge/main.go +++ b/experimental/bridge/main.go @@ -50,7 +50,9 @@ func main() { // Collector deals with the probes, and generates a single merged report // every second. c := xfer.NewCollector(*batch) - c.AddAddresses(fixedAddresses) + for _, addr := range fixedAddresses { + c.Add(addr) + } defer c.Stop() publisher, err := xfer.NewTCPPublisher(*listen) @@ -81,8 +83,8 @@ func interrupt() chan os.Signal { type collector interface { Reports() <-chan report.Report - RemoveAddress(string) - AddAddress(string) + Remove(string) + Add(string) } type publisher xfer.Publisher @@ -143,7 +145,7 @@ func discover(c collector, p publisher, fixed []string) { if _, ok := lastSeen[addr]; !ok { if interestingAddress(localNets, addr) { log.Printf("discovery %v: potential probe address", addr) - c.AddAddress(addressToDial(addr)) + c.Add(addressToDial(addr)) } else { log.Printf("discovery %v: non-probe address", addr) } @@ -164,7 +166,7 @@ func discover(c collector, p publisher, fixed []string) { // anything. log.Printf("discovery %v: traffic timeout", addr) delete(lastSeen, addr) - c.RemoveAddress(addressToDial(addr)) + c.Remove(addressToDial(addr)) } } } diff --git a/experimental/graphviz/handle.go b/experimental/graphviz/handle.go index c30cee2ea..922d52703 100644 --- a/experimental/graphviz/handle.go +++ b/experimental/graphviz/handle.go @@ -14,7 +14,9 @@ import ( func handleTXT(r Reporter) http.HandlerFunc { return func(w http.ResponseWriter, req *http.Request) { w.Header().Set("Content-Type", "text/plain") - dot(w, r.Report().Process.RenderBy(mapFunc(req), classView(req))) + dot(w, r.Report().Process.RenderBy(mapFunc(req), nil)) + + //report.Render(r.Report(), report.SelectEndpoint, mapFunc(req), report.NoPseudoNode)) } } @@ -30,7 +32,7 @@ func handleSVG(r Reporter) http.HandlerFunc { cmd.Stdout = w - dot(wc, r.Report().Process.RenderBy(mapFunc(req), classView(req))) + dot(wc, r.Report().Process.RenderBy(mapFunc(req), nil)) wc.Close() w.Header().Set("Content-Type", "image/svg+xml") diff --git a/experimental/graphviz/main.go b/experimental/graphviz/main.go index 67ac84946..7aa189a7d 100644 --- a/experimental/graphviz/main.go +++ b/experimental/graphviz/main.go @@ -27,7 +27,9 @@ func main() { xfer.MaxBackoff = 10 * time.Second c := xfer.NewCollector(*batch) - c.AddAddresses(strings.Split(*probes, ",")) + for _, addr := range strings.Split(*probes, ",") { + c.Add(addr) + } defer c.Stop() lifo := NewReportLIFO(c, *window) defer lifo.Stop() diff --git a/experimental/oneshot/main.go b/experimental/oneshot/main.go index 01c645a4d..9147e636d 100644 --- a/experimental/oneshot/main.go +++ b/experimental/oneshot/main.go @@ -29,7 +29,9 @@ func main() { // Collector deals with the probes, and generates merged reports. xfer.MaxBackoff = 1 * time.Second c := xfer.NewCollector(1 * time.Second) - c.AddAddresses(strings.Split(*probes, ",")) + for _, addr := range strings.Split(*probes, ",") { + c.Add(addr) + } defer c.Stop() report := report.NewReport()