Python client API library made especially for MAAS.
All the dependencies are declared in setup.py
so this can be installed
with pip. Python 3.5+ is required.
When working from master it can be helpful to use a virtualenv:
$ python3 -m venv ve && source ve/bin/activate
$ pip install git+https://github.com/canonical/python-libmaas.git
$ maas --help
Releases are periodically made to PyPI but, at least for now, it makes more sense to work directly from trunk.
Documentation can be generated with make docs
which publishes into the
site
directory. Recent documentation is also published to the
MAAS Client Library & CLI documentation site.
It's pretty easy to start hacking on python-libmaas:
$ git clone git@github.com:maas/python-libmaas.git
$ cd python-libmaas
$ make develop
$ make test
Installing IPython is generally a good idea too:
$ bin/pip install -UI IPython
Pull requests are welcome but authors need to sign the Canonical contributor license agreement before those PRs can be merged.
In short: AGPLv3.
python-libmaas was begun by a core MAAS developer, Gavin Panella, on his own time, but is now maintained by the core MAAS team at Canonical. It is licensed under the GNU Affero GPLv3, the same as MAAS itself.
Some of the code in here has come from MAAS, upon which Canonical Ltd has the copyright. Gavin Panella licenses his parts under the AGPLv3, and MAAS is also under the AGPLv3, so everything should be good.