This is the implementation of a Python library, otherwise known as "FABlib", for interacting with FABRIC testbed.
Your first encounter with FABlib might be through FABRIC project's JupyterHub instance, where FABlib is pre-installed for you. You will be presented with many examples of interacting with FABRIC testbed and FABlib usage when you log in there. Those notebook sources can be found on GitHub as well.
If you want to interact with FABRIC from Jupyter or a Python project on your local development environment, that is possible too. See Install the FABRIC Python API and the notes below for details.
FABlib API docs can be found here. If you have questions about FABRIC or FABlib usage, please ask them in FABRIC forums.
You can install released versions of FABlib from PyPI:
$ pip install fabrictestbed-extensions
If you need the current development version of FABlib, install it from the git repository:
$ pip install git+https://github.com/fabric-testbed/fabrictestbed-extensions@main
Note that installing FABlib using either methods will also install a number of dependencies, so you might want to install FABlib in a virtual environment. Your favorite tool for managing virtual environments (venv, virtualenv, or virtualenvwrapper) should work. FABRIC team tends to favor virtualenvwrapper.
Once installed, you can use FABlib in your Python projects:
from fabrictestbed_extensions.fablib.fablib import FablibManager as fablib_manager
try:
fablib = fablib_manager()
fablib.show_config()
except Exception as e:
print(f"Exception: {e}")
Please note that some configuration is required for this to work.
We welcome contributions in the form of bug reports, feature requests, code patches, documentation updates, etc. If you have ideas that can help FABlib, please review the guidelines first.