Merge lp://qastaging/~sandy-walsh/nova/zone-add-uses-zone-name into lp://qastaging/~hudson-openstack/nova/trunk
Status: | Merged |
---|---|
Approved by: | Matt Dietz |
Approved revision: | 1534 |
Merged at revision: | 1611 |
Proposed branch: | lp://qastaging/~sandy-walsh/nova/zone-add-uses-zone-name |
Merge into: | lp://qastaging/~hudson-openstack/nova/trunk |
Diff against target: |
800 lines (+193/-72) 12 files modified
nova/api/openstack/servers.py (+41/-0) nova/api/openstack/zones.py (+1/-1) nova/compute/api.py (+2/-4) nova/db/sqlalchemy/migrate_repo/versions/048_add_zone_name.py (+35/-0) nova/db/sqlalchemy/models.py (+1/-0) nova/rpc/impl_kombu.py (+0/-1) nova/scheduler/abstract_scheduler.py (+2/-1) nova/scheduler/api.py (+37/-21) nova/scheduler/zone_manager.py (+12/-5) nova/tests/scheduler/test_scheduler.py (+43/-27) nova/tests/test_zones.py (+18/-11) tools/pip-requires (+1/-1) |
To merge this branch: | bzr merge lp://qastaging/~sandy-walsh/nova/zone-add-uses-zone-name |
Related bugs: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Matt Dietz (community) | Approve | ||
Jason Kölker (community) | Approve | ||
Review via email:
|
Commit message
Keystone support in Nova across Zones.
Description of the change
This branch allows nova to reuse keystone auth tokens in cross-zone situations. Additionally it cleans up some of the exception handling in sub-zones (converting novaclient exceptions to webob-compatible exceptions).
In the case where Nova is acting by itself (like a scheduler polling a child), it will use the admin credentials provided. Otherwise, if a user token exists, the operation will be relayed to the child zones as that user.
Endpoints from the Keystone Service Catalog are now used to identify Zone endpoints. This is a reversal of the direction-
Watch this video for a demo: http://
(the 404 bug is fixed now)
I should add that this merge prop requires the following keystone branch /review. openstack. org/#change, 359
https:/
and the python-novaclient 2.6.5 pull request /github. com/rackspace/ python- novaclient/ pull/118
https:/
to land first.