Client for OpenStack services
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Go to file
Jude Cross 24b06ef273
Fix limits show command without Nova and Cinder
5 years ago
doc Merge "Update help text for encryption provider" 5 years ago
examples osc-lib: api.auth 7 years ago
openstackclient Fix limits show command without Nova and Cinder 5 years ago
playbooks/osc-devstack Make osc-functional-devstack-tips actually use tips 5 years ago
releasenotes neutron: add --mtu for create/set network 5 years ago
tools Avoid for constraints support 5 years ago
.coveragerc Updated coverage configuration file 6 years ago
.gitignore Updates for stestr 5 years ago
.gitreview Add openstack-common and test infrastructure. 11 years ago
.mailmap Clean up test environment and remove unused imports. 10 years ago
.stestr.conf Updates for stestr 5 years ago
.testr.conf move unit tests to new "unit" test module 6 years ago
.zuul.yaml add lower-constraints job 5 years ago
CONTRIBUTING.rst Added CONTRIBUTING.rst file 7 years ago
HACKING.rst Update the documentation link for doc migration 6 years ago
README.rst Update links in README 5 years ago
babel.cfg Add translation markers for user v2 actions 8 years ago
lower-constraints.txt add lower-constraints job 5 years ago
requirements.txt Updated from global requirements 5 years ago
setup.cfg Merge "Add CRUD support for application credentials" 5 years ago Updated from global requirements 6 years ago
test-requirements.txt Updated from global requirements 5 years ago
tox.ini add lower-constraints job 5 years ago


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.

  • PyPi - package installation
  • Online Documentation
  • Launchpad project - release management
  • Blueprints - feature specifications
  • Bugs - issue tracking
  • Source
  • Developer - getting started as a developer
  • Contributing - contributing code
  • Testing - testing code
  • IRC: #openstack-sdks on Freenode (
  • License: Apache 2.0

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>