Comment 4 for bug 1827863

Martin Kopec (mkopec) wrote :

Facts:
1. python-tempestconf previously did create flavors with disk size = 0 - this got changed by this review [1] only a few months ago
2. [1] is not packaged yet -> python-tempestconf packages for Rocky and Queens don't contain the [1] change
3. flavors with disk size = 0 are forbidden in Stein
4. We're going to update python-tempestconf package for Rocky and Queens in order get there some features implemented over last few months (including [1])
5. When python-tempestconf creates flavors necessary for running Tempest it looks for flavors named 'm1.nano' and 'm1.micro'. If any flavor with such a name is found, python-tempestconf doesn't create a new flavor, it will reuse that one and doesn't matter what are the other specifics of the flavor like disk size , ... -> that said, if there is a flavor named 'm1.nano' or 'm1.micro' with disk size = 0, python-tempestconf will not create a new one, even if it created a flavor with disk size != 0 .. THIS IS NOT A BUG

Now, I don't know which version the job upgrades from, but it doesn't matter. The job is probably failing because when python-tempestconf is executed for the first time (on OpenStack version older that Stein), it creates a flavor with disk size = 0 (because the [1] review is not packaged yet in that version). Then when it is executed again on Stein, it doesn't create a new flavors as the flavors are already created (the fact #5) and that leads to the failure (the reason is the fact #3).

I see two ways how to fix it:
1. make the job delete flavors before the second execution of python-tempestconf
2. update the python-tempestconf package for Rocky and Queens, which we need to do anyway (the fact #4)
I prefer the second way.

[1] https://github.com/openstack/python-tempestconf/commit/72f0edffb0ecb899e278137102915e58b7ddbe23