Client for OpenStack services
Go to file
Dean Troyer a05cbf4c99 Rework shell tests
This is the first step in reworking the shell argument handling,
clean up and add tests to ensure functionality doesn't change.

* Rework shell tests to break down global options and auth options.
* Make tests table-driven
* Remove 'os_' from 'cacert' and 'default_domain' internal option names

Change-Id: Icf69c7e84f3f44b366fe64b6bbf4e3fe958eb302
2015-06-02 09:49:17 -05:00
doc Merge "Add --wait to server delete" 2015-06-01 20:07:27 +00:00
examples Rework shell tests 2015-06-02 09:49:17 -05:00
functional Remove checks for None dates in keypair functional tests 2015-05-22 13:01:40 -07:00
openstackclient Rework shell tests 2015-06-02 09:49:17 -05:00
python-openstackclient/locale Imported Translations from Transifex 2015-05-05 06:06:24 +00:00
.coveragerc Update .coveragerc 2013-02-06 16:47:06 +02:00
.gitignore Remove references to venv 2015-04-24 02:15:36 -04:00
.gitreview Add openstack-common and test infrastructure. 2012-04-28 22:27:34 +00:00
.mailmap Clean up test environment and remove unused imports. 2013-01-22 11:44:18 -06:00
.testr.conf Use format options for functional tests 2015-05-17 12:33:39 +00:00
HACKING.rst Fix PEP8 E302 errors 2014-07-22 17:51:15 -06:00
LICENSE First commit 2012-04-18 13:16:39 -05:00
MANIFEST.in Add translation markers for user v2 actions 2014-10-09 14:47:19 -04:00
README.rst Update README 2015-03-09 15:49:44 -05:00
babel.cfg Add translation markers for user v2 actions 2014-10-09 14:47:19 -04:00
post_test_hook.sh Functional tests run in many environments 2015-04-25 08:42:06 -06:00
requirements.txt Remove oslo serialization requirement 2015-05-26 17:40:01 -04:00
setup.cfg Add support for volume v2 API 2015-05-30 11:26:14 -07:00
setup.py Updated from global requirements 2014-05-01 13:50:49 +00:00
test-requirements.txt Use ostestr for test runs 2015-05-29 11:31:15 -04:00
tox.ini Use ostestr for test runs 2015-05-29 11:31:15 -04:00

README.rst

OpenStackClient

OpenStackClient (aka OSC) is a command-line client for OpenStack that brings the command set for Compute, Identity, Image, Object Store and Volume APIs together in a single shell with a uniform command structure.

The primary goal is to provide a unified shell command structure and a common language to describe operations in OpenStack.

Getting Started

OpenStack Client can be installed from PyPI using pip:

pip install python-openstackclient

There are a few variants on getting help. A list of global options and supported commands is shown with --help:

openstack --help

There is also a help command that can be used to get help text for a specific command:

openstack help
openstack help server create

Configuration

The CLI is configured via environment variables and command-line options as listed in http://docs.openstack.org/developer/python-openstackclient/authentication.html.

Authentication using username/password is most commonly used:

export OS_AUTH_URL=<url-to-openstack-identity>
export OS_PROJECT_NAME=<project-name>
export OS_USERNAME=<username>
export OS_PASSWORD=<password>  # (optional)

The corresponding command-line options look very similar:

--os-auth-url <url>
--os-project-name <project-name>
--os-username <username>
[--os-password <password>]

If a password is not provided above (in plaintext), you will be interactively prompted to provide one securely.

Authentication may also be performed using an already-acquired token and a URL pointing directly to the service API that presumably was acquired from the Service Catalog:

export OS_TOKEN=<token>
export OS_URL=<url-to-openstack-service>

The corresponding command-line options look very similar:

--os-token <token>
--os-url <url-to-openstack-service>