Skip to main content

OpenStack Command-line Client

Project description

OpenStack Client

python-openstackclient is a unified command-line client for the OpenStack APIs.
It is a thin wrapper to the stock python-*client modules that implement the
actual REST API client actions.

This is an implementation of the design goals shown in
`OpenStack Client Wiki`_. The primary goal is to provide
a unified shell command structure and a common language to describe
operations in OpenStack. The master repository is on GitHub_.

.. _OpenStack Client Wiki:
.. _GitHub:

python-openstackclient is designed to add support for API extensions via a
plugin mechanism.

* `Release management`_
* `Blueprints and feature specifications`_
* `Issue tracking`_
* `PyPi`_
* `Developer Docs`_
.. _release management:
.. _Blueprints and feature specifications:
.. _Issue tracking:
.. _PyPi:
.. _Developer Docs:
.. _install virtualenv: tools/


OpenStackClient is considered to be alpha release quality as of the 0.2 release;
no assurances are made at this point for ongoing compatibility in command forms
or output. We do not, however, expect any major changes at this point.

Getting Started

We recommend using a virtualenv to install the client. This description
uses the `install virtualenv`_ script to create the virtualenv::

python tools/
source .venv/bin/activate
python develop

Unit tests can be ran simply by running::

The client can be called interactively by simply typing::


Alternatively command line parameters can be called non-interactively::

openstack --help


The CLI is configured via environment variables and command-line
options as listed in

The 'password flow' variation is most commonly used::

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

The corresponding command-line options look very similar::

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

If a password is not provided above (in plaintext), you will be interactively
prompted to provide one securely. If keyring is enabled, the password entered
in the prompt is stored in keyring. From next time, the password is read from
keyring, if it is not provided above (in plaintext).

The token flow variation for authentication uses an already-aquired 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>

Additional command-line options and their associated environment variables
are listed here::

--debug # turns on some debugging of the API conversation
--verbose | -v # Increase verbosity of output. Can be repeated.
--quiet | -q # suppress output except warnings and errors
--help | -h # show a help message and exit

Building Documentation

This documentation is written by contributors, for contributors.

The source is maintained in the ``doc/source`` folder using
`reStructuredText`_ and built by `Sphinx`_

.. _reStructuredText:
.. _Sphinx:

* Building Manually::

$ export DJANGO_SETTINGS_MODULE=local.local_settings
$ python doc/
$ sphinx-build -b html doc/source build/sphinx/html

Results are in the `build/sphinx/html` directory.

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, size & hash SHA256 hash help File type Python version Upload date
python-openstackclient-0.3.1.tar.gz (109.3 kB) Copy SHA256 hash SHA256 Source None

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page