[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-ppc] [Qemu-devel] [PATCH 3/3] tests/acceptance/migration: test
From: |
Dr. David Alan Gilbert |
Subject: |
Re: [Qemu-ppc] [Qemu-devel] [PATCH 3/3] tests/acceptance/migration: test to migrate will all machine types |
Date: |
Tue, 17 Sep 2019 10:44:25 +0100 |
User-agent: |
Mutt/1.12.1 (2019-06-15) |
* Balamuruhan S (address@hidden) wrote:
> On Mon, Sep 16, 2019 at 03:50:06PM +0100, Dr. David Alan Gilbert wrote:
> > * Balamuruhan S (address@hidden) wrote:
> > > add migration test to query machine types supported by qemu binary
> > > and migrate vm will all supported type.
> > >
> > > Signed-off-by: Balamuruhan S <address@hidden>
> >
> > Depending on the architecture you might find that some machine types
> > aren't migratable while some are.
>
> Thanks Dave, is there a way to query/check whether a machine type on the
> architecture is migratable or should we try migrating and handle exception
> on failure ?
I don't know a way to detect it; you can add -only-migratable to get
qemu to fai early if a device is declared as being non-migratable; but
that still doesn't say that all the devices have actually been tested
migrating.
Dave
> -- Bala
> >
> > Dave
> >
> > > ---
> > > tests/acceptance/migration.py | 26 ++++++++++++++++++++++++++
> > > 1 file changed, 26 insertions(+)
> > >
> > > diff --git a/tests/acceptance/migration.py b/tests/acceptance/migration.py
> > > index 0f3553c8f0..74416ccc21 100644
> > > --- a/tests/acceptance/migration.py
> > > +++ b/tests/acceptance/migration.py
> > > @@ -49,3 +49,29 @@ class Migration(Test):
> > > self.assertEqual(dest_vm.command('query-status')['status'],
> > > 'running')
> > > self.assertEqual(source_vm.command('query-status')['status'],
> > > 'postmigrate')
> > > +
> > > +
> > > + def test_migration_with_machine_types(self):
> > > + migration_port = self._get_free_port()
> > > + for machine in self.get_machine_types():
> > > + if 'pseries' in machine:
> > > + print("migrating with machine type - {}".format(machine))
> > > + source_vm = self.get_vm('-M',
> > > '{},cap-htm=off'.format(machine))
> > > + dest_uri = 'tcp:localhost:%u' % migration_port
> > > + dest_vm = self.get_vm('-M',
> > > '{},cap-htm=off'.format(machine),
> > > + '-incoming', dest_uri)
> > > + dest_vm.launch()
> > > + source_vm.launch()
> > > + source_vm.qmp('migrate', uri=dest_uri)
> > > + wait.wait_for(
> > > + self.migration_finished,
> > > + timeout=self.timeout,
> > > + step=0.1,
> > > + args=(source_vm,)
> > > + )
> > > +
> > > self.assertEqual(source_vm.command('query-migrate')['status'],
> > > + 'completed')
> > > +
> > > self.assertEqual(dest_vm.command('query-status')['status'],
> > > + 'running')
> > > +
> > > self.assertEqual(source_vm.command('query-status')['status'],
> > > + 'postmigrate')
> > > --
> > > 2.14.5
> > >
> > >
> > --
> > Dr. David Alan Gilbert / address@hidden / Manchester, UK
>
--
Dr. David Alan Gilbert / address@hidden / Manchester, UK
[Qemu-ppc] [Qemu-devel] [PATCH 1/3] tests/acceptance/migration: fix post migration check, Balamuruhan S, 2019/09/16