[placement][nova][ptg] Testing PlacementFixture effectively
>From the cross project etherpad 
* We've had two instances where nova functional tests have failed
from what seems like an unrelated change in placement, but turns
out to be something that impacts the behavior of the
PlacementFixture, from placement, used by nova. Would be good to
decide on a way to make this safer without having to run the
entire nova functional test suite (and the functional suite of
every other project that eventually uses the Fixture) on every
placement change. Maybe a subset somehow? Or some other kind of
magic? Another option may be what we've been doing: fixing
problems as they come up. That might be OK.
* (gibi): Currently placement patches trigger grenade-py3 and
tempest-full-py3 and both jobs takes around an hour to run. The
nova-tox-functional test runs in about 20 minutes. So triggering
nova-tox-functional for placement patches does not increase the
length of the CI feedback loop.
* True but the total cpu cost of testing a single placement
patch is a thing we need to keep in mind. Zuul resources are
scarce. It's not just how long we have to wait, but how long
everyone has to wait for all patches. (Not saying we shouldn't
do it, just that we need to consider that impact.) (gibi): I
agree that overall cpu cost is a factor here.
* [efried] ++ I think this is a solid idea, at least until we
implement the next bullet.
* (gibi): Both above bug could be detected with some test on the
placement side using the PlacementFixture in a way nova is using
that fixture. It might not be easy to gather all the relevat usage
* [efried] Agree with this. We don't have any testing of
PlacementFixture in placement itself (until the below)
* [efried] Started simple unit testing here https://review.openstack.org/#/c/645255/
* This probably doesn't do us much good wrt preventing weird
gatebusters like the above.
This is generally agreed to be an issue we need to address and there
are ideas for how to fix it, so the things to resolve here are:
* Tuning the ideas to the best combination.
* Figuring out who is going to do it.
Chris Dent Ù©â??Ì¯â??Û¶ https://anticdent.org/
freenode: cdent tw: @anticdent