Client for OpenStack services
Failed to load latest commit information.
doc Merge "Fix inconsistency (nit)" Aug 13, 2018
examples osc-lib: api.auth Jun 30, 2016
openstackclient Merge "Detailed help message for QoS max-burst-kbps value" Aug 14, 2018
playbooks/osc-devstack Make osc-functional-devstack-tips actually use tips Feb 5, 2018
releasenotes Merge "Add DNS support to floating IP commands" Aug 8, 2018
tools Avoid for constraints support Dec 1, 2017
.coveragerc Updated coverage configuration file Oct 24, 2016
.gitignore Updates for stestr Sep 15, 2017
.gitreview Add openstack-common and test infrastructure. Apr 28, 2012
.mailmap Clean up test environment and remove unused imports. Jan 22, 2013
.stestr.conf Updates for stestr Sep 15, 2017
.testr.conf move unit tests to new "unit" test module Sep 8, 2016
.zuul.yaml add lower-constraints job Mar 25, 2018
CONTRIBUTING.rst Added CONTRIBUTING.rst file May 16, 2016
HACKING.rst Update the documentation link for doc migration Jul 24, 2017
README.rst Add release note link in README Jun 28, 2018
babel.cfg Add translation markers for user v2 actions Oct 9, 2014
lower-constraints.txt Merge "Implement support for registered limits" Jul 25, 2018
requirements.txt Merge "Implement support for registered limits" Jul 25, 2018
setup.cfg Merge "Add command to show all service versions" Jul 25, 2018 Updated from global requirements Mar 3, 2017
test-requirements.txt Updated from global requirements Mar 28, 2018
tox.ini Replace pbr autodoc with sphinxcontrib-apidoc Jul 10, 2018


Team and repository tags


Latest Version

OpenStackClient (aka OSC) is a command-line client for OpenStack that brings the command set for Compute, Identity, Image, Object Store and Block Storage 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

If you want to make changes to the OpenStackClient for testing and contribution, make any changes and then run:

python develop


pip install -e .


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

Authentication using username/password is most commonly used:

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

The corresponding command-line options look very similar:

--os-auth-url <url>
--os-identity-api-version 3
--os-project-name <project-name>
--os-project-domain-name <project-domain-name>
--os-username <username>
--os-user-domain-name <user-domain-name>
[--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>