<feed xmlns='http://www.w3.org/2005/Atom'>
<title>delta/openstack/python-openstackclient.git/openstackclient/shell.py, branch 1.0.4</title>
<subtitle>opendev.org: openstack/python-openstackclient
</subtitle>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/openstack/python-openstackclient.git/'/>
<entry>
<title>Move OSC auth plugins so they can be found</title>
<updated>2015-03-10T03:16:12+00:00</updated>
<author>
<name>Dean Troyer</name>
<email>dtroyer@gmail.com</email>
</author>
<published>2015-03-04T02:29:38+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/openstack/python-openstackclient.git/commit/?id=749920bc65d4859eeaf44d16ae94f842d88af178'/>
<id>749920bc65d4859eeaf44d16ae94f842d88af178</id>
<content type='text'>
The plugin detection at the top of openstackclient.api.auth did not
detect the plugins at the bottom of that file because, surprise,
they had not been declared yet so the entry points were ignored.

Move both plugin subclasses into openstackclient.api.auth_plugin.

Fix a problem with the password callback that was otherwise made
worse with this change.

Closes-Bug: 1428912
Change-Id: Idc3b72534071e0013c8922884a8bc14137509a0f
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The plugin detection at the top of openstackclient.api.auth did not
detect the plugins at the bottom of that file because, surprise,
they had not been declared yet so the entry points were ignored.

Move both plugin subclasses into openstackclient.api.auth_plugin.

Fix a problem with the password callback that was otherwise made
worse with this change.

Closes-Bug: 1428912
Change-Id: Idc3b72534071e0013c8922884a8bc14137509a0f
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix auth-required for help command</title>
<updated>2015-02-27T23:27:17+00:00</updated>
<author>
<name>Dean Troyer</name>
<email>dtroyer@gmail.com</email>
</author>
<published>2015-02-27T15:19:12+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/openstack/python-openstackclient.git/commit/?id=505fa14cd68e13d066a5770a229ba0d7fa88d2a9'/>
<id>505fa14cd68e13d066a5770a229ba0d7fa88d2a9</id>
<content type='text'>
When we got picky with the auth arguments we broke using help without
any auth config supplied.  This rearranges things a bit to do the argument
checking when the deferred auth request to Identity occurs so commands
that do not need auth have a chance to live short but useful lives.

Closes-Bug: #1399588
Change-Id: I8ceac491cf65e25eddb62ab2713f471fe686756d
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
When we got picky with the auth arguments we broke using help without
any auth config supplied.  This rearranges things a bit to do the argument
checking when the deferred auth request to Identity occurs so commands
that do not need auth have a chance to live short but useful lives.

Closes-Bug: #1399588
Change-Id: I8ceac491cf65e25eddb62ab2713f471fe686756d
</pre>
</div>
</content>
</entry>
<entry>
<title>Deprecate project usage list command</title>
<updated>2015-01-15T06:04:55+00:00</updated>
<author>
<name>Dean Troyer</name>
<email>dtroyer@gmail.com</email>
</author>
<published>2015-01-15T00:44:10+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/openstack/python-openstackclient.git/commit/?id=bc11c4d7d8fef1d8eef3bb8f5fa18e27b9ea2964'/>
<id>bc11c4d7d8fef1d8eef3bb8f5fa18e27b9ea2964</id>
<content type='text'>
Rather than pointing the 'project usage list' entry point directly to
ListUsage, this makes a ListProjectUsage subclass to alias the desired
command and still allow for changing behaviour or issuing a deprecation
messages.  This implementation simply sets a new 'deprecated' attribute
in the command class that cliff will use to skip this command when
generating help output.

The actual skipping of the command in help output is dependant on
https://review.openstack.org/147349 merging in cliff, this review will
simply have no effect on help output until a version of cliff with
that update is present.

The deprecation message printed is somewhat generic until
https://review.openstack.org/147381 is merged in cliff.
Until that is merged, the deprecation message will not have the name
of the actual command given by the user in it, but rather the text
'this command'.

Closes-bug: #1406654
Change-Id: Ie08d4f88d71a660fca1862405351109cd0aa86b6
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Rather than pointing the 'project usage list' entry point directly to
ListUsage, this makes a ListProjectUsage subclass to alias the desired
command and still allow for changing behaviour or issuing a deprecation
messages.  This implementation simply sets a new 'deprecated' attribute
in the command class that cliff will use to skip this command when
generating help output.

The actual skipping of the command in help output is dependant on
https://review.openstack.org/147349 merging in cliff, this review will
simply have no effect on help output until a version of cliff with
that update is present.

The deprecation message printed is somewhat generic until
https://review.openstack.org/147381 is merged in cliff.
Until that is merged, the deprecation message will not have the name
of the actual command given by the user in it, but rather the text
'this command'.

Closes-bug: #1406654
Change-Id: Ie08d4f88d71a660fca1862405351109cd0aa86b6
</pre>
</div>
</content>
</entry>
<entry>
<title>Liberalize version matching a bit</title>
<updated>2014-11-16T17:37:52+00:00</updated>
<author>
<name>Dean Troyer</name>
<email>dtroyer@gmail.com</email>
</author>
<published>2014-11-14T23:27:58+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/openstack/python-openstackclient.git/commit/?id=2b02beaa5182e678d9da00402a7c4f137710f813'/>
<id>2b02beaa5182e678d9da00402a7c4f137710f813</id>
<content type='text'>
For class-loading purposes we can just use the major version,
so accept that. Only Identity and Compute were affected; Compute
is included just to be pedantically complete.

For command groups we also just use the major version so fix
Compute and the version option handling.

Change the internal default for Identity to a simple '2' so it
is also consistent with the rest of the world.

Then comes microversioning...

Closes-Bug: #1292638
Change-Id: Ibaf823b31caa288a83de38d2c258860b128b87d8
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
For class-loading purposes we can just use the major version,
so accept that. Only Identity and Compute were affected; Compute
is included just to be pedantically complete.

For command groups we also just use the major version so fix
Compute and the version option handling.

Change the internal default for Identity to a simple '2' so it
is also consistent with the rest of the world.

Then comes microversioning...

Closes-Bug: #1292638
Change-Id: Ibaf823b31caa288a83de38d2c258860b128b87d8
</pre>
</div>
</content>
</entry>
<entry>
<title>Adjust some logging levels</title>
<updated>2014-10-24T18:16:41+00:00</updated>
<author>
<name>Dean Troyer</name>
<email>dtroyer@gmail.com</email>
</author>
<published>2014-10-21T14:51:47+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/openstack/python-openstackclient.git/commit/?id=8ba74451ee9efe21a0554c184f28e380fe714313'/>
<id>8ba74451ee9efe21a0554c184f28e380fe714313</id>
<content type='text'>
* Promote select messages to INFO so lower logging levels can be useful
* Help more modules not say so much all the time

Change-Id: I814023c1489595998ae74efe40ef439b3522ee74
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Promote select messages to INFO so lower logging levels can be useful
* Help more modules not say so much all the time

Change-Id: I814023c1489595998ae74efe40ef439b3522ee74
</pre>
</div>
</content>
</entry>
<entry>
<title>Clean up shell authentication</title>
<updated>2014-10-22T04:16:16+00:00</updated>
<author>
<name>Dean Troyer</name>
<email>dtroyer@gmail.com</email>
</author>
<published>2014-10-20T23:53:10+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/openstack/python-openstackclient.git/commit/?id=e063246b97a7f31a47aca0a5eb36d571f5df7236'/>
<id>e063246b97a7f31a47aca0a5eb36d571f5df7236</id>
<content type='text'>
* Remove the auth option checks as the auth plugins will validate
  their own options
* Move the initialization of client_manager to the end of
  initialize_app() so it is always called.  Note that no attempts
  to actually authenticate occur until the first use of one of the
  client attributes in client_manager.  This leaves
  initialize_clientmanager() (formerly uathenticate_user()) empty
  so remove it.
* Remove interact() as the client_manager has already been created
  And there is nothing left.
* prepare_to_run_command() is reduced to trigger an authentication
  attempt for the best_effort auth commands, currently the only
  one is 'complete'.
* Add prompt_for_password() to ask the user to enter a password
  when necessary.  Passed to ClientManager in a new kward pw_func.

Bug: 1355838
Change-Id: I9fdec9144c4c84f65aed1cf91ce41fe1895089b2
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Remove the auth option checks as the auth plugins will validate
  their own options
* Move the initialization of client_manager to the end of
  initialize_app() so it is always called.  Note that no attempts
  to actually authenticate occur until the first use of one of the
  client attributes in client_manager.  This leaves
  initialize_clientmanager() (formerly uathenticate_user()) empty
  so remove it.
* Remove interact() as the client_manager has already been created
  And there is nothing left.
* prepare_to_run_command() is reduced to trigger an authentication
  attempt for the best_effort auth commands, currently the only
  one is 'complete'.
* Add prompt_for_password() to ask the user to enter a password
  when necessary.  Passed to ClientManager in a new kward pw_func.

Bug: 1355838
Change-Id: I9fdec9144c4c84f65aed1cf91ce41fe1895089b2
</pre>
</div>
</content>
</entry>
<entry>
<title>only generate one clientmanager instance in interactive mode</title>
<updated>2014-10-20T07:29:53+00:00</updated>
<author>
<name>wanghong</name>
<email>w.wanghong@huawei.com</email>
</author>
<published>2014-10-20T07:29:53+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/openstack/python-openstackclient.git/commit/?id=f600c0eafbf9aff23b6efa1c7b94797a25873b99'/>
<id>f600c0eafbf9aff23b6efa1c7b94797a25873b99</id>
<content type='text'>
Currently, we repeated to generate clientmanager instance when run
command in interactive mode. This should be avoided.

Change-Id: I0536a690bc173be38af08a2e4443115532041efd
Closes-Bug: #1383083
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Currently, we repeated to generate clientmanager instance when run
command in interactive mode. This should be avoided.

Change-Id: I0536a690bc173be38af08a2e4443115532041efd
Closes-Bug: #1383083
</pre>
</div>
</content>
</entry>
<entry>
<title>Move plugin stuff to clientmanager</title>
<updated>2014-10-14T04:02:34+00:00</updated>
<author>
<name>Dean Troyer</name>
<email>dtroyer@gmail.com</email>
</author>
<published>2014-10-13T16:13:48+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/openstack/python-openstackclient.git/commit/?id=897418edca52d9856ef7381a5822fce3bcf8a804'/>
<id>897418edca52d9856ef7381a5822fce3bcf8a804</id>
<content type='text'>
The OSC plugins work by adding an object as an attribute to a
ClientManager instance.  The initialization and management of
thos plugins belongs in clientmanager.py.

At this point the only part not moved is the API version dict
initialization bcause the timing and connection to the
CommandManager initialization.  It gets refactored anyway when
API discovery becomes operational.

Change-Id: If9cb9a0c45a3a577082a5cdbb793769211f20ebb
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The OSC plugins work by adding an object as an attribute to a
ClientManager instance.  The initialization and management of
thos plugins belongs in clientmanager.py.

At this point the only part not moved is the API version dict
initialization bcause the timing and connection to the
CommandManager initialization.  It gets refactored anyway when
API discovery becomes operational.

Change-Id: If9cb9a0c45a3a577082a5cdbb793769211f20ebb
</pre>
</div>
</content>
</entry>
<entry>
<title>Support for keystone auth plugins</title>
<updated>2014-10-09T10:34:47+00:00</updated>
<author>
<name>Matthieu Huin</name>
<email>mhu@enovance.com</email>
</author>
<published>2014-07-18T17:18:25+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/openstack/python-openstackclient.git/commit/?id=0c77a9fe8baa4df9ea2d0055db9c700af3cae310'/>
<id>0c77a9fe8baa4df9ea2d0055db9c700af3cae310</id>
<content type='text'>
This patch allows the user to choose which authentication plugin
to use with the CLI. The arguments needed by the auth plugins are
automatically added to the argument parser. Some examples with
the currently available authentication plugins::

  OS_USERNAME=admin OS_PROJECT_NAME=admin OS_AUTH_URL=http://keystone:5000/v2.0 \
  OS_PASSWORD=admin openstack user list

  OS_USERNAME=admin OS_PROJECT_DOMAIN_NAME=default OS_USER_DOMAIN_NAME=default \
  OS_PROJECT_NAME=admin OS_AUTH_URL=http://keystone:5000/v3 OS_PASSWORD=admin \
  OS_IDENTITY_API_VERSION=3 OS_AUTH_PLUGIN=v3password openstack project list

  OS_TOKEN=1234 OS_URL=http://service_url:35357/v2.0 \
  OS_IDENTITY_API_VERSION=2.0 openstack user list

The --os-auth-plugin option can be omitted; if so the CLI will attempt to
guess which plugin to use from the other options.

Change-Id: I330c20ddb8d96b3a4287c68b57c36c4a0f869669
Co-Authored-By: Florent Flament &lt;florent.flament-ext@cloudwatt.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This patch allows the user to choose which authentication plugin
to use with the CLI. The arguments needed by the auth plugins are
automatically added to the argument parser. Some examples with
the currently available authentication plugins::

  OS_USERNAME=admin OS_PROJECT_NAME=admin OS_AUTH_URL=http://keystone:5000/v2.0 \
  OS_PASSWORD=admin openstack user list

  OS_USERNAME=admin OS_PROJECT_DOMAIN_NAME=default OS_USER_DOMAIN_NAME=default \
  OS_PROJECT_NAME=admin OS_AUTH_URL=http://keystone:5000/v3 OS_PASSWORD=admin \
  OS_IDENTITY_API_VERSION=3 OS_AUTH_PLUGIN=v3password openstack project list

  OS_TOKEN=1234 OS_URL=http://service_url:35357/v2.0 \
  OS_IDENTITY_API_VERSION=2.0 openstack user list

The --os-auth-plugin option can be omitted; if so the CLI will attempt to
guess which plugin to use from the other options.

Change-Id: I330c20ddb8d96b3a4287c68b57c36c4a0f869669
Co-Authored-By: Florent Flament &lt;florent.flament-ext@cloudwatt.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Remove duplicate env function in shell.py</title>
<updated>2014-10-03T03:09:34+00:00</updated>
<author>
<name>Steve Martinelli</name>
<email>stevemar@ca.ibm.com</email>
</author>
<published>2014-10-03T03:09:34+00:00</published>
<link rel='alternate' type='text/html' href='http://trove.baserock.org/cgit/delta/openstack/python-openstackclient.git/commit/?id=693687e4ffebd38089cc55a168c743bf48df5603'/>
<id>693687e4ffebd38089cc55a168c743bf48df5603</id>
<content type='text'>
There already exists an env() function in utils. Let's use that
one since it's common.

Change-Id: I661984394cf0c0543b2f35bf76e3929dead54d1d
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
There already exists an env() function in utils. Let's use that
one since it's common.

Change-Id: I661984394cf0c0543b2f35bf76e3929dead54d1d
</pre>
</div>
</content>
</entry>
</feed>
