Python bindings for Manila
Go to file
Jiao Pengju e657bfe743 Fix share can not be found by name in admin context
Currently, when using admin context to execute 'manila
show <share-name>' to show a share detail which is not
owned by admin, it always fails with 'No share with a
name or ID of <share-name> exists'. This patch will fix
it.

Change-Id: I96339778fa69c379863078250d5dfa7172f2c1b2
Closes-Bug: #1721787
(cherry picked from commit b9ebff14ca)
2017-12-19 19:01:18 +00:00
contrib/ci Fix gate breakage 2017-03-02 12:47:35 -05:00
doc Merge "doc-migration: new directory layout" into stable/pike 2017-08-28 02:23:44 +00:00
etc Implement functionality for functional tests using tempest-lib 2014-11-12 13:05:24 +02:00
manilaclient Fix share can not be found by name in admin context 2017-12-19 19:01:18 +00:00
rally-jobs Add rally job manifests 2017-08-12 00:40:54 +00:00
releasenotes doc migration: openstackdocstheme completion 2017-08-26 12:37:30 +00:00
tools Add Constraints support 2016-12-21 22:51:37 +01:00
.gitignore Add support for releasenotes 2016-05-25 17:45:16 +00:00
.gitreview Update .gitreview for stable/pike 2017-07-28 21:07:24 +00:00
.testr.conf Fix usage of setUpClass method in functional tests 2015-10-26 15:02:07 +02:00
CONTRIBUTING.rst Replace http with https 2017-07-19 18:56:26 +08:00
HACKING Replace http with https 2017-07-19 18:56:26 +08:00
LICENSE setup.py fixed 2013-09-03 14:37:34 +03:00
README.rst Update the documentation link for doc migration 2017-07-20 17:22:01 +08:00
requirements.txt Updated from global requirements 2017-08-11 19:05:22 +00:00
run_tests.sh Remove nonexistent directory "tests" from pep8 scanning 2015-01-06 14:47:01 +02:00
setup.cfg Update the documentation link for doc migration 2017-07-20 17:22:01 +08:00
setup.py Updated from global requirements 2017-03-03 00:04:17 +00:00
test-requirements.txt Updated from global requirements 2017-09-28 06:35:44 +00:00
tox.ini Update UPPER_CONSTRAINTS_FILE for stable/pike 2017-07-28 21:07:24 +00:00

README.rst

Team and repository tags

image

Python bindings to the OpenStack Manila API

Latest Version

Downloads

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()
[...]