Discover Service endpoints via a plugin

Registered by Jamie Lennox

Most clients don't actually care what URL they use to communicate with a server. They just care that the URL belongs to the service type they expect.

This information linking the service type to a URL comes from the service catalog which is received as part of a user's token. Because user tokens are now managed by auth plugins it makes sense that the service catalog and thus the endpoint determination should be managed by the auth plugin as well.

So rather than specifying the full URL that a request should be made from it should be able to just say:

session.request('/users', service_type='identity', endpoint_type='admin')

and have the plugin/session figure the rest out for it.

This will give us a common place to plug endpoint version discovery into in the future.

Blueprint information

Status:
Complete
Approver:
None
Priority:
Undefined
Drafter:
Jamie Lennox
Direction:
Needs approval
Assignee:
Jamie Lennox
Definition:
Pending Approval
Series goal:
None
Implementation:
Implemented
Milestone target:
None
Started by
Jamie Lennox
Completed by
Jamie Lennox

Related branches

Sprints

Whiteboard

Gerrit topic: https://review.openstack.org/#q,topic:bp/auth-plugin-endpoints,n,z

Addressed by: https://review.openstack.org/60752
    Handle URLs via the session and auth_plugins

(?)

Work Items

Dependency tree

* Blueprints in grey have been implemented.

This blueprint contains Public information 
Everyone can see this information.

Subscribers

No subscribers.