Our own @steiler has volunteered to tackle a problem of inter-node dependency management and produced three mighty PRs #1013, #1022, #1026. Dependency Manager (or DM for short) gives containerlab superpowers to decide the scheduling order of the lab nodes.
Scheduling the order of the nodes is important. Nodes with dynamic management IPs should start after the nodes with static IPs, nodes with shared network namespace should start after the donor node is ready, and so on...
These implicit inter-node dependencies are handled by containerlab in the background, so you don't have to worry. Sometimes, though, you may want to influence the order of nodes scheduling yourself. For example, you may want to start a telemetry collector after the network nodes are running. For that reason, a new node property
wait-for has been introduced.
wait-for section, you can specify node names that this node will wait for before being allowed to get scheduled.