To expand on the above, the problem seems to be that the keystone catalog has an "admin" tenant ID in the object_store URL (/v1/AUTH_<admin-tenant-id>), whereas the old code had the "services" tenant ID.
However, if I use the more recent API ("openstack endpoint list") and then "openstack endpoint show <object-store-service-id>", I get:
What we need to do is to get those internalurl and publicurl values and replace $(tenant_id)s with "services" tenant ID in there. I am looking at how I get at this right now.
To expand on the above, the problem seems to be that the keystone catalog has an "admin" tenant ID in the object_store URL (/v1/AUTH_ <admin- tenant- id>), whereas the old code had the "services" tenant ID.
However, if I use the more recent API ("openstack endpoint list") and then "openstack endpoint show <object- store-service- id>", I get:
+------ ------- -+----- ------- ------- ------- ------- ------- ------- --+ ------- -+----- ------- ------- ------- ------- ------- ------- --+ 10.44.199. 170:8080 | 7bf8d04761b5bf3 50 | 10.44.199. 170:8080/ v1/AUTH_ $(tenant_ id)s | 10.44.199. 170:8080/ v1/AUTH_ $(tenant_ id)s | 09cc101e8575c2d f7 | ------- -+----- ------- ------- ------- ------- ------- ------- --+
| Field | Value |
+------
| adminurl | http://
| enabled | True |
| id | 69ff557520f24f2
| internalurl | http://
| publicurl | http://
| region | region1 |
| service_id | e0d9101e28f24bb
| service_name | swift |
| service_type | object-store |
+------
What we need to do is to get those internalurl and publicurl values and replace $(tenant_id)s with "services" tenant ID in there. I am looking at how I get at this right now.