Genie Libs Robot

raw JSON →
26.3 verified Mon Apr 27 auth: no python

RobotFramework libraries to interact with Genie, a network automation framework. Current version 26.3. Released on PyPI; cadence varies.

pip install genie-libs-robot
error ModuleNotFoundError: No module named 'genie_libs'
cause Missing package or wrong installed name; `genie-libs-robot` not imported directly.
fix
Install genie-libs-robot via pip, then import as from genie_libs.robot import ....
error ImportError: cannot import name 'GenieRobot' from 'genie_libs.robot'
cause Symbol not found; might be wrong version or name typo.
fix
Ensure you have version 26.3 or later; check available exports via dir(genie_libs.robot).
error AttributeError: 'GenieRobot' object has no attribute 'testbed'
cause Testbed not set before use.
fix
Assign a testbed: robot.testbed = testbed.load('path.yaml').
gotcha The package import path uses underscores: `genie_libs.robot` not `genie-libs-robot` or `genielibs`.
fix Use `from genie_libs.robot import ...`.
gotcha GenieRobot expects a testbed object; missing testbed leads to confusing attribute errors.
fix Always assign a testbed to robot.testbed before calling connect.
deprecated Older versions used `from genie.libs.robot` (with dots); changed to underscores in recent releases.
fix Update import to `from genie_libs.robot import ...`.

Minimal example to import and use GenieRobot from genie_libs.robot.

from genie_libs.robot import GenieRobot
from genie import testbed

# Load testbed (provide path or environment variable)
tb = testbed.load('testbed.yaml' if 'TESTBED_FILE' not in __import__('os').environ else __import__('os').environ['TESTBED_FILE'])
# Example: use GenieRobot to connect
robot = GenieRobot()
robot.testbed = tb
device = robot.connect(alias='uut', via='cli')
print(device.connected)