summaryrefslogtreecommitdiffstats
path: root/nova/api
diff options
context:
space:
mode:
authorJenkins <jenkins@review.openstack.org>2013-06-28 23:36:18 +0000
committerGerrit Code Review <review@openstack.org>2013-06-28 23:36:18 +0000
commit4961cab45367bff74e22b4dd881414db0aa2694f (patch)
treed9b130c698455ef899c4b8cf2202979f5d4695f5 /nova/api
parentd6397cbd68e5e47758bf4ad6928519b5d833ca1a (diff)
parent5ff0278561d4008bc710440129f4a7b5c38cdd98 (diff)
downloadnova-4961cab45367bff74e22b4dd881414db0aa2694f.tar.gz
nova-4961cab45367bff74e22b4dd881414db0aa2694f.tar.xz
nova-4961cab45367bff74e22b4dd881414db0aa2694f.zip
Merge "Report the az based on the value in the instance table."
Diffstat (limited to 'nova/api')
-rw-r--r--nova/api/openstack/compute/contrib/extended_availability_zone.py11
1 files changed, 8 insertions, 3 deletions
diff --git a/nova/api/openstack/compute/contrib/extended_availability_zone.py b/nova/api/openstack/compute/contrib/extended_availability_zone.py
index 00765e209..6e77cd6bd 100644
--- a/nova/api/openstack/compute/contrib/extended_availability_zone.py
+++ b/nova/api/openstack/compute/contrib/extended_availability_zone.py
@@ -20,7 +20,7 @@
from nova.api.openstack import extensions
from nova.api.openstack import wsgi
from nova.api.openstack import xmlutil
-from nova import availability_zones
+from nova import availability_zones as avail_zone
authorize = extensions.soft_extension_authorizer('compute',
'extended_availability_zone')
@@ -29,8 +29,13 @@ authorize = extensions.soft_extension_authorizer('compute',
class ExtendedAZController(wsgi.Controller):
def _extend_server(self, context, server, instance):
key = "%s:availability_zone" % Extended_availability_zone.alias
- server[key] = availability_zones.get_instance_availability_zone(
- context, instance)
+ az = avail_zone.get_instance_availability_zone(context, instance)
+ if not az and instance.get('availability_zone'):
+ # Likely hasn't reached a viable compute node yet so give back the
+ # desired availability_zone that *may* exist in the instance
+ # record itself.
+ az = instance['availability_zone']
+ server[key] = az
@wsgi.extends
def show(self, req, resp_obj, id):