NetDevOps Pipeline Part 4: Decoupling Logic with Jinja2 and YANG

In Part 3 of this series, we treated our physical network topology like software application code, using Containerlab to spin up our test sandbox in seconds. With our nodes live, how do we actually generate and push configurations to them? If you hardcode configuration blocks directly into your Ansible tasks, your playbooks quickly become unmanageable. The moment a VLAN ID changes, or you swap a router from a Nokia SR OS node to a Cisco instance, your entire automation framework collapses under its own weight. ...

July 13, 2026

NetDevOps Pipeline Part 3: Topology Orchestration with Containerlab

Up until now, our pipeline has focused on the management and mapping of data. We modeled our nodes inside our NetBox source of truth (Part 1), and then we built a dynamic handshake to pull that data straight into Ansible (Part 2). But there’s a missing link: Where are the actual routers coming from? If we have to manually spin up heavy virtual machines, map virtual interfaces, and configure bridge links every time we want to test our playbooks, we lose all the speed advantages of automation. ...

July 6, 2026