Python bindings for Manila
Go to file
tspyderboy 3103b8c56a "--wait" option added for managing/unmanaging a share snapshot
Implements: Add "--wait" to asynchronous operation commands
Closes-Bug: #1898312
Change-Id: I354ca855352228911f809769ce89d06af8dd9f61
2024-03-20 09:04:58 +05:30
doc Add new-note tox environment 2024-02-29 12:05:33 +00:00
etc Implement functionality for functional tests using tempest-lib 2014-11-12 13:05:24 +02:00
manilaclient "--wait" option added for managing/unmanaging a share snapshot 2024-03-20 09:04:58 +05:30
playbooks Add FIPS testing jobs 2022-07-06 19:17:31 +00:00
rally-jobs Add rally job manifests 2017-07-31 19:57:48 -04:00
releasenotes "--wait" option added for managing/unmanaging a share snapshot 2024-03-20 09:04:58 +05:30
roles/populate-manilaclient-config [CI] switch to using osc for bootstrap 2023-08-16 14:51:16 -07:00
tools Merge "tools: Remove dead tools" 2021-07-27 14:21:47 +00:00
zuul.d Switch to 2023.1 Python3 unit tests and generic template name 2022-09-14 09:13:24 +00:00
.gitignore Drop 'clidoc' from sphinx extensions 2018-08-23 19:21:34 -07:00
.gitreview OpenDev Migration Patch 2019-04-19 19:44:14 +00:00
.stestr.conf Switch to use stestr instead of testr 2018-05-07 22:24:34 +08:00
CONTRIBUTING.rst [ussuri][goal] Change contributor guide 2020-04-24 16:49:52 -07:00
HACKING utils: Remove unicode-related helpers 2021-07-14 10:26:30 +01:00
LICENSE setup.py fixed 2013-09-03 14:37:34 +03:00
README.rst Add PDF documentation build 2019-09-13 14:00:46 -04:00
bindep.txt Fix PDF docs issue 2021-07-27 08:46:08 -03:00
requirements.txt Drop lower-constraints.txt and its testing 2022-05-02 18:26:28 +00:00
run_tests.sh Remove nonexistent directory "tests" from pep8 scanning 2015-01-06 14:47:01 +02:00
setup.cfg Update python classifier in setup.cfg 2024-01-03 20:22:48 -08:00
setup.py Cleanup py27 support 2020-04-04 11:30:07 +02:00
test-requirements.txt Bump hacking 2024-01-27 23:27:41 +09:00
tox.ini Add new-note tox environment 2024-02-29 12:05:33 +00:00

README.rst

Team and repository tags

image

Python bindings to the OpenStack Manila API

Latest Version

This is a client for the OpenStack Manila API. There's a Python API (the manilaclient module), and a command-line script (manila). Each implements 100% of the OpenStack Manila API.

See the OpenStack CLI guide for information on how to use the manila 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 Github. Patches must be submitted using Gerrit, not Github pull requests.

This code is a fork of Cinderclient of Grizzly release and then it was developed separately. Cinderclient 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-manilaclient is licensed under the Apache License like the rest of OpenStack.

Contents:

Command-line API

Installing this package gets you a shell command, manila, 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=foouser
export OS_PASSWORD=barpass
export OS_TENANT_NAME=fooproject

You will also need to define the authentication url either with param --os-auth-url or as an environment variable:

export OS_AUTH_URL=http://example.com:5000/v2.0/

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 manila help, see manila help COMMAND for help on a specific command.

Python API

There's also a complete Python API, but it has not yet been documented.

Quick-start using keystone:

# use v2.0 auth with http://example.com:5000/v2.0/
>>> from manilaclient.v1 import client
>>> nt = client.Client(USER, PASS, TENANT, AUTH_URL, service_type="share")
>>> nt.shares.list()
[...]