Difficulty: Beginner
Estimated Time: 10 minutes

Step 1. Introduction to Genie

Genie is a Python library solution for PyATS which contains all the tools needed for Network Test Automation. Genie bundled with the modular architecture of the PyATS framework accelerates and simplifies development of network test automation, while leveraging all the perks of the Python programming language and promoting the development of agnostic libraries. Genie is redefining how network test scripters interact with devices through libraries and avoiding functional programming.

Genie is used internally within Cisco for automating network testing and has also been released externally through Cisco DevNet. This means that the same tests which are used internally at Cisco during product development can also be executed externally on a customer setup. This is massive news for automation within and outside of Cisco!

Objectives

In this learning lab you are going to:

  • Learn about the benefits of Genie
  • Learn about Genie Operational Objects (genie.ops)
  • Learn about Genie Configuration Objects (genie.conf)
  • Install Genie Packages
  • Connect to devices via CLI using Genie
  • Execute show commands and parse results into platform agnostic structured data

Don’t stop now! The next scenario will only take about 10 minutes to complete.

Introduction to Genie

Step 1 of 3

Step 1 - Installing Genie

Genie requires python3 and can be installed using pip

Installing

To install Genie simply type

pip3 install genie

NOTE: you can just click on these commands to save yourself some keystrokes.

This will also install all of the pyATS dependencies as well.

genie-intro.py