diff --git a/go/compose/input.go b/go/compose/input.go index e351d8b..6facaa3 100644 --- a/go/compose/input.go +++ b/go/compose/input.go @@ -55,6 +55,13 @@ type Input struct { // SharedSecretFor and GivenPairSecret would answer): held, to be made by the next send, only a person's to give, or // refused. A need with no entry here is one the next send would make. Credentials []Credential + + // Built is every repository the mesh has built (the keys of inv.Held): what tells a reference recorded with an address + // from an image a module runs straight from a public registry. + Built []string + // OperatorExport is every operator-sealed secret in the mesh, for a module that keeps them (inv.OperatorExport): sealed + // values the composition carries without opening. Nil when the mesh has no operator key. + OperatorExport *catalogue.KeptExport } // Node is one node of the mesh and what the composition reads about it. @@ -84,6 +91,17 @@ type Node struct { // SealingKey is the public key its secrets are sealed to (inv.SealingKeyOf); empty when it has none. A public key, so // nothing secret. SealingKey string + // Taken is the modules taken on it, for an adopted node (inv.Taken). + Taken []string + // OutwardLinks are the links it reported as facing outside it (inv.OutwardLinksOf). + OutwardLinks []string + // Networks are the networks it reported being attached to, as link and network (inv.MachineOf); NetworksSaid is whether + // its node-engine said any at all, which is not the same as saying none. + Networks []catalogue.AttachedNetwork + NetworksSaid bool + // Contract is the contract of its node-engine's newest statement (inv.HealthOf); Stated is whether it ever stated one. + Contract int + Stated bool } // Place is where a node is, as its placement says (inv.Overlay).