yahoo-eng-team team mailing list archive
-
yahoo-eng-team team
-
Mailing list archive
-
Message #61502
[Bug 1664468] [NEW] V3 version API through admin returns public_endpoint
Public bug reported:
I use the following keystone.conf:
・・・
public_endpoint = https://ct-dmz-vip:5000
admin_endpoint = http://ct-int-vip:25357
・・・
The v3 version API (GET /v3) through "public" endpoint returns response
body with public_endpoint("href": "https://ct-dmz-vip:5000/v3/") as
follows:
curl -X GET -k https://ct-dmz-vip:5000/v3
{"version": {"status": "stable", "updated": "2016-04-04T00:00:00Z", "media-types": [{"base": "application/json", "type": "application/vnd.openstack.identity-v3+json"}], "id": "v3.6", "links": [{"href": "https://ct-dmz-vip:5000/v3/", "rel": "self"}]}}
And, the v3 version API (GET /v3) through "admin" endpoint also returns
response body with public_endpoint("href": "https://ct-dmz-
vip:5000/v3/") as follows:
curl -X GET http://ct-int-vip:25357/v3
{"version": {"status": "stable", "updated": "2016-04-04T00:00:00Z", "media-types": [{"base": "application/json", "type": "application/vnd.openstack.identity-v3+json"}], "id": "v3.6", "links": [{"href": "https://ct-dmz-vip:5000/v3/", "rel": "self"}]}}
On the other hand, the v2 version API (GET /v2.0) through "public"
endpoint returns response body with public_endpoint("href": "https://ct-
dmz-vip:5000/v2.0/") as follows:
curl -X GET -k https://ct-dmz-vip:5000/v2.0
{"version": {"status": "stable", "updated": "2014-04-17T00:00:00Z", "media-types": [{"base": "application/json", "type": "application/vnd.openstack.identity-v2.0+json"}], "id": "v2.0", "links": [{"href": "https://ct-dmz-vip:5000/v2.0/", "rel": "self"}, {"href": "http://docs.openstack.org/", "type": "text/html", "rel": "describedby"}]}
And, the v2 version API (GET /v2.0) through "admin" endpoint returns
response body with admin_endpoint("href": "http://ct-int-
vip:25357/v2.0/") as follows:
curl -X GET http://ct-int-vip:25357/v2.0
{"version": {"status": "stable", "updated": "2014-04-17T00:00:00Z", "media-types": [{"base": "application/json", "type": "application/vnd.openstack.identity-v2.0+json"}], "id": "v2.0", "links": [{"href": "http://ct-int-vip:25357/v2.0/", "rel": "self"}, {"href": "http://docs.openstack.org/", "type": "text/html", "rel": "describedby"}]}
It would be better that v3 version API through "admin" endpoint returns
admin_endpoint, like v2 version API.
I think that it is caused by the following source code:
def v3_app_factory(global_conf, **local_conf):
・・・
sub_routers.append(routers.VersionV3('public', _routers))★
return wsgi.ComposingRouter(mapper, sub_routers)
https://github.com/openstack/keystone/blob/master/keystone/version/service.py#L158
** Affects: keystone
Importance: Undecided
Status: New
--
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to OpenStack Identity (keystone).
https://bugs.launchpad.net/bugs/1664468
Title:
V3 version API through admin returns public_endpoint
Status in OpenStack Identity (keystone):
New
Bug description:
I use the following keystone.conf:
・・・
public_endpoint = https://ct-dmz-vip:5000
admin_endpoint = http://ct-int-vip:25357
・・・
The v3 version API (GET /v3) through "public" endpoint returns
response body with public_endpoint("href": "https://ct-dmz-
vip:5000/v3/") as follows:
curl -X GET -k https://ct-dmz-vip:5000/v3
{"version": {"status": "stable", "updated": "2016-04-04T00:00:00Z", "media-types": [{"base": "application/json", "type": "application/vnd.openstack.identity-v3+json"}], "id": "v3.6", "links": [{"href": "https://ct-dmz-vip:5000/v3/", "rel": "self"}]}}
And, the v3 version API (GET /v3) through "admin" endpoint also
returns response body with public_endpoint("href": "https://ct-dmz-
vip:5000/v3/") as follows:
curl -X GET http://ct-int-vip:25357/v3
{"version": {"status": "stable", "updated": "2016-04-04T00:00:00Z", "media-types": [{"base": "application/json", "type": "application/vnd.openstack.identity-v3+json"}], "id": "v3.6", "links": [{"href": "https://ct-dmz-vip:5000/v3/", "rel": "self"}]}}
On the other hand, the v2 version API (GET /v2.0) through "public"
endpoint returns response body with public_endpoint("href": "https
://ct-dmz-vip:5000/v2.0/") as follows:
curl -X GET -k https://ct-dmz-vip:5000/v2.0
{"version": {"status": "stable", "updated": "2014-04-17T00:00:00Z", "media-types": [{"base": "application/json", "type": "application/vnd.openstack.identity-v2.0+json"}], "id": "v2.0", "links": [{"href": "https://ct-dmz-vip:5000/v2.0/", "rel": "self"}, {"href": "http://docs.openstack.org/", "type": "text/html", "rel": "describedby"}]}
And, the v2 version API (GET /v2.0) through "admin" endpoint returns
response body with admin_endpoint("href": "http://ct-int-
vip:25357/v2.0/") as follows:
curl -X GET http://ct-int-vip:25357/v2.0
{"version": {"status": "stable", "updated": "2014-04-17T00:00:00Z", "media-types": [{"base": "application/json", "type": "application/vnd.openstack.identity-v2.0+json"}], "id": "v2.0", "links": [{"href": "http://ct-int-vip:25357/v2.0/", "rel": "self"}, {"href": "http://docs.openstack.org/", "type": "text/html", "rel": "describedby"}]}
It would be better that v3 version API through "admin" endpoint
returns admin_endpoint, like v2 version API.
I think that it is caused by the following source code:
def v3_app_factory(global_conf, **local_conf):
・・・
sub_routers.append(routers.VersionV3('public', _routers))★
return wsgi.ComposingRouter(mapper, sub_routers)
https://github.com/openstack/keystone/blob/master/keystone/version/service.py#L158
To manage notifications about this bug go to:
https://bugs.launchpad.net/keystone/+bug/1664468/+subscriptions
Follow ups