diff --git a/doc/notification_samples/instance-shelve_offload-end.json b/doc/notification_samples/instance-shelve_offload-end.json index 90114e480526..96e52edb63b8 100644 --- a/doc/notification_samples/instance-shelve_offload-end.json +++ b/doc/notification_samples/instance-shelve_offload-end.json @@ -3,7 +3,7 @@ "payload":{ "nova_object.data":{ "architecture":"x86_64", - "availability_zone": "nova", + "availability_zone": null, "block_devices": [{ "nova_object.data": { "boot_index": null, diff --git a/nova/compute/manager.py b/nova/compute/manager.py index 2fdc08278bb6..4de52119e016 100644 --- a/nova/compute/manager.py +++ b/nova/compute/manager.py @@ -577,6 +577,9 @@ class ComputeManager(manager.Manager): # to the database layer. instance.host = None instance.node = None + # If the instance is not on a host, it's not in an aggregate and + # therefore is not in an availability zone. + instance.availability_zone = None def _set_instance_obj_error_state(self, context, instance, clean_task_state=False): diff --git a/nova/tests/functional/test_servers.py b/nova/tests/functional/test_servers.py index 9c35fbe2af10..a388190fc1e0 100644 --- a/nova/tests/functional/test_servers.py +++ b/nova/tests/functional/test_servers.py @@ -2484,7 +2484,8 @@ class ServerMovingTests(ProviderUsageBaseTestCase): self.api.post_server_action(server['id'], req) self._wait_for_server_parameter( self.api, server, {'status': 'SHELVED_OFFLOADED', - 'OS-EXT-SRV-ATTR:host': None}) + 'OS-EXT-SRV-ATTR:host': None, + 'OS-EXT-AZ:availability_zone': ''}) source_usages = self._get_provider_usages(source_rp_uuid) self.assertEqual({'VCPU': 0, 'MEMORY_MB': 0,