I try to list projects and everything turned out alright
$ keystone tenant-list
/usr/local/lib/python2.7/dist-packages/keystoneclient/shell.py:65: DeprecationWarning: The keystone CLI is deprecated in favor of python-openstackclient. For a Python library, continue using python-keystoneclient.
'python-keystoneclient.', DeprecationWarning)
+----------------------------------+--------------------+---------+
| id | name | enabled |
+----------------------------------+--------------------+---------+
| 03cfc579679947dbba52d1a6e737873a | admin | True |
| 952bac021b14445bb52b27abe90c463b | alt_demo | True |
| 5785286638bf4c368292a5e0aa46ebb1 | demo | True |
| ce376a35838b46d687958e21d643e48b | invisible_to_admin | True |
| fb524d76208f44329e7b62c101115210 | service | True |
+----------------------------------+--------------------+---------+
Even with the new `openstack` CLI, things work.
$ openstack project list
+----------------------------------+--------------------+
| ID | Name |
+----------------------------------+--------------------+
| 03cfc579679947dbba52d1a6e737873a | admin |
| 5785286638bf4c368292a5e0aa46ebb1 | demo |
| 952bac021b14445bb52b27abe90c463b | alt_demo |
| ce376a35838b46d687958e21d643e48b | invisible_to_admin |
| fb524d76208f44329e7b62c101115210 | service |
+----------------------------------+--------------------+
What I'm slightly confused about is that the error you mentioned was "Invalid OpenStack Identity credentials", but the code you reference should produce "Non-default domain is not supported" instead.
def filter_domain_id(ref):
"""Remove domain_id since v2 calls are not domain-aware."""
if 'domain_id' in ref:
if ref['domain_id'] != CONF.identity.default_domain_id: raise exception.Unauthorized( _('Non-default domain is not supported'))
del ref['domain_id']
return ref
Can you try using --debug to the command that's failing and paste the output: keystone --debug tenant-list ?
It'll also help to see any logs from the server side, and the environment variables you're using with the command (using env | grep OS) so we can further investigate this problem.
I was unable to reproduce this problem in the latest kilo stream.
My kilo version is just a handful of commits ahead of the kilo.2 version you are using. None of which seem related to the code path in question.
I'm using version 2015.1.3 VersionInfo( 'keystone' )
>>> import pbr.version
>>> keystone_version = pbr.version.
>>> print keystone_version
2015.1.3
I use the following credentials:
$ env | grep OS NAME=RegionOne API_VERSION= 2.0 openstack 172.16. 240.156: 5000/v2. 0 NAME=admin API_VERSION= 2
OS_REGION_
OS_IDENTITY_
OS_PASSWORD=
OS_AUTH_URL=http://
OS_USERNAME=admin
OS_TENANT_
OS_VOLUME_
I try to list projects and everything turned out alright
$ keystone tenant-list lib/python2. 7/dist- packages/ keystoneclient/ shell.py: 65: DeprecationWarning: The keystone CLI is deprecated in favor of python- openstackclient . For a Python library, continue using python- keystoneclient. keystoneclient. ', DeprecationWarning) ------- ------- ------- ------- +------ ------- ------- +------ ---+ ------- ------- ------- ------- +------ ------- ------- +------ ---+ bba52d1a6e73787 3a | admin | True | bb52b27abe90c46 3b | alt_demo | True | 68292a5e0aa46eb b1 | demo | True | 687958e21d643e4 8b | invisible_to_admin | True | 29e7b62c1011152 10 | service | True | ------- ------- ------- ------- +------ ------- ------- +------ ---+
/usr/local/
'python-
+------
| id | name | enabled |
+------
| 03cfc579679947d
| 952bac021b14445
| 5785286638bf4c3
| ce376a35838b46d
| fb524d76208f443
+------
Even with the new `openstack` CLI, things work.
$ openstack project list ------- ------- ------- ------- +------ ------- ------- + ------- ------- ------- ------- +------ ------- ------- + bba52d1a6e73787 3a | admin | 68292a5e0aa46eb b1 | demo | bb52b27abe90c46 3b | alt_demo | 687958e21d643e4 8b | invisible_to_admin | 29e7b62c1011152 10 | service | ------- ------- ------- ------- +------ ------- ------- +
+------
| ID | Name |
+------
| 03cfc579679947d
| 5785286638bf4c3
| 952bac021b14445
| ce376a35838b46d
| fb524d76208f443
+------
What I'm slightly confused about is that the error you mentioned was "Invalid OpenStack Identity credentials", but the code you reference should produce "Non-default domain is not supported" instead.
def filter_ domain_ id(ref) : default_ domain_ id:
raise exception. Unauthorized(
_ ('Non-default domain is not supported'))
"""Remove domain_id since v2 calls are not domain-aware."""
if 'domain_id' in ref:
if ref['domain_id'] != CONF.identity.
del ref['domain_id']
return ref
Can you try using --debug to the command that's failing and paste the output: keystone --debug tenant-list ?
It'll also help to see any logs from the server side, and the environment variables you're using with the command (using env | grep OS) so we can further investigate this problem.