formatWrite writes the context.
(fmtCtx formatter.Context, nodes client.NodeListResult, info client.SystemInfoResult)
| 100 | |
| 101 | // formatWrite writes the context. |
| 102 | func formatWrite(fmtCtx formatter.Context, nodes client.NodeListResult, info client.SystemInfoResult) error { |
| 103 | nodeCtx := &nodeContext{ |
| 104 | HeaderContext: formatter.HeaderContext{ |
| 105 | Header: formatter.SubHeaderContext{ |
| 106 | "ID": nodeIDHeader, |
| 107 | "Self": selfHeader, |
| 108 | "Hostname": hostnameHeader, |
| 109 | "Status": formatter.StatusHeader, |
| 110 | "Availability": availabilityHeader, |
| 111 | "ManagerStatus": managerStatusHeader, |
| 112 | "EngineVersion": engineVersionHeader, |
| 113 | "TLSStatus": tlsStatusHeader, |
| 114 | }, |
| 115 | }, |
| 116 | } |
| 117 | return fmtCtx.Write(nodeCtx, func(format func(subContext formatter.SubContext) error) error { |
| 118 | for _, node := range nodes.Items { |
| 119 | if err := format(&nodeContext{ |
| 120 | n: node, |
| 121 | info: info.Info.Swarm, |
| 122 | }); err != nil { |
| 123 | return err |
| 124 | } |
| 125 | } |
| 126 | return nil |
| 127 | }) |
| 128 | } |
| 129 | |
| 130 | type nodeContext struct { |
| 131 | formatter.HeaderContext |
searching dependent graphs…