Swift client has an option to provide a path to a cert file.
The volume backup swift driver is missing an option to specify a cert file
Volume backup requets fail when the requests library tries to verify the cert, the backup then goes into the error state
2015-01-20 15:09:47.682 25976 TRACE oslo.messaging.rpc.dispatcher Traceback (most recent call last):
2015-01-20 15:09:47.682 25976 TRACE oslo.messaging.rpc.dispatcher File "/opt/stack/venvs/openstack/local/lib/python2.7/site-packages/oslo/messaging/rpc/dispatcher.py", line 137, in _dispatch_and_reply
2015-01-20 15:09:47.682 25976 TRACE oslo.messaging.rpc.dispatcher incoming.message))
2015-01-20 15:09:47.682 25976 TRACE oslo.messaging.rpc.dispatcher File "/opt/stack/venvs/openstack/local/lib/python2.7/site-packages/oslo/messaging/rpc/dispatcher.py", line 180, in _dispatch
2015-01-20 15:09:47.682 25976 TRACE oslo.messaging.rpc.dispatcher return self._do_dispatch(endpoint, method, ctxt, args)
2015-01-20 15:09:47.682 25976 TRACE oslo.messaging.rpc.dispatcher File "/opt/stack/venvs/openstack/local/lib/python2.7/site-packages/oslo/messaging/rpc/dispatcher.py", line 126, in _do_dispatch
2015-01-20 15:09:47.682 25976 TRACE oslo.messaging.rpc.dispatcher result = getattr(endpoint, method)(ctxt, **new_args)
2015-01-20 15:09:47.682 25976 TRACE oslo.messaging.rpc.dispatcher File "/opt/stack/venvs/openstack/local/lib/python2.7/site-packages/osprofiler/profiler.py", line 105, in wrapper
2015-01-20 15:09:47.682 25976 TRACE oslo.messaging.rpc.dispatcher return f(*args, **kwargs)
2015-01-20 15:09:47.682 25976 TRACE oslo.messaging.rpc.dispatcher File "/opt/stack/venvs/openstack/local/lib/python2.7/site-packages/cinder/backup/manager.py", line 288, in create_backup
2015-01-20 15:09:47.682 25976 TRACE oslo.messaging.rpc.dispatcher 'fail_reason': unicode(err)})
2015-01-20 15:09:47.682 25976 TRACE oslo.messaging.rpc.dispatcher File "/opt/stack/venvs/openstack/local/lib/python2.7/site-packages/cinder/openstack/common/excutils.py", line 82, in __exit__
2015-01-20 15:09:47.682 25976 TRACE oslo.messaging.rpc.dispatcher six.reraise(self.type_, self.value, self.tb)
2015-01-20 15:09:47.682 25976 TRACE oslo.messaging.rpc.dispatcher File "/opt/stack/venvs/openstack/local/lib/python2.7/site-packages/cinder/backup/manager.py", line 281, in create_backup
2015-01-20 15:09:47.682 25976 TRACE oslo.messaging.rpc.dispatcher backup_service)
2015-01-20 15:09:47.682 25976 TRACE oslo.messaging.rpc.dispatcher File "/opt/stack/venvs/openstack/local/lib/python2.7/site-packages/osprofiler/profiler.py", line 105, in wrapper
2015-01-20 15:09:47.682 25976 TRACE oslo.messaging.rpc.dispatcher return f(*args, **kwargs)
2015-01-20 15:09:47.682 25976 TRACE oslo.messaging.rpc.dispatcher File "/opt/stack/venvs/openstack/local/lib/python2.7/site-packages/cinder/volume/drivers/lvm.py", line 324, in backup_volume
2015-01-20 15:09:47.682 25976 TRACE oslo.messaging.rpc.dispatcher backup_service.backup(backup, volume_file)
2015-01-20 15:09:47.682 25976 TRACE oslo.messaging.rpc.dispatcher File "/opt/stack/venvs/openstack/local/lib/python2.7/site-packages/cinder/backup/drivers/swift.py", line 387, in backup
2015-01-20 15:09:47.682 25976 TRACE oslo.messaging.rpc.dispatcher object_meta, container = self._prepare_backup(backup)
2015-01-20 15:09:47.682 25976 TRACE oslo.messaging.rpc.dispatcher File "/opt/stack/venvs/openstack/local/lib/python2.7/site-packages/cinder/backup/drivers/swift.py", line 274, in _prepare_backup
2015-01-20 15:09:47.682 25976 TRACE oslo.messaging.rpc.dispatcher container = self._create_container(self.context, backup)
2015-01-20 15:09:47.682 25976 TRACE oslo.messaging.rpc.dispatcher File "/opt/stack/venvs/openstack/local/lib/python2.7/site-packages/cinder/backup/drivers/swift.py", line 198, in _create_container
2015-01-20 15:09:47.682 25976 TRACE oslo.messaging.rpc.dispatcher self.conn.put_container(container)
2015-01-20 15:09:47.682 25976 TRACE oslo.messaging.rpc.dispatcher File "/opt/stack/venvs/openstack/local/lib/python2.7/site-packages/swiftclient/client.py", line 1319, in put_container
2015-01-20 15:09:47.682 25976 TRACE oslo.messaging.rpc.dispatcher response_dict=response_dict)
2015-01-20 15:09:47.682 25976 TRACE oslo.messaging.rpc.dispatcher File "/opt/stack/venvs/openstack/local/lib/python2.7/site-packages/swiftclient/client.py", line 1243, in _retry
2015-01-20 15:09:47.682 25976 TRACE oslo.messaging.rpc.dispatcher rv = func(self.url, self.token, *args, **kwargs)
2015-01-20 15:09:47.682 25976 TRACE oslo.messaging.rpc.dispatcher File "/opt/stack/venvs/openstack/local/lib/python2.7/site-packages/swiftclient/client.py", line 718, in put_container
2015-01-20 15:09:47.682 25976 TRACE oslo.messaging.rpc.dispatcher conn.request(method, path, '', headers)
2015-01-20 15:09:47.682 25976 TRACE oslo.messaging.rpc.dispatcher File "/opt/stack/venvs/openstack/local/lib/python2.7/site-packages/swiftclient/client.py", line 217, in request
2015-01-20 15:09:47.682 25976 TRACE oslo.messaging.rpc.dispatcher files=files, **self.requests_args)
2015-01-20 15:09:47.682 25976 TRACE oslo.messaging.rpc.dispatcher File "/opt/stack/venvs/openstack/local/lib/python2.7/site-packages/swiftclient/client.py", line 185, in _request
2015-01-20 15:09:47.682 25976 TRACE oslo.messaging.rpc.dispatcher return self.request_session.request(*arg, **kwarg)
2015-01-20 15:09:47.682 25976 TRACE oslo.messaging.rpc.dispatcher File "/opt/stack/venvs/openstack/local/lib/python2.7/site-packages/requests/sessions.py", line 461, in request
2015-01-20 15:09:47.682 25976 TRACE oslo.messaging.rpc.dispatcher resp = self.send(prep, **send_kwargs)
2015-01-20 15:09:47.682 25976 TRACE oslo.messaging.rpc.dispatcher File "/opt/stack/venvs/openstack/local/lib/python2.7/site-packages/requests/sessions.py", line 573, in send
2015-01-20 15:09:47.682 25976 TRACE oslo.messaging.rpc.dispatcher r = adapter.send(request, **kwargs)
2015-01-20 15:09:47.682 25976 TRACE oslo.messaging.rpc.dispatcher File "/opt/stack/venvs/openstack/local/lib/python2.7/site-packages/requests/adapters.py", line 431, in send
2015-01-20 15:09:47.682 25976 TRACE oslo.messaging.rpc.dispatcher raise SSLError(e, request=request)
2015-01-20 15:09:47.682 25976 TRACE oslo.messaging.rpc.dispatcher SSLError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:581)
Fix proposed to branch: master /review. openstack. org/149618
Review: https:/