commit ea53d9f1ea8bab797250f7add535fe16236f9a34
Author: Matt Riedemann <email address hidden>
Date: Thu Oct 26 17:33:35 2017 -0400
Pass the correct image to build_request_spec in conductor.rebuild_instance
If we're calling build_request_spec in conductor.rebuild_instance,
it's because we are evacuating and the instance is so old it does
not have a request spec. We need the request_spec to pass to the
scheduler to pick a destination host for the evacuation.
For evacuate, nova-api does not pass any image reference parameters,
and even if it did, those are image IDs, not an image meta dict that
build_request_spec expects, so this code has just always been wrong.
This change fixes the problem by passing a primitive version of
the instance.image_meta which build_request_spec will then return
back to conductor and that gets used to build a RequestSpec object
from primitives.
It's important to use the correct image meta so that the scheduler
can properly filter hosts using things like the
AggregateImagePropertiesIsolation and ImagePropertiesFilter filters.
Conflicts: nova/conductor/manager.py
NOTE(mriedem): Conflict is due to e211fca55a11c80058d5d78e31dc3ad466d7edfd
not being in Ocata.
Change-Id: I0c8ce65016287de7be921c312493667a8c7f762e
Closes-Bug: #1727855
(cherry picked from commit d2690d6b038e200efed05bf7773898a0a8bb01d7)
(cherry picked from commit dc44c48943f8ce66bbbdc2050ed2dc47778cf477)
Reviewed: https:/ /review. openstack. org/516404 /git.openstack. org/cgit/ openstack/ nova/commit/ ?id=ea53d9f1ea8 bab797250f7add5 35fe16236f9a34
Committed: https:/
Submitter: Zuul
Branch: stable/ocata
commit ea53d9f1ea8bab7 97250f7add535fe 16236f9a34
Author: Matt Riedemann <email address hidden>
Date: Thu Oct 26 17:33:35 2017 -0400
Pass the correct image to build_request_spec in conductor. rebuild_ instance
If we're calling build_request_spec in conductor. rebuild_ instance,
it's because we are evacuating and the instance is so old it does
not have a request spec. We need the request_spec to pass to the
scheduler to pick a destination host for the evacuation.
For evacuate, nova-api does not pass any image reference parameters, request_ spec expects, so this code has just always been wrong.
and even if it did, those are image IDs, not an image meta dict that
build_
This change fixes the problem by passing a primitive version of
the instance.image_meta which build_request_spec will then return
back to conductor and that gets used to build a RequestSpec object
from primitives.
It's important to use the correct image meta so that the scheduler agePropertiesIs olation and ImageProperties Filter filters.
can properly filter hosts using things like the
AggregateIm
Conflicts:
nova/ conductor/ manager. py
NOTE(mriedem): Conflict is due to e211fca55a11c80 058d5d78e31dc3a d466d7edfd
not being in Ocata.
Change-Id: I0c8ce65016287d e7be921c3124936 67a8c7f762e efed05bf7773898 a0a8bb01d7) 6bbbdc2050ed2dc 47778cf477)
Closes-Bug: #1727855
(cherry picked from commit d2690d6b038e200
(cherry picked from commit dc44c48943f8ce6