python-cyborgclient¶
python-cyborgclient is a python bindings to the OpenStack Cyborg API. There’s
a Python API (the cyborgclient
module), and a command-line script
(cyborg
). Each implements 100% of the OpenStack Cyborg API.
See the OpenStack CLI Reference for information on how to use the cyborg
command-line tool. You may also want to look at the
OpenStack API documentation.
The project is hosted on Launchpad, where bugs can be filed. The code is hosted on OpenStack. Patches must be submitted using Gerrit.
This code is a fork of Jacobian’s python-cloudservers. If you need API support for the Rackspace API solely or the BSD license, you should use that repository. python-cyborgclient is licensed under the Apache License like the rest of OpenStack.
License: Apache License, Version 2.0
PyPi - package installation
Blueprints - feature specifications
Bugs - issue tracking
Contents:
Command-line API¶
Installing this package gets you a shell command, cyborg
, that you
can use to interact with any Rackspace compatible API (including OpenStack).
You’ll need to provide your OpenStack username and password. You can do this
with the --os-username
, --os-password
and --os-tenant-name
params, but it’s easier to just set them as environment variables:
export OS_USERNAME=openstack
export OS_PASSWORD=yadayada
export OS_TENANT_NAME=myproject
You will also need to define the authentication url with --os-auth-url
and the version of the API with --os-accelerator-api-version
. Or set them
as environment variables as well, OS_ACCELERATOR_API_VERSION=1
. If you
are using Keystone, you need to set the OS_AUTH_URL
to the keystone
endpoint:
export OS_AUTH_URL=http://controller:5000/v3
export OS_ACCELERATOR_API_VERSION=1
Since Keystone can return multiple regions in the Service Catalog, you
can specify the one you want with --os-region-name
(or
export OS_REGION_NAME
). It defaults to the first in the list returned.
You’ll find complete documentation on the shell by running
cyborg help
Python API¶
There’s also a complete Python API, but it has not yet been documented.
Quick-start using keystone:
# pass auth plugin and session to Client init.
# service_parameters contains servive_name, service_type, interface and
# region name.
>>> from cyborgclient.v1 import client
>>> nt = client.Client(auth=auth,session=_SESSION,**service_parameters)
>>> nt.accelerators.list()
[...]
See release notes and more at https://docs.openstack.org/python-cyborgclient/latest/.