Ask Your Question
1

Using nova client in windows ERROR (DiscoveryFailure): Could not determine a suitable URL for the plugin

asked 2015-08-19 17:45:55 -0500

BuildGuru gravatar image

updated 2015-08-19 17:50:57 -0500

Hello,

I am running OpenStack kilo on Ubuntu 14.04.3 , I want to use nova or openstack client CLI on windows. The client is working fine on my ubuntu box I am trying to use the nova or OpenStack client on windows but it returns error: ERROR (DiscoveryFailure): Could not determine a suitable URL for the plugin

I have seen a similar issue with admin-openrc.sh https://ask.openstack.org/en/question...

However i tried the same values for the variables with admin-openrc.bat but still had no luck

hers is my admin-openrc.bat

          set OS_PROJECT_DOMAIN_ID=default
         set OS_USER_DOMAIN_ID=default
         set OS_PROJECT_NAME=admin
          set OS_TENANT_NAME=admin
          set OS_USERNAME=admin
          set OS_PASSWORD=ThePasswordValue
          set OS_AUTH_URL=http://controller:35357/v2.0/
          set OS_IMAGE_API_VERSION=2
          set OS_VOLUME_API_VERSION=2

Yes, i did set controller IP address in the windows hosts file, and i am able to ping controller

Here is the output from nova-client

     nova --debug service-list
      DEBUG (session:195) REQ: curl -g -i -X GET http://controller:35357/v2.0/ -H "Acc 
      ept: application/json" -H "User-Agent: python-keystoneclient"
      INFO (connectionpool:203) Starting new HTTP connection (1): controller
     WARNING (base:133) Discovering versions from the identity service failed when cr
      eating the password plugin. Attempting to determine version from URL.
       DEBUG (shell:819) Could not determine a suitable URL for the plugin
       Traceb ack (most recent call last):
         File "C:\Python27\lib\site-packages\novaclient\shell.py", line 816, in main
           OpenStackComputeShell().main(argv)
             File "C:\Python27\lib\site-packages\novaclient\shell.py", line 743, in main
            args.fu nc(self.cs, args)
           File "C:\Python27\lib\site-packages\novaclient\v2\shell.py", line 3492, in do_
          service_list
           result = cs.services.list(host=args.host, binary=args.binary)
           File "C:\Python27\lib\site-packages\novaclient\v2\services.py", line 49, in li
           st
           return self._list(url, "services")
          File "C:\Python27\lib\site-packages\novaclient\base.py", line 64, in _list
             _resp, body = self.api.client.get(url)
            File "C:\Python27\lib\site-packages\keystoneclient\adapter.py", line 170, in g
             et
            return self.request(url, 'GET', **kwargs)
             File "C:\Python27\lib\site-packages\novaclient\client.py", line 101, in reques
              t
                **kwargs)
               File "C:\Python27\lib\site-packages\keystoneclient\adapter.py", line 206, in r
              equest
                resp = super(LegacyJsonAdapter, self).request(*args, **kwargs)
                 File "C:\Python27\lib\site-packages\keystoneclient\adapter.py", line 95, in re
                  quest
                   return self.session.request(url, method, **kwargs)
                   File "C:\Python27\lib\site-packages\keystoneclient\utils.py", line 336, in inn
                   er
                 return func(*args, **kwargs)
                    File "C:\Python27\lib\site-packages\keystoneclient\session.py", line 313, in r
                   equest
                  auth_headers = self.get_auth_headers(auth)
                 File "C:\Python27\lib\site-packages\keystoneclient\session.py", line 598, in g
               et_auth_headers
                   return auth.get_headers(self, **kwargs)
               File "C:\Python27\lib\site-packages\keystoneclient\auth\base.py", line 142, in
                get_headers
                   token = self.get_token(session)
              File "C:\Python27\lib\site-packages\keystoneclient\auth\identity\base.py", lin
                e 105, in get_token
                   return self.get_access(session).auth_token
                   File "C:\Python27\lib\site-packages\keystoneclient\auth\identity\base.py", lin
                  e 145, in get_access
                 self.auth_ref = self ...
(more)
edit retag flag offensive close merge delete

3 answers

Sort by ยป oldest newest most voted
3

answered 2015-10-02 03:57:56 -0500

ArneS gravatar image

This error is related to the version of Keystone API you're using. As noted in https://bugs.launchpad.net/python-openstackclient/+bug/1447704 (this open bug report), it does not work when using an OS_AUTH_URL ending in "v2.0" and the variables OS_PROJECT_DOMAIN_ID and OS_USER_DOMAIN_ID are set.

The workaround is to remove the variables OS_PROJECT_DOMAIN_ID and OS_USER_DOMAIN_ID if you wish to use v2 of the Keystone API.

edit flag offensive delete link more

Comments

Many thanks, still valid for Mitaka on CentOS. changed the authentication URL to "v2.0" to get it working.

Sumanth gravatar imageSumanth ( 2016-09-13 10:53:50 -0500 )edit
1

answered 2016-01-29 22:52:50 -0500

canht32 gravatar image

Try to delete file in ~/.config/openstack/cloud.yaml

edit flag offensive delete link more

Comments

I have changed everything imagine in Keystone. It didn't help. Only deletion of the above file helped and I recommend it strongly. Good job.

Asaf Henig gravatar imageAsaf Henig ( 2016-02-05 11:27:20 -0500 )edit
0

answered 2015-09-01 17:01:41 -0500

BuildGuru gravatar image

Check if windows is on the same subnet

edit flag offensive delete link more

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

Get to know Ask OpenStack

Resources for moderators

Question Tools

1 follower

Stats

Asked: 2015-08-19 17:45:55 -0500

Seen: 10,767 times

Last updated: Sep 01 '15