Set group_members when converting to legacy request spec
In Pike we converted the affinity filter code to use the RequestSpec
object instead of legacy dicts. The filter used to populate server
group info in the filter_properties and the conversion removed that.
However, in the conductor, we are still converting RequestSpec back
and forth between object and primitive, and there is a mismatch
between the keys being set/get in filter_properties. So during a
reschedule with a server group, we hit an exception
"'NoneType' object is not iterable" in the RequestSpec.from_primitives
method and the reschedule fails.
This adds 'group_members' to the _to_legacy_group_info method to set
the key.
Closes-Bug: #1719730
NOTE(mriedem): There are a few changes for Newton because of config
option renames in Ocata and the PlacementFixture didn't exist in
Newton, and we have to be explicit about running Neutron.
Reviewed: https:/ /review. openstack. org/517868 /git.openstack. org/cgit/ openstack/ nova/commit/ ?id=6b7b4aa4a5d 19a648556a9076f 61f4e87f4710e0
Committed: https:/
Submitter: Zuul
Branch: stable/newton
commit 6b7b4aa4a5d19a6 48556a9076f61f4 e87f4710e0
Author: melanie witt <email address hidden>
Date: Wed Sep 27 17:27:56 2017 +0000
Set group_members when converting to legacy request spec
In Pike we converted the affinity filter code to use the RequestSpec from_primitives
object instead of legacy dicts. The filter used to populate server
group info in the filter_properties and the conversion removed that.
However, in the conductor, we are still converting RequestSpec back
and forth between object and primitive, and there is a mismatch
between the keys being set/get in filter_properties. So during a
reschedule with a server group, we hit an exception
"'NoneType' object is not iterable" in the RequestSpec.
method and the reschedule fails.
This adds 'group_members' to the _to_legacy_ group_info method to set
the key.
Closes-Bug: #1719730
NOTE(mriedem): There are a few changes for Newton because of config
option renames in Ocata and the PlacementFixture didn't exist in
Newton, and we have to be explicit about running Neutron.
Depends-On: I344d8fdded9b7d 5385fcb41b699f1 352acb4cda7
Change-Id: Icb418f2be575bb 2ba82756fdeb67b 24a28950746 c5145c14ac38011 e919d6d8c0) dfc6679eda17bb8 fcc62577de) dedc1687792930a ab5cc14ca9)
(cherry picked from commit 9d6632a67d91fb3
(cherry picked from commit d288132dca7cc76
(cherry picked from commit 2e25f689a910e1a