Client for OpenStack services
Find a file
Matt Joyce 25051a733d Updating Readme Document
Change-Id: I0c0f5c86b0bfa96ab4d7236eb2e7e7efab6fbac0
2012-05-14 17:01:46 -07:00
docs Adding name to Authors and updating a bad URL. More to get my gerrit workflow up. 2012-05-01 15:49:18 -07:00
openstackclient Revise command boolean flags 2012-05-11 17:27:03 -05:00
tests Fix "help" command and implement "list server" and "show server" 2012-05-04 09:35:40 -04:00
tools Add Identity to ClientManager 2012-05-04 16:37:18 -05:00
.gitignore Fix "help" command and implement "list server" and "show server" 2012-05-04 09:35:40 -04:00
.gitreview Add openstack-common and test infrastructure. 2012-04-28 22:27:34 +00:00
HACKING correcting ordering of imports 2012-05-14 16:08:35 -07:00
LICENSE First commit 2012-04-18 13:16:39 -05:00
MANIFEST.in Add openstack-common and test infrastructure. 2012-04-28 22:27:34 +00:00
openstack-common.conf Add openstack-common and test infrastructure. 2012-04-28 22:27:34 +00:00
README.rst Updating Readme Document 2012-05-14 17:01:46 -07:00
run_tests.sh Add openstack-common and test infrastructure. 2012-04-28 22:27:34 +00:00
setup.cfg Add openstack-common and test infrastructure. 2012-04-28 22:27:34 +00:00
setup.py Add tenant CRUD commands 2012-05-11 12:08:05 -05:00
tox.ini Add openstack-common and test infrastructure. 2012-04-28 22:27:34 +00:00

================
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 
http://wiki.openstack.org/UnifiedCLI.  The primary goal is to provide
a unified shell command structure and a common language to describe
operations in OpenStack.

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

For release management:

 * https://launchpad.net/python-openstackclient

For blueprints and feature specifications:

 * https://blueprints.launchpad.net/python-openstackclient

For issue tracking:

 * https://bugs.launchpad.net/python-openstackclient

Getting Started
===============

Once you have downloaded the client it can be built from setup.py with::
   python setup.py install

Alternatively you can build without installing with::
   python setup.py build

Toxicity tests can be ran simply by running ``run_tests.sh``

The client can be called interactively by simply typing::
   openstack

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


Configuration
=============

The cli is configured via environment variables and command-line
options as listed in http://wiki.openstack.org/UnifiedCLI/Authentication.

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

   export OS_AUTH_URL=<url-to-openstack-identity>
   export OS_TENANT_NAME=<tenant-name>
   export OS_USERNAME=<user-name>
   export OS_PASSWORD=<password>    # yes, it isn't secure, we'll address it in the future

The corresponding command-line options look very similar::

   --os-auth-url <url>
   --os-tenant-name <tenant-name>
   --os-username <user-name>
   --os-password <password>

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
                         (via httplib2)
   --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 Contributor Documentation
==================================

This documentation is written by contributors, for contributors.

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

.. _reStructuredText: http://docutils.sourceforge.net/rst.html
.. _Sphinx: http://sphinx.pocoo.org/

* Building Automatically::

    $ ./run_tests.sh --docs

* Building Manually::

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

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