shade/shade
Monty Taylor 71322c7bbc
Fix several concurrent shade gate issues
This is a big patch because there are more than one issue happening at
the same time and we have to fix all of them to fix any of them.

Force nova microversion to 2.0

The current use of novaclient is to get the latest microversion. So far
this has not been a problem, as shade deals with different payloads
across clouds all the time. However, the latest microversion to nova
broke shade's expectations about how usage reports work. Actual
microversion support is coming soon to shade, but is too much of a task
for a gate fix. In the meantime, pin to 2.0 which is available on all of
the clouds.

Produce some debug details about nova usage objects
Capture novaclient debug logging

In chasing down the usage issue, we were missing the REST interactions
we needed to be effective in chasing down the problem. novaclient passes
its own logger to keystoneauth Session, so we needed to include it in
the debug logging setup.

Also, add a helper function to make adding things like this easier.

Consume cirros qcow2 image if it's there

The move from ami to qcow2 for cirros broke shade's finding of it as a
candidate image. Move pick_image into the base class so that we can include
add_on_exception and error messages everywhere consistently.

Add image list to debug output on failure.
When we can't find a sensible image, add the list of images to the test
output so that we can examine them.

Change-Id: Ifae65e6cdf48921eaa379b803913277affbfe22a
2017-02-15 13:18:30 -06:00
..
_heat Copy in needed template processing utils from heatclient 2017-01-31 12:40:44 +00:00
cmd Merge "Allow inventory filtering by cloud name" 2016-01-12 22:03:30 +00:00
tests Fix several concurrent shade gate issues 2017-02-15 13:18:30 -06:00
__init__.py Log request ids when debug logging is enabled 2017-01-10 13:51:04 -05:00
_adapter.py Process json based on content-type 2017-01-31 22:20:09 +00:00
_log.py Add a NullHandler to all of our loggers 2015-09-22 16:10:11 -05:00
_normalize.py Move flavor cache tests to requests_mock 2017-02-01 02:57:02 +00:00
_tasks.py Move nova flavor interactions to REST 2017-02-01 02:58:00 +00:00
_utils.py Support globbing in name or id checks 2017-02-01 11:12:18 -06:00
exc.py Stop double-reporting extra_data in exceptions 2016-12-15 09:03:23 -06:00
inventory.py Always do network interface introspection 2016-03-23 10:18:24 -05:00
meta.py Merge "Honor cloud.private in the check for public connectivity" 2017-02-06 14:45:50 +00:00
openstackcloud.py Fix several concurrent shade gate issues 2017-02-15 13:18:30 -06:00
operatorcloud.py Move nova flavor interactions to REST 2017-02-01 02:58:00 +00:00
task_manager.py Pass task to post_task_run hook 2017-02-06 17:23:04 -06:00