Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func EffectiveState ¶ added in v0.2.0
func EffectiveState(node *Node, g *Graph) (docker.ContainerState, []string)
EffectiveState returns the display state for a node, accounting for depends_on conditions. waitingOn lists unsatisfied dependency names when blocked.
Types ¶
type Graph ¶
type Graph struct {
Roots []*Node // nodes with no dependencies (in-degree 0)
ByName map[string]*Node // O(1) service lookup
Ordered []*Node // all nodes in topological order (Kahn's)
Visual []*Node // nodes in depth-first render order (matches tree row positions)
}
Graph holds the full dependency graph.
type Node ¶
type Node struct {
Name string
Deps []string // all dependency names (sorted, for display)
DepConditions map[string]string // dep name → condition (e.g. "service_healthy")
Children []*Node // all services that depend on this node (full edge set, used by Kahn's)
TreeChildren []*Node // dependants for which this node is the primary parent (used by renderer)
State docker.ContainerState
Level int // render depth: root = 0
ContainerID string // Docker container ID (empty when pending / not yet running)
}
Node represents a single service in the dependency graph.
Click to show internal directories.
Click to hide internal directories.