network-TDD
This post gives a quick overview of how to use network Test Driven Development framework. As an example I’ll use a simplified version of a typical enterprise network with a Data Centre/HQ and a Branch office. A new branch is being added and the task is to configure routing for that branch using a TDD approach. First we’ll devise a set of TDD scenarios to be tested and then, going through each one of them, modify routing to make sure those scenarios don’t fail (a so-called red-green-refactor approach)
Writing a custom Ansible module to verify TDD scenarios
IP Address Information Collection With Custom Ansible Modules
Ansible quickstart guide for Cisco IOS
Setting up development and test environments
In the following series of posts I will show how to build a simple Test-Driven Development framework for Cisco devices. This framework will allow a network engineer to define traffic patterns in a human-readable format and automatically check if those assumption hold. It will be built as a series of Ansible modules and playbooks. The idea is to show an example of how programming can be used by network engineers even now, before all devices acquire their own APIs as well as introduce some well-known programming paradigms and best practices to network engineers thereby making a small step towards networking nirvana a.k.a. SDN. The reader is assumed to have only a basic networking, linux and python programming skills