Client for OpenStack services
Go to file
Dolph Mathews fe0c8e955b Do not prompt for scope options with default scoped tokens
This changes the scope validation to occur after a token has already
been created.

Previous flow:

1. Validate authentication options.
2. Validate authorization options if the command requires a scope.
3. Create a token (using authentication + authorization options)
4. Run command.

This means that scope was being checked, even if a default scope was
applied in step 3 by Keystone.

New flow:

1. Validate authentication options.
2. Create token (using authentication + authorization options)
3  Validate authorization options if the command requires a scope and
   the token is not scoped.
4. Run command.

Change-Id: Idae368a11249f425b14b891fc68b4176e2b3e981
Closes-Bug: 1592062
2016-06-17 12:37:15 -04:00
doc Merge "Support bulk deletion for delete commands in networkv2" 2016-06-16 16:30:23 +00:00
examples Switch to ksa Session 2015-12-02 01:55:14 +00:00
functional Merge "Move server image create command to its own resource file." 2016-06-16 13:05:18 +00:00
openstackclient Do not prompt for scope options with default scoped tokens 2016-06-17 12:37:15 -04:00
releasenotes Do not prompt for scope options with default scoped tokens 2016-06-17 12:37:15 -04:00
tools Pep8 environment to run on delta code only 2016-05-12 00:55:10 +05:30
.coveragerc Change ignore-errors to ignore_errors 2015-09-21 14:54:21 +00:00
.gitignore gitignore .idea 2016-02-20 16:25:56 +08: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
CONTRIBUTING.rst Added CONTRIBUTING.rst file 2016-05-16 17:42:48 +05:30
HACKING.rst Remove non-existing hacking deviations from doc 2015-08-09 13:22:48 -07:00
LICENSE Remove LICENSE APPENDIX 2015-11-18 13:25:56 +09:00
README.rst Add Testing Ref in README.rst 2016-04-11 11:12:37 -05:00
babel.cfg Add translation markers for user v2 actions 2014-10-09 14:47:19 -04:00
post_test_hook.sh unwedge the gate 2015-10-08 03:09:43 -04:00
requirements.txt Use osc-lib and set up deprecation warnings 2016-06-10 08:35:54 -05:00
setup.cfg Merge "Move server image create command to its own resource file." 2016-06-16 13:05:18 +00:00
setup.py Updated from global requirements 2015-09-18 16:42:31 +00:00
test-requirements.txt Updated from global requirements 2016-06-09 16:23:05 +00:00
tox.ini Pep8 environment to run on delta code only 2016-05-12 00:55:10 +05:30

README.rst

OpenStackClient

Latest Version

Downloads

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 (irc.freenode.net)
  • 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

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>