Add Weave peers view

This commit is contained in:
Alfonso Acosta
2016-10-24 15:33:30 +00:00
parent 405a705943
commit 8e4dfd7987
8 changed files with 73 additions and 10 deletions

View File

@@ -31,4 +31,5 @@ var (
SelectService = TopologySelector(report.Service)
SelectDeployment = TopologySelector(report.Deployment)
SelectReplicaSet = TopologySelector(report.ReplicaSet)
SelectOverlay = TopologySelector(report.Overlay)
)

23
render/weave.go Normal file
View File

@@ -0,0 +1,23 @@
package render
import (
"github.com/weaveworks/scope/probe/overlay"
"github.com/weaveworks/scope/report"
)
// WeaveRenderer is a Renderer which produces a renderable weave topology.
var WeaveRenderer = MakeMap(
MapWeaveIdentity,
SelectOverlay,
)
// MapWeaveIdentity maps an overlay topology node to a weave topology node.
func MapWeaveIdentity(m report.Node, _ report.Networks) report.Nodes {
var node = m
if _, ok := m.Latest.Lookup(report.HostNodeID); !ok {
nickname, _ := m.Latest.Lookup(overlay.WeavePeerNickName)
id := MakePseudoNodeID(UnmanagedID, nickname)
node = NewDerivedPseudoNode(id, m)
}
return report.Nodes{node.ID: node}
}