charm-cinder-backup-swift-proxy installed python-swiftclient wrong parsing on swift endpoint url
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Juju Charms Collection |
New
|
Undecided
|
Unassigned |
Bug Description
In our case, we wanted to use a Swift endpoint on Ceph (ceph-radosgw) for our volume backups.
We used the charm "cinder-
Among other packages, it also installs the apt package "python3-
In the charm options we used the field:
endpoint-url: "https:/
The fact that the endpoint URL contains a path after the port (swift/) resulted in the following error:
2020-05-08 18:59:43.374 39951 ERROR oslo.service.
2020-05-08 18:59:43.374 39951 ERROR oslo.service.
2020-05-08 18:59:43.374 39951 ERROR oslo.service.
2020-05-08 18:59:43.374 39951 ERROR oslo.service.
2020-05-08 18:59:43.374 39951 ERROR oslo.service.
2020-05-08 18:59:43.374 39951 ERROR oslo.service.
2020-05-08 18:59:43.374 39951 ERROR oslo.service.
2020-05-08 18:59:43.374 39951 ERROR oslo.service.
2020-05-08 18:59:43.374 39951 ERROR oslo.service.
2020-05-08 18:59:43.374 39951 ERROR oslo.service.
2020-05-08 18:59:43.374 39951 ERROR oslo.service.
2020-05-08 18:59:43.374 39951 ERROR oslo.service.
2020-05-08 18:59:43.374 39951 ERROR oslo.service.
So the URL given was: "https:/
but the URL used was: "https:/
This happens because of the python3-swiftclient code, in file "/usr/lib/
def get_capabilitie
url = url or self.url
if not url:
url, _ = self.get_auth()
parsed = urlparse(
if not self.http_conn:
return get_capabilitie
The line "parsed = urlparse(
This issue seems to be fixed in the master branch of "python-
https:/
I think we need an updated version on python3-swiftclient for the apt package.