Filter out docker overlay peers

This commit is contained in:
Alfonso Acosta
2016-10-24 17:20:07 +00:00
parent 8e4dfd7987
commit e80a01aab9
6 changed files with 49 additions and 22 deletions

View File

@@ -13,11 +13,17 @@ var WeaveRenderer = MakeMap(
// 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 {
peerPrefix, peerName := report.ParseOverlayNodeID(m.ID)
if peerPrefix != report.WeaveOverlayPeerPrefix {
return nil
}
var node = NewDerivedNode(peerName, m)
if _, ok := node.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}
return report.Nodes{peerName: node}
}