Add API versioning similar to what Ironic does
Every request may have X-OpenStack-
In every response X-OpenStack-
Both client functions will accept "api_version" argument, either as 1 number (major version, use the default) or as a tuple (X,Y), or as a string "X.Y". Client will have DEFAULT_API_VERSION attribute set to (1,0).
No effort will be undertaken to prevent a user from NOT declaring a needed API version (as opposed to what Ironic and Nova are doing).
Server change:
* Return API versions in *every* response
* Check that provided API version is supported
Client change:
* Actually pass headers to the server
* Implement server_
* If api_version is provided, call server_
Reference:
* https:/
* https:/
Blueprint information
- Status:
- Complete
- Approver:
- Dmitry Tantsur
- Priority:
- Essential
- Drafter:
- Dmitry Tantsur
- Direction:
- Approved
- Assignee:
- Dmitry Tantsur
- Definition:
- Approved
- Series goal:
- Accepted for liberty
- Implementation:
-
Implemented
- Milestone target:
-
2.1.0
- Started by
- Dmitry Tantsur
- Completed by
- Dmitry Tantsur
Related branches
Related bugs
Sprints
Whiteboard
dtantsur: discussion is still going on, not sure if we manage to fit this in 2.1.0..
dtantsur: priority "essential" as we need to have it at least in _some_ form before we start adding API
Client change:
https:/
Gerrit topic: https:/
Addressed by: https:/
Fix functional test invocation
Addressed by: https:/
Implement optional API versioning