James created LIBCLOUD-635:
------------------------------
Summary: openstack swift authentication problem in 0.16.0
Key: LIBCLOUD-635
URL: https://issues.apache.org/jira/browse/LIBCLOUD-635
Project: Libcloud
Issue Type: Bug
Components: Storage
Reporter: James
On 0.16.0, after connection to an OpenStack installation with code of the form:
```
cls = get_driver(Provider.OPENSTACK_SWIFT)
driver = cls("user", "password" , ex_force_auth_url="url",
ex_tenant_name="tenant",
ex_force_auth_version="2.0_password",ex_force_service_type='object-store',
ex_force_service_name='swift', ex_force_service_region="region")
```
When trying to do
```
driver.list_containers()
```
I get an exception, the bottom of the traceback for which looks like:
```
/home/ubuntu/verify/local/lib/python2.7/site-packages/libcloud/common/openstack.pyc
in morph_action_hook(self, action)
253
254 def morph_action_hook(self, action):
--> 255 self._populate_hosts_and_request_paths()
256 return super(OpenStackBaseConnection,
self).morph_action_hook(action)
257
/home/ubuntu/verify/local/lib/python2.7/site-packages/libcloud/common/openstack.pyc
in _populate_hosts_and_request_paths(self)
297 self.service_catalog = osc
298
--> 299 url = self._ex_force_base_url or self.get_endpoint()
300 self._set_up_connection_info(url=url)
301
/home/ubuntu/verify/local/lib/python2.7/site-packages/libcloud/storage/drivers/cloudfiles.pyc
in get_endpoint(self, *args, **kwargs)
139 name=self._service_name, region=self._service_region)
140
--> 141 if PUBLIC_ENDPOINT_KEY in endpoint:
142 return endpoint[PUBLIC_ENDPOINT_KEY]
143 else:
TypeError: argument of type 'OpenStackServiceCatalogEntryEndpoint' is not
iterable
```
The same code works without error on 0.15.1
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)