Add functional test for bug 1550919
Add functional test for bug 1550919

This adds a failing test, which we fix in change I76448196.

An earlier version of this change was previously merged as
change I5619728d. This was later reverted, as it was failing in the
gate. However, on inspection these failures seem to have been simply
timeouts due to load.

Changes from previous version:

- Increase the timeouts which were previously triggering, and
  serialise server creation to reduce the chance of this recurring.
- Add an LVM test, which highlights the requirement to flag the
  creation of ephemeral and swap disks.
- Add an Qcow2 test, essentially the same as the Flat test but ensures
  coverage of the most common backends.
- Each test now uses a separate instances_path allowing for cleanup
  without racing against other active tests.
- Some nits addressed.

For the time being this test does not make use of the recently improved
nova.tests.functional.libvirt.base.ServersTestBase class to ease
backports. Future changes should be made to use this class removing some
of the common setUp logic from _LibvirtEvacuateTest.

Co-Authored-By: Lee Yarwood <48c413690cc1868fd4674765d19c7979f048b748@redhat.com>
Related-Bug: #1550919
Change-Id: I1062b3e74382734edbb2142a09ff0073c66af8db

klmitch/nova,openstack/nova,openstack/nova,klmitch/nova,mahak/nova,openstack/nova,mahak/nova,mahak/nova,klmitch/nova,klmitch/nova