virsh_migrate: remove static mac address for "xml" test

We are using static mac address "ff:ff:ff:ff:ff:ff" which is broadcast
address, but libvirt neads unicast address. Instead of using static mac
address we can leave libvirt to generate one and then obtain that mac
address for further checking in the code.

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
virsh_migrate: skip direct migration for driver different from xen

Direct migration is supported only for xen in libvirt and therefore
we should skip this test for all other drivers instead of failing.

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
virsh.migrate: fix the connect uri

The src uri for migration tests should be gotten from the cfg file
instead from the vm object.

Also change the "connect_uri" into the "virsh_migrate_connect_uri"
and instead of "logging.warning()" that the src_uri or dest_uri aren't
updated use "error.TestNAError()" which will skip the test.
virsh.migrate: Update the "there_migrateuri" test case

By this update we can tell the user that he needs to setup the
migrateuri.

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
virsh.migrate: change the current storage into the shared storage

The migration requires shared storage. By this patch we will detach
all existing storages from the existing guest and we will attach
one shared storage defined in the config file. It can be on
whatever backend you want.

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
virsh.migrate: always recover the vm from xml backup

We are updating the vm configuration to have a shared disk we need
to always recover the vm form xml backup to ensure there are no
modification done by this test.

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
Merge pull request #1213 from Antique/virsh-migrate

Improve virsh migrate tests